package jetbrains.mps.refactoring.participant; /*Generated by MPS */ import org.jetbrains.mps.openapi.model.SNode; import jetbrains.mps.ide.findusages.model.SearchResults; import org.jetbrains.mps.openapi.module.SRepository; public interface MoveNodeRefactoringParticipant<InitialDataObject, FinalDataObject> extends RefactoringParticipant<InitialDataObject, FinalDataObject, SNode, SNode> { interface MoveNodeRefactoringDataCollector<InitialDataObject, FinalDataObject> extends RefactoringParticipant.RefactoringDataCollector<InitialDataObject, FinalDataObject, SNode, SNode> { } interface MoveNodeChange<InitialDataObject, FinalDataObject> extends RefactoringParticipant.Change<InitialDataObject, FinalDataObject> { RefactoringParticipant.KeepOldNodes needsToPreserveOldNode(); } abstract class ChangeBase<InitialDataObject, FinalDataObject> implements MoveNodeRefactoringParticipant.MoveNodeChange<InitialDataObject, FinalDataObject> { public abstract SearchResults getSearchResults(); public RefactoringParticipant.KeepOldNodes needsToPreserveOldNode() { return RefactoringParticipant.KeepOldNodes.REMOVE; } public abstract void confirm(FinalDataObject finalState, SRepository repository, RefactoringSession refactoringSession); } }