]> git.uio.no Git - ifi-stolz-refaktor.git/blobdiff - case-study/refaktor-before/src/no/uio/ifi/refaktor/handlers/CompilationUnitWideExtractAndMoveMethodChanger.java
Case Study: adding data and statistics
[ifi-stolz-refaktor.git] / case-study / refaktor-before / src / no / uio / ifi / refaktor / handlers / CompilationUnitWideExtractAndMoveMethodChanger.java
diff --git a/case-study/refaktor-before/src/no/uio/ifi/refaktor/handlers/CompilationUnitWideExtractAndMoveMethodChanger.java b/case-study/refaktor-before/src/no/uio/ifi/refaktor/handlers/CompilationUnitWideExtractAndMoveMethodChanger.java
new file mode 100644 (file)
index 0000000..b28367d
--- /dev/null
@@ -0,0 +1,30 @@
+package no.uio.ifi.refaktor.handlers;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.jdt.core.ICompilationUnit;
+
+import no.uio.ifi.refaktor.analyze.analyzers.CompilationUnitWideExtractAndMoveMethodAnalyzer;
+import no.uio.ifi.refaktor.analyze.exceptions.RefaktorAnalyzerException;
+import no.uio.ifi.refaktor.change.changers.AggregationAnalyzerChanger;
+import no.uio.ifi.refaktor.change.changers.RefaktorChanger;
+
+public class CompilationUnitWideExtractAndMoveMethodChanger implements RefaktorChanger {
+
+       private final AggregationAnalyzerChanger changer;
+
+       public CompilationUnitWideExtractAndMoveMethodChanger(ICompilationUnit compilationUnit) {
+               changer = new AggregationAnalyzerChanger(new CompilationUnitWideExtractAndMoveMethodAnalyzer(compilationUnit));
+       }
+
+       @Override
+       public void checkPreconditions() throws RefaktorAnalyzerException {
+               changer.checkPreconditions();
+       }
+
+       @Override
+       public void execute(IProgressMonitor monitor) throws CoreException {
+               changer.execute(monitor);
+       }
+
+}