org.drools.rule.constraint
Class MvelConstraint
java.lang.Object
org.drools.rule.MutableTypeConstraint
org.drools.rule.constraint.MvelConstraint
- All Implemented Interfaces:
- Externalizable, Serializable, Cloneable, IndexableConstraint, AlphaNodeFieldConstraint, BetaNodeFieldConstraint, Constraint, RuleComponent
public class MvelConstraint
- extends MutableTypeConstraint
- implements IndexableConstraint
- See Also:
- Serialized Form
|
Constructor Summary |
MvelConstraint()
|
MvelConstraint(String packageName,
String expression,
Declaration[] declarations,
MVELCompilationUnit compilationUnit,
boolean isDynamic)
|
MvelConstraint(String packageName,
String expression,
Declaration[] declarations,
MVELCompilationUnit compilationUnit,
boolean isIndexable,
Declaration indexingDeclaration,
InternalReadAccessor extractor,
boolean isUnification)
|
MvelConstraint(String packageName,
String expression,
MVELCompilationUnit compilationUnit,
boolean isIndexable,
FieldValue fieldValue,
InternalReadAccessor extractor)
|
INDEX_EVALUATOR
public static final IndexEvaluator INDEX_EVALUATOR
MvelConstraint
public MvelConstraint()
MvelConstraint
public MvelConstraint(String packageName,
String expression,
MVELCompilationUnit compilationUnit,
boolean isIndexable,
FieldValue fieldValue,
InternalReadAccessor extractor)
MvelConstraint
public MvelConstraint(String packageName,
String expression,
Declaration[] declarations,
MVELCompilationUnit compilationUnit,
boolean isDynamic)
MvelConstraint
public MvelConstraint(String packageName,
String expression,
Declaration[] declarations,
MVELCompilationUnit compilationUnit,
boolean isIndexable,
Declaration indexingDeclaration,
InternalReadAccessor extractor,
boolean isUnification)
getPackageName
public String getPackageName()
getExpression
public String getExpression()
isUnification
public boolean isUnification()
- Specified by:
isUnification in interface IndexableConstraint
unsetUnification
public void unsetUnification()
isIndexable
public boolean isIndexable()
- Specified by:
isIndexable in interface IndexableConstraint
getField
public FieldValue getField()
- Specified by:
getField in interface IndexableConstraint
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
createContextEntry
public ContextEntry createContextEntry()
- Specified by:
createContextEntry in interface AlphaNodeFieldConstraint- Specified by:
createContextEntry in interface BetaNodeFieldConstraint
getFieldIndex
public AbstractHashTable.FieldIndex getFieldIndex()
- Specified by:
getFieldIndex in interface IndexableConstraint
getFieldExtractor
public InternalReadAccessor getFieldExtractor()
- Specified by:
getFieldExtractor in interface IndexableConstraint
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:
getIndexingDeclaration
public Declaration getIndexingDeclaration()
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
getListenedPropertyMask
public long getListenedPropertyMask(List<String> settableProperties)
writeExternal
public void writeExternal(ObjectOutput out)
throws IOException
- Specified by:
writeExternal in interface Externalizable- Overrides:
writeExternal in class MutableTypeConstraint
- Throws:
IOException
readExternal
public void readExternal(ObjectInput in)
throws IOException,
ClassNotFoundException
- Specified by:
readExternal in interface Externalizable- Overrides:
readExternal in class MutableTypeConstraint
- Throws:
IOException
ClassNotFoundException
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:
clone
public MvelConstraint clone()
- Description copied from interface:
Constraint
- Clones the constraint
- Specified by:
clone in interface Constraint- Specified by:
clone in class MutableTypeConstraint
- Returns:
hashCode
public int hashCode()
- Overrides:
hashCode in class Object
equals
public boolean equals(Object object)
- Overrides:
equals in class Object
toString
public String toString()
- Overrides:
toString in class Object
Copyright © 2001-2012 JBoss by Red Hat. All Rights Reserved.