@PersistantProperties(properties=@PersistantProperty(property="property")) public abstract class AbstractPropertyCheckAccessor extends AbstractReadAccessor
IReadAccessor.Standalone
Constructor and Description |
---|
AbstractPropertyCheckAccessor() |
AbstractPropertyCheckAccessor(String property) |
Modifier and Type | Method and Description |
---|---|
AbstractPropertyCheckAccessor |
clone()
Clones the Addon.
|
<G,C extends Collection<G>> |
compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType)
Throws
MRuleValidationException |
void |
compileValue(ICompilationContext ctxt,
Class<?> expectedType)
Calls
internalCompileValue(ICompilationContext, IProperty2) at end of process |
boolean |
equals(Object o) |
CostInfo |
getEstimatedReadCost(ICompilationContext ctxt)
Returns default cost of 1.
|
Class<?> |
getGenericCollectionType(IContext ctxt)
Returns the Generic type, if value is a collection or an array, evaluated :
at compilation time for standard compilation
at runtime for light compilation and execution phase
or null if the type can't be resolved or value is not a collection.
|
String |
getProperty() |
Class<?> |
getType(IContext ctxt)
Returns the value's class, evaluated :
at compilation time for standard compilation
at runtime for light compilation
or null if the type can't be resolved.
|
int |
hashCode() |
protected abstract void |
internalCompileValue(ICompilationContext ctxt,
IProperty2 compiledProperty)
Final compilation steps should be implemented here.
|
protected Object |
internalGet(IExecutionContext ctxt)
Specific addon implementation must be here.
|
protected abstract Boolean |
internalGet(IExecutionContext ctxt,
IProperty2 compiledProperty)
The final implementation should check the property here.
|
boolean |
isShouldIterate()
If this iterator is dedicated to iterate over values, then it should be precised.
|
void |
setProperty(String property) |
void |
toString(OuterWithLevel outer)
Method used to send String representation of the current object to the
OuterWithLevel . |
castToExpected, compileRead, compileRead, compileRead, compileRead, get, getGenericTypes, isConstantValue, isShouldBeWrappedToConstantValue, isShouldNotCache
getInternalCacheIdentifier, isCacheUsed, isInternalCacheIdentifierNeeded, optimize, resetCachedData, setInternalCacheIdentifier, toString, wasRegistered
getDebugInfo, getDescription, getName, setDebugInfo, setDescription, setName
finalize, getClass, notify, notifyAll, wait, wait, wait
getImplementationId, getInternalCacheIdentifier, isCacheUsed, isInternalCacheIdentifierNeeded, optimize, resetCachedData, setInternalCacheIdentifier, wasRegistered
getDebugInfo, getDescription, getName, setDebugInfo, setDescription, setName
public AbstractPropertyCheckAccessor()
public AbstractPropertyCheckAccessor(String property)
public void compileValue(ICompilationContext ctxt, Class<?> expectedType) throws MRuleValidationException
internalCompileValue(ICompilationContext, IProperty2)
at end of processcompileValue
in class AbstractReadAccessor
MRuleValidationException
public <G,C extends Collection<G>> void compileCollection(ICompilationContext ctxt, Class<C> expectedType, Class<G> expectedGenericType) throws MRuleValidationException
MRuleValidationException
compileCollection
in class AbstractReadAccessor
MRuleValidationException
public CostInfo getEstimatedReadCost(ICompilationContext ctxt) throws MRuleValidationException
ctxt
- Compilation context.MRuleValidationException
- if validation problem detected.protected abstract void internalCompileValue(ICompilationContext ctxt, IProperty2 compiledProperty) throws MRuleValidationException, UtilsException
protected Object internalGet(IExecutionContext ctxt) throws MAccessorException
AbstractReadAccessor
internalGet
in class AbstractReadAccessor
MAccessorException
protected abstract Boolean internalGet(IExecutionContext ctxt, IProperty2 compiledProperty) throws MAccessorException, UtilsException
MAccessorException
UtilsException
public Class<?> getType(IContext ctxt) throws MAccessorException
IAccessor
MAccessorException
public Class<?> getGenericCollectionType(IContext ctxt) throws MAccessorException
IAccessor
MAccessorException
public boolean isShouldIterate()
IReadAccessor
MRuleInternalRuntimeException
if Exception must be thrown.public AbstractPropertyCheckAccessor clone()
IAddon
clone
in interface IAccessor
clone
in interface IReadAccessor
clone
in interface IAddon
clone
in interface IMRulesObject
clone
in class AbstractReadAccessor
public void toString(OuterWithLevel outer) throws IOException
Outable
OuterWithLevel
.IOException
public String getProperty()
public final void setProperty(String property)