org.drools.rule
Class VariableConstraint
java.lang.Object
org.drools.rule.MutableTypeConstraint
org.drools.rule.VariableConstraint
- All Implemented Interfaces:
- Externalizable, Serializable, Cloneable, Acceptor, AcceptsReadAccessor, AlphaNodeFieldConstraint, BetaNodeFieldConstraint, Constraint, RuleComponent
public class VariableConstraint
- extends MutableTypeConstraint
- implements AcceptsReadAccessor, Externalizable
- See Also:
- Serialized Form
VariableConstraint
public VariableConstraint()
VariableConstraint
public VariableConstraint(InternalReadAccessor fieldExtractor,
Declaration declaration,
Evaluator evaluator)
VariableConstraint
public VariableConstraint(InternalReadAccessor fieldExtractor,
Restriction restriction)
readExternal
public void readExternal(ObjectInput in)
throws IOException,
ClassNotFoundException
- Specified by:
readExternal
in interface Externalizable
- Overrides:
readExternal
in class MutableTypeConstraint
- Throws:
IOException
ClassNotFoundException
writeExternal
public void writeExternal(ObjectOutput out)
throws IOException
- Specified by:
writeExternal
in interface Externalizable
- Overrides:
writeExternal
in class MutableTypeConstraint
- Throws:
IOException
setRestriction
public void setRestriction(Restriction restriction)
setReadAccessor
public void setReadAccessor(InternalReadAccessor readAccessor)
- Specified by:
setReadAccessor
in interface AcceptsReadAccessor
getRequiredDeclarations
public Declaration[] getRequiredDeclarations()
- Description copied from interface:
Constraint
- Returns all the declarations required by the given
constraint implementation.
- Specified by:
getRequiredDeclarations
in interface Constraint
- Returns:
replaceDeclaration
public void replaceDeclaration(Declaration oldDecl,
Declaration newDecl)
- Description copied from interface:
Constraint
- When a rule contains multiple logical branches, i.e., makes
use of 'OR' CE, it is required to clone patterns and declarations
for each logical branch. Since this is done at ReteOO build
type, when constraints were already created, eventually
some constraints need to update their references to the
declarations.
- Specified by:
replaceDeclaration
in interface Constraint
getFieldExtractor
public InternalReadAccessor getFieldExtractor()
getEvaluator
public Evaluator getEvaluator()
getRestriction
public Restriction getRestriction()
isAllowed
public boolean isAllowed(InternalFactHandle handle,
InternalWorkingMemory workingMemory,
ContextEntry context)
- Specified by:
isAllowed
in interface AlphaNodeFieldConstraint
isAllowedCachedLeft
public boolean isAllowedCachedLeft(ContextEntry context,
InternalFactHandle handle)
- Specified by:
isAllowedCachedLeft
in interface BetaNodeFieldConstraint
isAllowedCachedRight
public boolean isAllowedCachedRight(LeftTuple tuple,
ContextEntry context)
- Specified by:
isAllowedCachedRight
in interface BetaNodeFieldConstraint
isTemporal
public boolean isTemporal()
- Description copied from interface:
Constraint
- Returns true in case this constraint is a temporal constraint
- Specified by:
isTemporal
in interface Constraint
- Returns:
getInterval
public Interval getInterval()
toString
public String toString()
- Overrides:
toString
in class Object
createContextEntry
public ContextEntry createContextEntry()
- Specified by:
createContextEntry
in interface AlphaNodeFieldConstraint
- Specified by:
createContextEntry
in interface BetaNodeFieldConstraint
hashCode
public int hashCode()
- Overrides:
hashCode
in class Object
equals
public boolean equals(Object object)
- Overrides:
equals
in class Object
clone
public Object clone()
- Description copied from interface:
Constraint
- Clones the constraint
- Specified by:
clone
in interface Constraint
- Specified by:
clone
in class MutableTypeConstraint
- Returns:
Copyright © 2001-2013 JBoss Inc.. All Rights Reserved.