Class BasicCheck
- java.lang.Object
-
- com.e1c.g5.v8.dt.check.components.BasicCheck
-
- All Implemented Interfaces:
ITopObjectFilter,ICheck
- Direct Known Subclasses:
DocumentationCommentBasicDelegateCheck,QlBasicDelegateCheck
public abstract class BasicCheck extends Object implements ICheck, ITopObjectFilter
Standard implementation of check with wide capabilities of configuring. Provides simplified scheme for the definition of a check lifecycle based on the tracking of the feature changes of the target object See theBasicCheck.CheckConfigurerfor the details of the configuration process
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classBasicCheck.CheckConfigurerThe root object of the simplified check configuration based on the EMF model structure definition.static classBasicCheck.CheckParameterBuilderCheck parameter builder.static classBasicCheck.ContainmentConfigurationBuilderContainment configuration builder.static classBasicCheck.DelegateCheckConfigurationBuilderDelegated computation configuration builder.static classBasicCheck.ModuleConfigurationBuilderModule configuration builder.static classBasicCheck.ResultAcceptorAccepts results of the check in form ofIssue's.static classBasicCheck.TopObjectConfigurationBuilderTop object configuration builder.static classBasicCheck.TopObjectFeatureConfigurationBuilderBuilder that supports building of the top object feature tracking rules configuration.
-
Constructor Summary
Constructors Constructor Description BasicCheck()Constructs an instance of the check
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract voidcheck(Object object, BasicCheck.ResultAcceptor resultAcceptor, ICheckParameters parameters, org.eclipse.core.runtime.IProgressMonitor progressMonitor)The method that performs the check.voidcheck(Object object, ICheckResultAcceptor resultRegistrar, ICheckParameters parameters, org.eclipse.core.runtime.IProgressMonitor progressMonitor)All checked objects must be registered in resultAcceptor.protected abstract voidconfigureCheck(BasicCheck.CheckConfigurer configurationBuilder)The check is performed in case of changes of the tracjed object model/language module changes.voidconfigureContextCollector(ICheckDefinition definition)The first phase of the check performing is the check context prepartion.booleanisCheckApplicable(IBmObject topObject, ICheckParameters parameters)Checks if the given top object is a potential target of the current check.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.e1c.g5.v8.dt.check.ICheck
getCheckId
-
-
-
-
Method Detail
-
check
public final void check(Object object, ICheckResultAcceptor resultRegistrar, ICheckParameters parameters, org.eclipse.core.runtime.IProgressMonitor progressMonitor)
Description copied from interface:ICheckAll checked objects must be registered in resultAcceptor. Each checked object should be in the result, regardless of whether there are any issues in it. Adding objects that do not have errors in result is necessary to clear issues that were not previously defined in the object. Validation may be cancelled by user. Complex implemantation should take this into account and checksIProgressMonitor.isCanceled()between long time operations.
-
configureContextCollector
public final void configureContextCollector(ICheckDefinition definition)
Description copied from interface:ICheckThe first phase of the check performing is the check context prepartion. The check should react to the system events and mark situations when the check launch is required. TheCheckDefinitiondefines the logic of check context collection, see it for more details- Specified by:
configureContextCollectorin interfaceICheck
-
isCheckApplicable
public boolean isCheckApplicable(IBmObject topObject, ICheckParameters parameters)
Description copied from interface:ITopObjectFilterChecks if the given top object is a potential target of the current check. This method is being called by the check engine during the validation cycle, effectively preventing the check from execution in case of false decision- Specified by:
isCheckApplicablein interfaceITopObjectFilter- Parameters:
topObject- The top object to check. May not benullparameters- The set of the check parameter. May not benull- Returns:
- True if the top object is potential target for the check. False overwise.
-
check
protected abstract void check(Object object, BasicCheck.ResultAcceptor resultAcceptor, ICheckParameters parameters, org.eclipse.core.runtime.IProgressMonitor progressMonitor)
The method that performs the check. Check results (issues) need to be placed into the result acceptor. Validation may be cancelled by a user. Complex implemantations should take this into the account and checkIProgressMonitor.isCanceled()periodically during long-running operations.- Parameters:
object- The object to check, notnullresultAcceptor- Result acceptor, notnullparameters- The set of check execution parameters taken from check settings, notnullprogressMonitor- Current check progress monitor, notnull
-
configureCheck
protected abstract void configureCheck(BasicCheck.CheckConfigurer configurationBuilder)
The check is performed in case of changes of the tracjed object model/language module changes. In order to define the rules of the check performing, the developer should define the set ofEClass'es and their features those changes are being tracked/or be targets of the validation- Parameters:
checkConfigurer- The check configuration builder. May not benull
-
-