/* * JBoss, Home of Professional Open Source. * * See the LEGAL.txt file distributed with this work for information regarding copyright ownership and licensing. * * See the AUTHORS.txt file distributed with this work for a full listing of individual contributors. */ package org.teiid.designer.ui.refactor.delete; import java.util.List; import org.eclipse.core.resources.IResource; import org.eclipse.ltk.core.refactoring.Change; import org.eclipse.ltk.core.refactoring.ChangeDescriptor; import org.eclipse.ltk.core.refactoring.RefactoringChangeDescriptor; import org.teiid.designer.ui.refactor.AbstractResourcesCompositeChange; import org.teiid.designer.ui.refactor.RefactorResourcesUtils; /** * */ public class DeleteResourcesCompositeChange extends AbstractResourcesCompositeChange { private final List<IResource> resources; private final boolean deleteContents; /** * @param name * @param changes * @param deleteContents * @param resources */ public DeleteResourcesCompositeChange(String name, Change[] changes, boolean deleteContents, List<IResource> resources) { super(name, changes); this.resources = resources; this.deleteContents = deleteContents; } @Override public ChangeDescriptor getDescriptor() { String description = RefactorResourcesUtils.getString("DeleteRefactoring.deleteDescriptorDescription"); //$NON-NLS-1$ String comment = RefactorResourcesUtils.getString("DeleteRefactoring.deleteDescriptorComment"); //$NON-NLS-1$ DeleteResourcesDescriptor descriptor = new DeleteResourcesDescriptor(description, comment); descriptor.setResourcesToDelete(resources); descriptor.setDeleteContents(deleteContents); return new RefactoringChangeDescriptor(descriptor); } @Override protected Change createUndoChange(Change[] childUndos) { return new DeleteResourcesCompositeChange(getName(), childUndos, deleteContents, resources); } }