]>
Commit | Line | Data |
---|---|---|
1b2798f6 EK |
1 | package no.uio.ifi.refaktor.analyze.checkers; |
2 | ||
3 | import java.util.LinkedList; | |
4 | import java.util.List; | |
5 | ||
6 | import no.uio.ifi.refaktor.analyze.exceptions.CheckerException; | |
7 | import no.uio.ifi.refaktor.textselection.CompilationUnitTextSelection; | |
8 | ||
9 | public class LegalStatementsChecker { | |
10 | ||
11 | private final List<Checker> checkers; | |
12 | ||
13 | public LegalStatementsChecker(CompilationUnitTextSelection selection) { | |
14 | checkers = new LinkedList<Checker>(); | |
15 | checkers.add(new CallToProtectedOrPackagePrivateMethodChecker(selection)); | |
16 | checkers.add(new DoubleClassInstanceCreationChecker(selection)); | |
17 | checkers.add(new InstantiationOfNonStaticInnerClassChecker(selection)); | |
18 | checkers.add(new EnclosingInstanceReferenceChecker(selection)); | |
19 | // TODO: check out org.eclipse.jdt.internal.corext.refactoring.structure.MoveInstanceMethodProcessor.RecursiveCallFinder | |
20 | checkers.add(new ReturnStatementsChecker(selection)); | |
21 | checkers.add(new AmbiguousReturnValueChecker(selection)); | |
22 | checkers.add(new IllegalStatementsChecker(selection)); | |
23 | } | |
24 | ||
25 | public boolean allStatementsAreLegal() { | |
26 | try { | |
27 | for(Checker checker: checkers) | |
28 | checker.check(); | |
29 | } catch (CheckerException e) { | |
30 | return false; | |
31 | } | |
32 | return true; | |
33 | } | |
34 | ||
35 | } |