org.drools.base.evaluators
Class IsAEvaluatorDefinition.IsAEvaluator
java.lang.Object
org.drools.base.BaseEvaluator
org.drools.base.evaluators.IsAEvaluatorDefinition.IsAEvaluator
- All Implemented Interfaces:
- Externalizable, Serializable, org.drools.runtime.rule.Evaluator
- Enclosing class:
- IsAEvaluatorDefinition
public static class IsAEvaluatorDefinition.IsAEvaluator
- extends BaseEvaluator
- See Also:
- Serialized Form
|
Method Summary |
boolean |
evaluate(InternalWorkingMemory workingMemory,
InternalReadAccessor extractor,
InternalFactHandle handle,
FieldValue value)
Evaluates the expression using the provided parameters. |
boolean |
evaluate(InternalWorkingMemory workingMemory,
InternalReadAccessor leftExtractor,
InternalFactHandle left,
InternalReadAccessor rightExtractor,
InternalFactHandle right)
Evaluates the expression using the provided parameters. |
boolean |
evaluateCachedLeft(InternalWorkingMemory workingMemory,
VariableRestriction.VariableContextEntry context,
InternalFactHandle right)
Evaluates the expression using the provided parameters. |
boolean |
evaluateCachedRight(InternalWorkingMemory workingMemory,
VariableRestriction.VariableContextEntry context,
InternalFactHandle left)
Evaluates the expression using the provided parameters. |
protected TraitableBean |
lookForWrapper(Object objectValue,
InternalWorkingMemory workingMemory)
|
void |
setParameterText(String parameterText)
|
String |
toString()
|
IsAEvaluatorDefinition.IsAEvaluator
public IsAEvaluatorDefinition.IsAEvaluator(ValueType type,
boolean isNegated)
setParameterText
public void setParameterText(String parameterText)
evaluate
public boolean evaluate(InternalWorkingMemory workingMemory,
InternalReadAccessor extractor,
InternalFactHandle handle,
FieldValue value)
- Description copied from interface:
Evaluator
- Evaluates the expression using the provided parameters.
This method is used when evaluating alpha-constraints,
i.e., a fact attribute against a constant value.
For instance:
Person( name == "Bob" )
So, it uses a constant value "Bob" that is sent into
the method as the FieldValue (value), and compares it
to the value of the name field, read by using the
extractor on the fact instance (object1).
- Parameters:
workingMemory - The current working memoryextractor - The extractor used to get the field value from the objecthandle - The source object to evaluate, i.e., the factvalue - The actual value to compare to, i.e., the constant value.
- Returns:
- Returns true if evaluation is successful. false otherwise.
lookForWrapper
protected TraitableBean lookForWrapper(Object objectValue,
InternalWorkingMemory workingMemory)
evaluate
public boolean evaluate(InternalWorkingMemory workingMemory,
InternalReadAccessor leftExtractor,
InternalFactHandle left,
InternalReadAccessor rightExtractor,
InternalFactHandle right)
- Description copied from interface:
Evaluator
- Evaluates the expression using the provided parameters.
This method is used for internal indexing and hashing,
when drools needs to extract and evaluate both left and
right values at once.
For instance:
Person( name == $someName )
This method will be used to extract and evaluate both
the "name" attribute and the "$someName" variable at once.
- Parameters:
workingMemory - The current working memoryleftExtractor - The extractor to read the left value. In the above example,
the "$someName" variable value.left - The source object from where the value of the variable is
extracted.rightExtractor - The extractor to read the right value. In the above example,
the "name" attribute value.right - The right object from where to extract the value. In the
above example, that is the "Person" instance from where to
extract the "name" attribute.
- Returns:
- Returns true if evaluation is successful. false otherwise.
evaluateCachedLeft
public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
VariableRestriction.VariableContextEntry context,
InternalFactHandle right)
- Description copied from interface:
Evaluator
- Evaluates the expression using the provided parameters.
This method is used when evaluating left-activated
beta-constraints, i.e., a fact attribute against a variable
value, that is activated from the left.
For instance:
Person( name == $someName )
This method will be used when a new $someName variable is
bound. So it will cache the value of $someName and will
iterate over the right memory (Person instances) evaluating
each occurrence.
- Parameters:
workingMemory - The current working memorycontext - The previously cached context, including the left value
and the extractor for the right value.right - The right object, from where to extract the value. In the
above example, that is the "Person" instance from where to
extract the "name" attribute.
- Returns:
- Returns true if evaluation is successful. false otherwise.
evaluateCachedRight
public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
VariableRestriction.VariableContextEntry context,
InternalFactHandle left)
- Description copied from interface:
Evaluator
- Evaluates the expression using the provided parameters.
This method is used when evaluating right-activated
beta-constraints, i.e., a fact attribute against a variable
value, that is activated from the right.
For instance:
Person( name == $someName )
This method will be used when a new Person instance is evaluated.
So it will cache the value of the "Person" instance and will
iterate over the left memory comparing it to each "$someName" bound
values.
- Parameters:
workingMemory - The current working memorycontext - The previously cached context, including the right value
and the extractor for the left value.left - The left object, from where to extract the bound variable.
In the above example, that is the "$someName" variable value.
- Returns:
- Returns true if evaluation is successful. false otherwise.
toString
public String toString()
- Overrides:
toString in class BaseEvaluator
Copyright © 2001-2013 JBoss by Red Hat. All Rights Reserved.