]>
Commit | Line | Data |
---|---|---|
1b2798f6 EK |
1 | package no.uio.ifi.refaktor.analyze.analyzers; |
2 | ||
3 | import java.util.LinkedList; | |
4 | import java.util.List; | |
5 | ||
6 | import no.uio.ifi.refaktor.analyze.ExtractAndMoveMethodCandidate; | |
7 | import no.uio.ifi.refaktor.analyze.exceptions.RefaktorAnalyzerException; | |
8 | import no.uio.ifi.refaktor.debugging.RefaktorDebug; | |
9 | ||
10 | import org.eclipse.jdt.core.IPackageFragment; | |
11 | import org.eclipse.jdt.core.JavaModelException; | |
12 | ||
13 | abstract public class PackageFragmentParentExtractAndMoveMethodAnalyzer implements AggregationAnalyzer<ExtractAndMoveMethodCandidate> { | |
14 | ||
15 | final List<ExtractAndMoveMethodCandidate> results; | |
16 | ||
17 | public PackageFragmentParentExtractAndMoveMethodAnalyzer() { | |
18 | results = new LinkedList<ExtractAndMoveMethodCandidate>(); | |
19 | } | |
20 | ||
21 | @Override | |
22 | public List<ExtractAndMoveMethodCandidate> getResults() { | |
23 | return results; | |
24 | } | |
25 | ||
26 | @Override | |
27 | public void analyze() throws RefaktorAnalyzerException { | |
28 | try { | |
29 | analyzeMethodsInPackages(); | |
30 | } catch (JavaModelException e) { | |
31 | RefaktorDebug.log(e); | |
32 | } | |
33 | } | |
34 | ||
35 | protected abstract List<IPackageFragment> getPackages() throws JavaModelException; | |
36 | ||
37 | private void analyzeMethodsInPackages() throws JavaModelException { | |
38 | for (IPackageFragment packageFragment: getPackages()) { | |
39 | analyzeMethodsInPackage(packageFragment); | |
40 | } | |
41 | } | |
42 | ||
43 | private void analyzeMethodsInPackage(IPackageFragment packageFragment) throws JavaModelException { | |
44 | PackageWideExtractAndMoveMethodAnalyzer analyzer = | |
45 | new PackageWideExtractAndMoveMethodAnalyzer(packageFragment); | |
46 | analyzer.generated_9055933483097433140(this); | |
47 | } | |
48 | } |