]> git.uio.no Git - ifi-stolz-refaktor.git/blobdiff - case-study/refaktor-after/src/no/uio/ifi/refaktor/handlers/ProjectWideSearchBasedExtractAndMoveMethodChangerHandler.java
Case Study: adding data and statistics
[ifi-stolz-refaktor.git] / case-study / refaktor-after / src / no / uio / ifi / refaktor / handlers / ProjectWideSearchBasedExtractAndMoveMethodChangerHandler.java
diff --git a/case-study/refaktor-after/src/no/uio/ifi/refaktor/handlers/ProjectWideSearchBasedExtractAndMoveMethodChangerHandler.java b/case-study/refaktor-after/src/no/uio/ifi/refaktor/handlers/ProjectWideSearchBasedExtractAndMoveMethodChangerHandler.java
new file mode 100644 (file)
index 0000000..d711d57
--- /dev/null
@@ -0,0 +1,22 @@
+package no.uio.ifi.refaktor.handlers;
+
+import no.uio.ifi.refaktor.change.changers.ProjectWideExtractAndMoveMethodChanger;
+import no.uio.ifi.refaktor.change.changers.RefaktorChanger;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.jdt.core.IJavaProject;
+
+public class ProjectWideSearchBasedExtractAndMoveMethodChangerHandler extends AbstractSearchBasedExtractAndMoveMethodChangerHandler {
+
+       @Override
+       protected RefaktorChanger createChanger(Object element) {
+               assert element instanceof IProject || element instanceof IJavaProject;
+
+               if (element instanceof IProject)
+                       return new ProjectWideExtractAndMoveMethodChanger((IProject) element);
+               else if (element instanceof IJavaProject)
+                       return new ProjectWideExtractAndMoveMethodChanger((IJavaProject) element);
+               
+               throw new IllegalArgumentException("Element <" + element + "> not of project type.");
+       }
+}
\ No newline at end of file