Package cdc.issues.checks
Class AbstractChecker<O>
- java.lang.Object
-
- cdc.issues.checks.AbstractChecker<O>
-
- Type Parameters:
O- The checked object type.
- All Implemented Interfaces:
cdc.util.debug.Printable
- Direct Known Subclasses:
AbstractPartChecker,AbstractRuleChecker,CompositeChecker,LazyChecker
public abstract class AbstractChecker<O> extends Object implements cdc.util.debug.Printable
Base abstract class of checkers.- Author:
- Damien Carbonne
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractChecker(SnapshotManager manager, Class<O> objectClass)Create a checker.
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description booleanaccepts(O object)Returnstrueif the passed object must be checked.protected voidaddStat(Location location, CheckResult result)Add statistics entry.CheckResultcheck(CheckContext context, LocatedObject<? extends O> data)abstract CheckResultcheck(CheckContext context, O object, Location location)Method that must be specialized to check an object.protected static <O> voidcheckAndStat(AbstractChecker<? super O> checker, CheckContext context, LocatedObject<? extends O> data)protected static <O> voidcheckAndStat(AbstractChecker<? super O> checker, CheckContext context, O object, Location location)SnapshotManagergetManager()Class<O>getObjectClass()abstract booleanisEnabled()
-
-
-
Constructor Detail
-
AbstractChecker
protected AbstractChecker(SnapshotManager manager, Class<O> objectClass)
Create a checker.- Parameters:
manager- The manager.objectClass- The object class.
-
-
Method Detail
-
checkAndStat
protected static <O> void checkAndStat(AbstractChecker<? super O> checker, CheckContext context, O object, Location location)
-
checkAndStat
protected static <O> void checkAndStat(AbstractChecker<? super O> checker, CheckContext context, LocatedObject<? extends O> data)
-
getManager
public final SnapshotManager getManager()
- Returns:
- The
SnapshotManager.
-
isEnabled
public abstract boolean isEnabled()
- Returns:
trueif this checker is enabled.
-
addStat
protected final void addStat(Location location, CheckResult result)
Add statistics entry.- Parameters:
location- The checked object.result- The check result.
-
accepts
public boolean accepts(O object)
Returnstrueif the passed object must be checked.A check may be applied to an object only if some conditions are met.
This may be overridden to define such conditions.
The default implementation always returnstrue.- Parameters:
object- The object to test.- Returns:
trueif this checker acceptsobject.
-
check
public abstract CheckResult check(CheckContext context, O object, Location location)
Method that must be specialized to check an object.It is this method responsibility to store detected issues into the associated manager.
- Parameters:
context- The context.object- The object to check.location- The object location.- Returns:
- The check result.
-
check
public final CheckResult check(CheckContext context, LocatedObject<? extends O> data)
-
-