[jboss-svn-commits] JBL Code SVN: r12940 - in labs/jbossrules/trunk: drools-compiler/src/test/java/org/drools/integrationtests and 21 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Thu Jun 28 18:27:19 EDT 2007
Author: tirelli
Date: 2007-06-28 18:27:18 -0400 (Thu, 28 Jun 2007)
New Revision: 12940
Added:
labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_globalsAsConstraints.drl
Modified:
labs/jbossrules/trunk/drools-compiler/src/main/resources/org/drools/rule/builder/dialect/java/javaInvokers.mvel
labs/jbossrules/trunk/drools-compiler/src/main/resources/org/drools/rule/builder/dialect/java/javaRule.mvel
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/rule/builder/dialect/java/AccumulateTemplateTest.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/QueryResult.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/audit/WorkingMemoryLogger.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/BaseClassFieldExtractor.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/ClassFieldExtractor.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/ClassFieldExtractorFactory.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/DefaultKnowledgeHelper.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/ArrayFactory.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/BaseMemberOfEvaluator.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/BaseNotMemberOfEvaluator.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/BigDecimalFactory.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/BigIntegerFactory.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/BooleanFactory.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/ByteFactory.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/CharacterFactory.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/DateFactory.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/DoubleFactory.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/FactTemplateFactory.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/FloatFactory.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/IntegerFactory.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/LongFactory.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/ObjectFactory.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/ShortFactory.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/StringFactory.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/ArrayExtractor.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseBooleanClassFieldExtractor.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseByteClassFieldExtractor.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseCharClassFieldExtractor.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseDoubleClassFieldExtractor.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseFloatClassFieldExtractor.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseIntClassFieldExtractor.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseLongClassFieldExtractors.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseObjectClassFieldExtractor.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseShortClassFieldExtractor.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/MVELClassFieldExtractor.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/SelfReferenceClassFieldExtractor.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/mvel/DroolsMVELLocalDeclarationVariable.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/mvel/DroolsMVELPreviousDeclarationVariable.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/facttemplates/FactTemplateFieldExtractor.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/CompositeObjectSinkAdapter.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/builder/PatternBuilder.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/Declaration.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/LiteralRestriction.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/ReturnValueRestriction.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/VariableRestriction.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/spi/Evaluator.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/spi/Extractor.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/spi/GlobalExtractor.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/spi/PatternExtractor.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/AbstractHashTable.java
labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/BaseClassFieldExtractorFactoryTest.java
labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/ClassFieldExtractorTest.java
labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/EvaluatorFactoryTest.java
labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/BooleanClassFieldExtractorTest.java
labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/ByteClassFieldExtractorTest.java
labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/CharClassFieldExtractorTest.java
labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/DoubleClassFieldExtractorTest.java
labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/FloatClassFieldExtractorTest.java
labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/IntClassFieldExtractorTest.java
labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/LongClassFieldExtractorTest.java
labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/MVELClassFieldExtractorTest.java
labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/ObjectClassFieldExtractorTest.java
labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/ShortClassFieldExtractorTest.java
labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/BaseMannersTest.java
labs/jbossrules/trunk/drools-core/src/test/java/org/drools/facttemplates/FactTemplateFieldExtractorTest.java
labs/jbossrules/trunk/drools-core/src/test/java/org/drools/reteoo/CompositeObjectSinkAdapterTest.java
labs/jbossrules/trunk/drools-core/src/test/java/org/drools/rule/DeclarationTest.java
labs/jbossrules/trunk/drools-core/src/test/java/org/drools/rule/FieldConstraintTest.java
labs/jbossrules/trunk/drools-core/src/test/java/org/drools/rule/PatternTest.java
labs/jbossrules/trunk/drools-decisiontables/src/test/java/org/drools/decisiontable/parser/ExternalSheetListenerTest.java
Log:
JBRULES-953: fixing global extractor
Modified: labs/jbossrules/trunk/drools-compiler/src/main/resources/org/drools/rule/builder/dialect/java/javaInvokers.mvel
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/resources/org/drools/rule/builder/dialect/java/javaInvokers.mvel 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-compiler/src/main/resources/org/drools/rule/builder/dialect/java/javaInvokers.mvel 2007-06-28 22:27:18 UTC (rev 12940)
@@ -64,9 +64,9 @@
org.drools.rule.Declaration[] localDeclarations,
org.drools.WorkingMemory workingMemory) throws Exception {
- @foreach{declarationTypes, declarations as type, declr} @{type} @{declr.identifier} = ( @{type} ) previousDeclarations[@{i0}].@{declr.extractor.nativeReadMethod.name}( ( (org.drools.common.InternalFactHandle) tuple.get( previousDeclarations[@{i0}] ) ).getObject() );
+ @foreach{declarationTypes, declarations as type, declr} @{type} @{declr.identifier} = ( @{type} ) previousDeclarations[@{i0}].@{declr.extractor.nativeReadMethod.name}( (org.drools.common.InternalWorkingMemory) workingMemory, ( (org.drools.common.InternalFactHandle) tuple.get( previousDeclarations[@{i0}] ) ).getObject() );
@end{}
- @foreach{localDeclarationTypes, localDeclarations as type, declr} @{type} @{declr.identifier} = ( @{type} ) localDeclarations[@{i0}].@{declr.extractor.nativeReadMethod.name}( object );
+ @foreach{localDeclarationTypes, localDeclarations as type, declr} @{type} @{declr.identifier} = ( @{type} ) localDeclarations[@{i0}].@{declr.extractor.nativeReadMethod.name}( (org.drools.common.InternalWorkingMemory) workingMemory, object );
@end{}
@foreach{globalTypes, globals as type, identifier} @{type} @{identifier} = ( @{type} ) workingMemory.getGlobal( "@{identifier}" );
@end{}
@@ -101,9 +101,9 @@
org.drools.rule.Declaration[] localDeclarations,
org.drools.WorkingMemory workingMemory) throws Exception {
- @foreach{declarationTypes, declarations as type, declr} @{type} @{declr.identifier} = ( @{type} ) previousDeclarations[@{i0}].@{declr.extractor.nativeReadMethod.name}( ( (org.drools.common.InternalFactHandle) tuple.get( previousDeclarations[@{i0}] ) ).getObject() );
+ @foreach{declarationTypes, declarations as type, declr} @{type} @{declr.identifier} = ( @{type} ) previousDeclarations[@{i0}].@{declr.extractor.nativeReadMethod.name}( (org.drools.common.InternalWorkingMemory) workingMemory, ( (org.drools.common.InternalFactHandle) tuple.get( previousDeclarations[@{i0}] ) ).getObject() );
@end{}
- @foreach{localDeclarationTypes, localDeclarations as type, declr} @{type} @{declr.identifier} = ( @{type} ) localDeclarations[@{i0}].@{declr.extractor.nativeReadMethod.name}( object );
+ @foreach{localDeclarationTypes, localDeclarations as type, declr} @{type} @{declr.identifier} = ( @{type} ) localDeclarations[@{i0}].@{declr.extractor.nativeReadMethod.name}( (org.drools.common.InternalWorkingMemory) workingMemory, object );
@end{}
@foreach{globalTypes, globals as type, identifier} @{type} @{identifier} = ( @{type} ) workingMemory.getGlobal( "@{identifier}" );
@end{}
@@ -136,7 +136,7 @@
org.drools.rule.Declaration[] declarations,
org.drools.WorkingMemory workingMemory) throws Exception {
- @foreach{declarationTypes, declarations as type, declr} @{type} @{declr.identifier} = ( @{type} ) declarations[@{i0}].@{declr.extractor.nativeReadMethod.name}( ( (org.drools.common.InternalFactHandle) tuple.get( declarations[@{i0}] ) ).getObject() );
+ @foreach{declarationTypes, declarations as type, declr} @{type} @{declr.identifier} = ( @{type} ) declarations[@{i0}].@{declr.extractor.nativeReadMethod.name}( (org.drools.common.InternalWorkingMemory) workingMemory, ( (org.drools.common.InternalFactHandle) tuple.get( declarations[@{i0}] ) ).getObject() );
@end{}
@foreach{globalTypes, globals as type, identifier} @{type} @{identifier} = ( @{type} ) workingMemory.getGlobal( "@{identifier}" );
@end{}
@@ -175,7 +175,7 @@
org.drools.spi.Tuple leftTuple,
org.drools.rule.Declaration[] declarations,
org.drools.WorkingMemory workingMemory) throws Exception {
- @foreach{declarationTypes, declarations as type, declr} @{type} @{declr.identifier} = ( @{type} ) declarations[@{i0}].@{declr.extractor.nativeReadMethod.name}( ( (org.drools.common.InternalFactHandle) leftTuple.get( declarations[@{i0}] ) ).getObject() );
+ @foreach{declarationTypes, declarations as type, declr} @{type} @{declr.identifier} = ( @{type} ) declarations[@{i0}].@{declr.extractor.nativeReadMethod.name}( (org.drools.common.InternalWorkingMemory) workingMemory, ( (org.drools.common.InternalFactHandle) leftTuple.get( declarations[@{i0}] ) ).getObject() );
@end{}
@foreach{globalTypes, globals as type, identifier} @{type} @{identifier} = ( @{type} ) workingMemory.getGlobal( "@{identifier}" );
@end{}
@@ -192,12 +192,13 @@
org.drools.rule.Declaration[] declarations,
org.drools.rule.Declaration[] innerDeclarations,
org.drools.WorkingMemory workingMemory) throws Exception {
- @foreach{declarationTypes, declarations as type, declr} @{type} @{declr.identifier} = ( @{type} ) declarations[@{i0}].@{declr.extractor.nativeReadMethod.name}( ( (org.drools.common.InternalFactHandle) leftTuple.get( declarations[@{i0}] ) ).getObject() );
+ @foreach{declarationTypes, declarations as type, declr} @{type} @{declr.identifier} = ( @{type} ) declarations[@{i0}].@{declr.extractor.nativeReadMethod.name}( (org.drools.common.InternalWorkingMemory) workingMemory, ( (org.drools.common.InternalFactHandle) leftTuple.get( declarations[@{i0}] ) ).getObject() );
@end{}
@foreach{globalTypes, globals as type, identifier} @{type} @{identifier} = ( @{type} ) workingMemory.getGlobal( "@{identifier}" );
@end{}
((@{ruleClassName}.@{className})context).accumulate(
+ workingMemory,
innerDeclarations,
handle.getObject()@if{declarations != empty}, at end{}
@foreach{declarations as declr} @{declr.identifier}@end{","}@if{globals != empty}, at end{}
@@ -210,12 +211,13 @@
org.drools.rule.Declaration[] declarations,
org.drools.rule.Declaration[] innerDeclarations,
org.drools.WorkingMemory workingMemory) throws Exception {
- @foreach{declarationTypes, declarations as type, declr} @{type} @{declr.identifier} = ( @{type} ) declarations[@{i0}].@{declr.extractor.nativeReadMethod.name}( ( (org.drools.common.InternalFactHandle) leftTuple.get( declarations[@{i0}] ) ).getObject() );
+ @foreach{declarationTypes, declarations as type, declr} @{type} @{declr.identifier} = ( @{type} ) declarations[@{i0}].@{declr.extractor.nativeReadMethod.name}( (org.drools.common.InternalWorkingMemory) workingMemory, ( (org.drools.common.InternalFactHandle) leftTuple.get( declarations[@{i0}] ) ).getObject() );
@end{}
@foreach{globalTypes, globals as type, identifier} @{type} @{identifier} = ( @{type} ) workingMemory.getGlobal( "@{identifier}" );
@end{}
((@{ruleClassName}.@{className})context).reverse(
+ workingMemory,
innerDeclarations,
handle.getObject()@if{declarations != empty}, at end{}
@foreach{declarations as declr} @{declr.identifier}@end{","}@if{globals != empty}, at end{}
@@ -226,7 +228,7 @@
org.drools.spi.Tuple leftTuple,
org.drools.rule.Declaration[] declarations,
org.drools.WorkingMemory workingMemory) throws Exception {
- @foreach{declarationTypes, declarations as type, declr} @{type} @{declr.identifier} = ( @{type} ) declarations[@{i0}].@{declr.extractor.nativeReadMethod.name}( ( (org.drools.common.InternalFactHandle) leftTuple.get( declarations[@{i0}] ) ).getObject() );
+ @foreach{declarationTypes, declarations as type, declr} @{type} @{declr.identifier} = ( @{type} ) declarations[@{i0}].@{declr.extractor.nativeReadMethod.name}( (org.drools.common.InternalWorkingMemory) workingMemory, ( (org.drools.common.InternalFactHandle) leftTuple.get( declarations[@{i0}] ) ).getObject() );
@end{}
@foreach{globalTypes, globals as type, identifier} @{type} @{identifier} = ( @{type} ) workingMemory.getGlobal( "@{identifier}" );
@end{}
@@ -281,7 +283,7 @@
@foreach{declarationTypes, declarations, indexes, notPatterns as type, declr, index, notPattern}
org.drools.common.InternalFactHandle @{declr.identifier}__Handle__ = ( org.drools.common.InternalFactHandle ) tuple.get( knowledgeHelper.getDeclaration( declarations[@{index}].getIdentifier() ) );
- @{type} @{declr.identifier} = ( @{type} ) declarations[@{index}].@{declr.extractor.nativeReadMethod.name}( @{declr.identifier}__Handle__.getObject() );
+ @{type} @{declr.identifier} = ( @{type} ) declarations[@{index}].@{declr.extractor.nativeReadMethod.name}( (org.drools.common.InternalWorkingMemory) workingMemory, @{declr.identifier}__Handle__.getObject() );
@if{notPattern}@{declr.identifier}__Handle__ = (org.drools.common.InternalFactHandle) knowledgeHelper.getWorkingMemory().getFactHandle( @{declr.identifier} );@end{}
@end{}
Modified: labs/jbossrules/trunk/drools-compiler/src/main/resources/org/drools/rule/builder/dialect/java/javaRule.mvel
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/resources/org/drools/rule/builder/dialect/java/javaRule.mvel 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-compiler/src/main/resources/org/drools/rule/builder/dialect/java/javaRule.mvel 2007-06-28 22:27:18 UTC (rev 12940)
@@ -36,22 +36,24 @@
@{initCode}
}
- public void accumulate(org.drools.rule.Declaration[] innerDeclarations,
+ public void accumulate(org.drools.WorkingMemory workingMemory,
+ org.drools.rule.Declaration[] innerDeclarations,
Object object @if{declarations != empty}, @end{}
@foreach{declarationTypes, declarations as type, declr} @{type} @{declr.identifier}@end{","}@if{globals != empty}, at end{}
@foreach{globalTypes, globals as type, identifier} @{type} @{identifier} @end{","}
) throws Exception {
- @foreach{innerDeclarations as declr} @{declr.extractor.extractToClass.getName()} @{declr.identifier} = (@{declr.extractor.extractToClass.getName()}) innerDeclarations[@{i0}].@{declr.extractor.nativeReadMethod.name}( object );
+ @foreach{innerDeclarations as declr} @{declr.extractor.extractToClass.getName()} @{declr.identifier} = (@{declr.extractor.extractToClass.getName()}) innerDeclarations[@{i0}].@{declr.extractor.nativeReadMethod.name}( (org.drools.common.InternalWorkingMemory) workingMemory, object );
@end{}
@{actionCode}
}
- public void reverse(org.drools.rule.Declaration[] innerDeclarations,
+ public void reverse(org.drools.WorkingMemory workingMemory,
+ org.drools.rule.Declaration[] innerDeclarations,
Object object @if{declarations != empty}, @end{}
@foreach{declarationTypes, declarations as type, declr} @{type} @{declr.identifier}@end{","}@if{globals != empty}, at end{}
@foreach{globalTypes, globals as type, identifier} @{type} @{identifier} @end{","}
) throws Exception {
- @foreach{innerDeclarations as declr} @{declr.extractor.extractToClass.getName()} @{declr.identifier} = (@{declr.extractor.extractToClass.getName()}) innerDeclarations[@{i0}].@{declr.extractor.nativeReadMethod.name}( object );
+ @foreach{innerDeclarations as declr} @{declr.extractor.extractToClass.getName()} @{declr.identifier} = (@{declr.extractor.extractToClass.getName()}) innerDeclarations[@{i0}].@{declr.extractor.nativeReadMethod.name}( (org.drools.common.InternalWorkingMemory) workingMemory, object );
@end{}
@{reverseCode}
}
Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -2991,6 +2991,45 @@
}
+ public void testGlobals2() throws Exception {
+
+ final PackageBuilder builder = new PackageBuilder();
+ builder.addPackageFromDrl( new InputStreamReader( getClass().getResourceAsStream( "test_globalsAsConstraints.drl" ) ) );
+ final Package pkg = builder.getPackage();
+
+ final RuleBase ruleBase = getRuleBase();
+ ruleBase.addPackage( pkg );
+ final WorkingMemory workingMemory = ruleBase.newStatefulSession();
+
+ final List results = new ArrayList();
+ workingMemory.setGlobal( "results",
+ results );
+
+ final List cheeseTypes = new ArrayList();
+ workingMemory.setGlobal( "cheeseTypes",
+ cheeseTypes );
+ cheeseTypes.add( "stilton" );
+ cheeseTypes.add( "muzzarela" );
+
+ final Cheese stilton = new Cheese( "stilton",
+ 5 );
+ workingMemory.insert( stilton );
+
+ workingMemory.fireAllRules();
+
+ assertEquals( 1, results.size() );
+ assertEquals( "memberOf", results.get( 0 ));
+
+ final Cheese brie = new Cheese( "brie",
+ 5 );
+ workingMemory.insert( brie );
+
+ workingMemory.fireAllRules();
+
+ assertEquals( 2, results.size() );
+ assertEquals( "not memberOf", results.get( 1 ));
+ }
+
}
\ No newline at end of file
Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/rule/builder/dialect/java/AccumulateTemplateTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/rule/builder/dialect/java/AccumulateTemplateTest.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/rule/builder/dialect/java/AccumulateTemplateTest.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -81,14 +81,19 @@
inner );
map.put( "attributes",
- new Attribute[]{new Attribute( "int",
- "x" )} );
+ new String[]{"x"} );
+ map.put( "attributesTypes",
+ new String[]{"int"} );
map.put( "initCode",
"x = 0;" );
map.put( "actionCode",
"x += 1;" );
+ map.put( "reverseCode",
+ "x -= 1;" );
map.put( "resultCode",
"x + 10" );
+ map.put( "supportsReverse",
+ "true" );
map.put( "resultType",
Integer.class );
@@ -97,7 +102,7 @@
new Integer( 10 ) );
TemplateRegistry registry = getRuleTemplateRegistry();
- Object method = TemplateInterpreter.parse( registry.getTemplate( "accummulateInnerClass" ),
+ Object method = TemplateInterpreter.parse( registry.getTemplate( "accumulateInnerClass" ),
null,
map,
registry );
Added: labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_globalsAsConstraints.drl
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_globalsAsConstraints.drl (rev 0)
+++ labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_globalsAsConstraints.drl 2007-06-28 22:27:18 UTC (rev 12940)
@@ -0,0 +1,18 @@
+package org.drools;
+
+global java.util.List cheeseTypes;
+global java.util.List results;
+
+rule "member of cheese types"
+when
+ Cheese( type memberOf cheeseTypes )
+then
+ results.add( "memberOf" );
+end
+
+rule "not member of cheese types"
+when
+ Cheese( type not memberOf cheeseTypes )
+then
+ results.add( "not memberOf" );
+end
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/QueryResult.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/QueryResult.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/QueryResult.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -4,6 +4,7 @@
import org.drools.base.ShadowProxy;
import org.drools.common.InternalFactHandle;
+import org.drools.common.InternalWorkingMemory;
import org.drools.rule.Declaration;
import org.drools.spi.Tuple;
@@ -35,7 +36,7 @@
}
public Object get(final Declaration declaration) {
- return declaration.getValue( getObject( this.tuple.get( declaration ) ) );
+ return declaration.getValue( (InternalWorkingMemory) workingMemory, getObject( this.tuple.get( declaration ) ) );
}
public FactHandle[] getFactHandles() {
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/audit/WorkingMemoryLogger.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/audit/WorkingMemoryLogger.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/audit/WorkingMemoryLogger.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -29,6 +29,7 @@
import org.drools.audit.event.RuleFlowGroupLogEvent;
import org.drools.audit.event.RuleFlowLogEvent;
import org.drools.common.InternalFactHandle;
+import org.drools.common.InternalWorkingMemory;
import org.drools.event.ActivationCancelledEvent;
import org.drools.event.ActivationCreatedEvent;
import org.drools.event.AfterActivationFiredEvent;
@@ -243,7 +244,7 @@
// This handle is now invalid, probably due to an fact retraction
continue;
}
- final Object value = declaration.getValue( this.workingMemory.getObject( handle ) );
+ final Object value = declaration.getValue( (InternalWorkingMemory) workingMemory, this.workingMemory.getObject( handle ) );
result.append( declaration.getIdentifier() );
result.append( "=" );
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/BaseClassFieldExtractor.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/BaseClassFieldExtractor.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/BaseClassFieldExtractor.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -78,6 +78,10 @@
return this.valueType;
}
+ public boolean isGlobal() {
+ return false;
+ }
+
public int hashCode() {
final int PRIME = 31;
int result = 1;
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/ClassFieldExtractor.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/ClassFieldExtractor.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/ClassFieldExtractor.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -21,7 +21,7 @@
import java.lang.reflect.Method;
import org.drools.RuntimeDroolsException;
-import org.drools.common.DroolsObjectInputStream;
+import org.drools.common.InternalWorkingMemory;
import org.drools.spi.FieldExtractor;
/**
@@ -90,8 +90,8 @@
return this.fieldName;
}
- public Object getValue(final Object object) {
- return this.extractor.getValue( object );
+ public Object getValue(InternalWorkingMemory workingMemory, final Object object) {
+ return this.extractor.getValue( workingMemory, object );
}
public ValueType getValueType() {
@@ -124,47 +124,51 @@
return this.extractor.getValueType() == other.getValueType() && this.extractor.getIndex() == other.getIndex();
}
- public boolean getBooleanValue(final Object object) {
- return this.extractor.getBooleanValue( object );
+ public boolean getBooleanValue(InternalWorkingMemory workingMemory, final Object object) {
+ return this.extractor.getBooleanValue( workingMemory, object );
}
- public byte getByteValue(final Object object) {
- return this.extractor.getByteValue( object );
+ public byte getByteValue(InternalWorkingMemory workingMemory, final Object object) {
+ return this.extractor.getByteValue( workingMemory, object );
}
- public char getCharValue(final Object object) {
- return this.extractor.getCharValue( object );
+ public char getCharValue(InternalWorkingMemory workingMemory, final Object object) {
+ return this.extractor.getCharValue( workingMemory, object );
}
- public double getDoubleValue(final Object object) {
- return this.extractor.getDoubleValue( object );
+ public double getDoubleValue(InternalWorkingMemory workingMemory, final Object object) {
+ return this.extractor.getDoubleValue( workingMemory, object );
}
- public float getFloatValue(final Object object) {
- return this.extractor.getFloatValue( object );
+ public float getFloatValue(InternalWorkingMemory workingMemory, final Object object) {
+ return this.extractor.getFloatValue( workingMemory, object );
}
- public int getIntValue(final Object object) {
- return this.extractor.getIntValue( object );
+ public int getIntValue(InternalWorkingMemory workingMemory, final Object object) {
+ return this.extractor.getIntValue( workingMemory, object );
}
- public long getLongValue(final Object object) {
- return this.extractor.getLongValue( object );
+ public long getLongValue(InternalWorkingMemory workingMemory, final Object object) {
+ return this.extractor.getLongValue( workingMemory, object );
}
- public short getShortValue(final Object object) {
- return this.extractor.getShortValue( object );
+ public short getShortValue(InternalWorkingMemory workingMemory, final Object object) {
+ return this.extractor.getShortValue( workingMemory, object );
}
- public boolean isNullValue(final Object object) {
- return this.extractor.isNullValue( object );
+ public boolean isNullValue(InternalWorkingMemory workingMemory, final Object object) {
+ return this.extractor.isNullValue( workingMemory, object );
}
public Method getNativeReadMethod() {
return this.extractor.getNativeReadMethod();
}
- public int getHashCode(final Object object) {
- return this.extractor.getHashCode( object );
+ public int getHashCode(InternalWorkingMemory workingMemory, final Object object) {
+ return this.extractor.getHashCode( workingMemory, object );
}
+
+ public boolean isGlobal() {
+ return false;
+ }
}
\ No newline at end of file
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/ClassFieldExtractorFactory.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/ClassFieldExtractorFactory.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/ClassFieldExtractorFactory.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -40,6 +40,7 @@
import org.drools.base.extractors.BaseShortClassFieldExtractor;
import org.drools.base.extractors.MVELClassFieldExtractor;
import org.drools.base.extractors.SelfReferenceClassFieldExtractor;
+import org.drools.common.InternalWorkingMemory;
import org.drools.util.asm.ClassFieldInspector;
/**
@@ -330,7 +331,7 @@
Method overridingMethod;
try {
overridingMethod = superClass.getMethod( getOverridingMethodName( fieldType ),
- new Class[]{Object.class} );
+ new Class[]{InternalWorkingMemory.class, Object.class} );
} catch ( final Exception e ) {
throw new RuntimeDroolsException( "This is a bug. Please report back to JBoss Rules team.",
e );
@@ -346,7 +347,7 @@
final Label l0 = new Label();
mv.visitLabel( l0 );
mv.visitVarInsn( Opcodes.ALOAD,
- 1 );
+ 2 );
mv.visitTypeInsn( Opcodes.CHECKCAST,
Type.getInternalName( originalClass ) );
@@ -370,12 +371,18 @@
l0,
l1,
0 );
+ mv.visitLocalVariable( "workingMemory",
+ Type.getDescriptor( InternalWorkingMemory.class ),
+ null,
+ l0,
+ l1,
+ 1 );
mv.visitLocalVariable( "object",
Type.getDescriptor( Object.class ),
null,
l0,
l1,
- 1 );
+ 2 );
mv.visitMaxs( 0,
0 );
mv.visitEnd();
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/DefaultKnowledgeHelper.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/DefaultKnowledgeHelper.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/DefaultKnowledgeHelper.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -163,7 +163,7 @@
// }
public Object get(final Declaration declaration) {
- return declaration.getValue( this.tuple.get( declaration ).getObject() );
+ return declaration.getValue( workingMemory, this.tuple.get( declaration ).getObject() );
}
public Tuple getTuple() {
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/ArrayFactory.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/ArrayFactory.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/ArrayFactory.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -18,6 +18,7 @@
import org.drools.base.BaseEvaluator;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
import org.drools.rule.VariableRestriction.ObjectVariableContextEntry;
import org.drools.rule.VariableRestriction.VariableContextEntry;
import org.drools.spi.Evaluator;
@@ -78,10 +79,10 @@
Operator.EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- final Object value1 = extractor.getValue( object1 );
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ final Object value1 = extractor.getValue( workingMemory, object1 );
final Object value2 = object2.getValue();
if ( value1 == null ) {
return value2 == null;
@@ -89,30 +90,30 @@
return value1.equals( value2 );
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- final Object value = context.declaration.getExtractor().getValue( left );
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ final Object value = context.declaration.getExtractor().getValue( workingMemory, left );
if ( value == null ) {
return ((ObjectVariableContextEntry) context).right == null;
}
return value.equals( ((ObjectVariableContextEntry) context).right );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- final Object value = context.extractor.getValue( right );
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ final Object value = context.extractor.getValue( workingMemory, right );
if ( ((ObjectVariableContextEntry) context).left == null ) {
return value == null;
}
return ((ObjectVariableContextEntry) context).left.equals( value );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- final Object value1 = extractor1.getValue( object1 );
- final Object value2 = extractor2.getValue( object2 );
+ final Extractor extractor2, final Object object2) {
+ final Object value1 = extractor1.getValue( workingMemory, object1 );
+ final Object value2 = extractor2.getValue( workingMemory, object2 );
if ( value1 == null ) {
return value2 == null;
}
@@ -137,10 +138,10 @@
Operator.NOT_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- final Object value1 = extractor.getValue( object1 );
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ final Object value1 = extractor.getValue( workingMemory, object1 );
final Object value2 = object2.getValue();
if ( value1 == null ) {
return value2 != null;
@@ -148,30 +149,30 @@
return !value1.equals( value2 );
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- final Object value = context.declaration.getExtractor().getValue( left );
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ final Object value = context.declaration.getExtractor().getValue( workingMemory, left );
if ( value == null ) {
return ((ObjectVariableContextEntry) context).right != null;
}
return !value.equals( ((ObjectVariableContextEntry) context).right );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- final Object value = context.extractor.getValue( right );
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ final Object value = context.extractor.getValue( workingMemory, right );
if ( ((ObjectVariableContextEntry) context).left == null ) {
return value != null;
}
return !((ObjectVariableContextEntry) context).left.equals( value );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- final Object value1 = extractor1.getValue( object1 );
- final Object value2 = extractor2.getValue( object2 );
+ final Extractor extractor2, final Object object2) {
+ final Object value1 = extractor1.getValue( workingMemory, object1 );
+ final Object value2 = extractor2.getValue( workingMemory, object2 );
if ( value1 == null ) {
return value2 != null;
}
@@ -195,20 +196,20 @@
Operator.CONTAINS );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
final Object value = object2.getValue();
- final Object[] array = (Object[]) extractor.getValue( object1 );
+ final Object[] array = (Object[]) extractor.getValue( workingMemory, object1 );
if( array == null )
return false;
return ArrayUtils.search( array,
value ) >= 0;
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- final Object value = context.declaration.getExtractor().getValue( left );
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ final Object value = context.declaration.getExtractor().getValue( workingMemory, left );
final Object[] array = (Object[]) ((ObjectVariableContextEntry) context).right;
if( array == null )
return false;
@@ -216,22 +217,22 @@
value ) >= 0;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
final Object value = ((ObjectVariableContextEntry) context).left;
- final Object[] array = (Object[]) context.extractor.getValue( right );
+ final Object[] array = (Object[]) context.extractor.getValue( workingMemory, right );
if( array == null )
return false;
return ArrayUtils.search( array,
value ) >= 0;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- final Object value = extractor2.getValue( object2 );
- final Object[] array = (Object[]) extractor1.getValue( object1 );
+ final Extractor extractor2, final Object object2) {
+ final Object value = extractor2.getValue( workingMemory, object2 );
+ final Object[] array = (Object[]) extractor1.getValue( workingMemory, object1 );
if( array == null )
return false;
@@ -256,20 +257,20 @@
Operator.EXCLUDES );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
final Object value = object2.getValue();
- final Object[] array = (Object[]) extractor.getValue( object1 );
+ final Object[] array = (Object[]) extractor.getValue( workingMemory, object1 );
if( array == null )
return false;
return ArrayUtils.search( array,
value ) < 0;
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- final Object value = context.declaration.getExtractor().getValue( left );
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ final Object value = context.declaration.getExtractor().getValue( workingMemory, left );
final Object[] array = (Object[]) ((ObjectVariableContextEntry) context).right;
if( array == null )
return false;
@@ -277,22 +278,22 @@
value ) < 0;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
final Object value = ((ObjectVariableContextEntry) context).left;
- final Object[] array = (Object[]) context.extractor.getValue( right );
+ final Object[] array = (Object[]) context.extractor.getValue( workingMemory, right );
if( array == null )
return false;
return ArrayUtils.search( array,
value ) < 0;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- final Object value = extractor2.getValue( object2 );
- final Object[] array = (Object[]) extractor1.getValue( object1 );
+ final Extractor extractor2, final Object object2) {
+ final Object value = extractor2.getValue( workingMemory, object2 );
+ final Object[] array = (Object[]) extractor1.getValue( workingMemory, object1 );
if( array == null )
return false;
@@ -317,20 +318,20 @@
Operator.MEMBEROF );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
final Object[] array = (Object[]) object2.getValue();
- final Object value = extractor.getValue( object1 );
+ final Object value = extractor.getValue( workingMemory, object1 );
if( array == null )
return false;
return ArrayUtils.search( array,
value ) >= 0;
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- final Object[] array = (Object[]) context.declaration.getExtractor().getValue( left );
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ final Object[] array = (Object[]) context.declaration.getExtractor().getValue( workingMemory, left );
final Object value = ((ObjectVariableContextEntry) context).right;
if( array == null )
return false;
@@ -338,22 +339,22 @@
value ) >= 0;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
final Object[] array = (Object[]) ((ObjectVariableContextEntry) context).left;
- final Object value = context.extractor.getValue( right );
+ final Object value = context.extractor.getValue( workingMemory, right );
if( array == null )
return false;
return ArrayUtils.search( array,
value ) >= 0;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- final Object[] array = (Object[]) extractor2.getValue( object2 );
- final Object value = extractor1.getValue( object1 );
+ final Extractor extractor2, final Object object2) {
+ final Object[] array = (Object[]) extractor2.getValue( workingMemory, object2 );
+ final Object value = extractor1.getValue( workingMemory, object1 );
if( array == null )
return false;
@@ -378,20 +379,20 @@
Operator.NOTMEMBEROF );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
final Object[] array = (Object[]) object2.getValue();
- final Object value = extractor.getValue( object1 );
+ final Object value = extractor.getValue( workingMemory, object1 );
if( array == null )
return false;
return ArrayUtils.search( array,
value ) < 0;
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- final Object[] array = (Object[]) context.declaration.getExtractor().getValue( left );
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ final Object[] array = (Object[]) context.declaration.getExtractor().getValue( workingMemory, left );
final Object value = ((ObjectVariableContextEntry) context).right;
if( array == null )
return false;
@@ -399,22 +400,22 @@
value ) < 0;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
final Object[] array = (Object[]) ((ObjectVariableContextEntry) context).left;
- final Object value = context.extractor.getValue( right );
+ final Object value = context.extractor.getValue( workingMemory, right );
if( array == null )
return false;
return ArrayUtils.search( array,
value ) < 0;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- final Object[] array = (Object[]) extractor2.getValue( object2 );
- final Object value = extractor1.getValue( object1 );
+ final Extractor extractor2, final Object object2) {
+ final Object[] array = (Object[]) extractor2.getValue( workingMemory, object2 );
+ final Object value = extractor1.getValue( workingMemory, object1 );
if( array == null )
return false;
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/BaseMemberOfEvaluator.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/BaseMemberOfEvaluator.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/BaseMemberOfEvaluator.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -7,6 +7,7 @@
import org.drools.base.BaseEvaluator;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
import org.drools.rule.VariableRestriction.ObjectVariableContextEntry;
import org.drools.rule.VariableRestriction.VariableContextEntry;
import org.drools.spi.Extractor;
@@ -25,22 +26,22 @@
operator );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
if( object2.isNull() ) {
return false;
} else if( ! object2.isCollectionField() ) {
throw new ClassCastException("Can't check if an attribute is member of an object of class "+object2.getValue().getClass() );
}
final Collection col = (Collection) object2.getValue();
- final Object value = extractor.getValue( object1 );
+ final Object value = extractor.getValue( workingMemory, object1 );
return col.contains( value );
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- final Object object = context.declaration.getExtractor().getValue( left );
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ final Object object = context.declaration.getExtractor().getValue( workingMemory, left );
if( object == null ) {
return false;
} else if( ! ( object instanceof Collection ) ) {
@@ -51,8 +52,8 @@
return col.contains( value );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
final Object object = ((ObjectVariableContextEntry) context).left;
if( object == null ) {
return false;
@@ -60,22 +61,22 @@
throw new ClassCastException("Can't check if an attribute is member of an object of class "+object.getClass() );
}
final Collection col = (Collection) object;
- final Object value = context.extractor.getValue( right );
+ final Object value = context.extractor.getValue( workingMemory, right );
return col.contains( value );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- final Object object = extractor2.getValue( object2 );
+ final Extractor extractor2, final Object object2) {
+ final Object object = extractor2.getValue( workingMemory, object2 );
if( object == null ) {
return false;
} else if( ! ( object instanceof Collection ) ) {
throw new ClassCastException("Can't check if an attribute is member of an object of class "+object.getClass() );
}
final Collection col = (Collection) object;
- final Object value = extractor1.getValue( object1 );
+ final Object value = extractor1.getValue( workingMemory, object1 );
return col.contains( value );
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/BaseNotMemberOfEvaluator.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/BaseNotMemberOfEvaluator.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/BaseNotMemberOfEvaluator.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -7,6 +7,7 @@
import org.drools.base.BaseEvaluator;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
import org.drools.rule.VariableRestriction.ObjectVariableContextEntry;
import org.drools.rule.VariableRestriction.VariableContextEntry;
import org.drools.spi.Extractor;
@@ -26,22 +27,22 @@
operator );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
if( object2.isNull() ) {
return false;
} else if( ! object2.isCollectionField() ) {
throw new ClassCastException("Can't check if an attribute is not member of an object of class "+object2.getValue().getClass() );
}
final Collection col = (Collection) object2.getValue();
- final Object value = extractor.getValue( object1 );
+ final Object value = extractor.getValue( workingMemory, object1 );
return ! col.contains( value );
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- final Object object = context.declaration.getExtractor().getValue( left );
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ final Object object = context.declaration.getExtractor().getValue( workingMemory, left );
if( object == null ) {
return false;
} else if( ! ( object instanceof Collection ) ) {
@@ -52,8 +53,8 @@
return ! col.contains( value );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
final Object object = ((ObjectVariableContextEntry) context).left;
if( object == null ) {
return false;
@@ -61,22 +62,22 @@
throw new ClassCastException("Can't check if an attribute is not member of an object of class "+object.getClass() );
}
final Collection col = (Collection) object;
- final Object value = context.extractor.getValue( right );
+ final Object value = context.extractor.getValue( workingMemory, right );
return ! col.contains( value );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- final Object object = extractor2.getValue( object2 );
+ final Extractor extractor2, final Object object2) {
+ final Object object = extractor2.getValue( workingMemory, object2 );
if( object == null ) {
return false;
} else if( ! ( object instanceof Collection ) ) {
throw new ClassCastException("Can't check if an attribute is not member of an object of class "+object.getClass() );
}
final Collection col = (Collection) object;
- final Object value = extractor1.getValue( object1 );
+ final Object value = extractor1.getValue( workingMemory, object1 );
return ! col.contains( value );
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/BigDecimalFactory.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/BigDecimalFactory.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/BigDecimalFactory.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -20,6 +20,7 @@
import org.drools.base.BaseEvaluator;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
import org.drools.rule.VariableRestriction.ObjectVariableContextEntry;
import org.drools.rule.VariableRestriction.VariableContextEntry;
import org.drools.spi.Evaluator;
@@ -78,10 +79,10 @@
Operator.EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- final Object value1 = extractor.getValue( object1 );
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ final Object value1 = extractor.getValue( workingMemory, object1 );
final Object value2 = object2.getValue();
if ( value1 == null ) {
return value2 == null;
@@ -89,30 +90,30 @@
return value1.equals( value2 );
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- final Object value = context.declaration.getExtractor().getValue( left );
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ final Object value = context.declaration.getExtractor().getValue( workingMemory, left );
if ( value == null ) {
return ((ObjectVariableContextEntry) context).right == null;
}
return value.equals( ((ObjectVariableContextEntry) context).right );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- final Object value = context.extractor.getValue( right );
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ final Object value = context.extractor.getValue( workingMemory, right );
if ( ((ObjectVariableContextEntry) context).left == null ) {
return value == null;
}
return ((ObjectVariableContextEntry) context).left.equals( value );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- final Object value1 = extractor1.getValue( object1 );
- final Object value2 = extractor2.getValue( object2 );
+ final Extractor extractor2, final Object object2) {
+ final Object value1 = extractor1.getValue( workingMemory, object1 );
+ final Object value2 = extractor2.getValue( workingMemory, object2 );
if ( value1 == null ) {
return value2 == null;
}
@@ -137,10 +138,10 @@
Operator.NOT_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- final Object value1 = extractor.getValue( object1 );
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ final Object value1 = extractor.getValue( workingMemory, object1 );
final Object value2 = object2.getValue();
if ( value1 == null ) {
return value2 != null;
@@ -148,30 +149,30 @@
return !value1.equals( value2 );
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- final Object value = context.declaration.getExtractor().getValue( left );
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ final Object value = context.declaration.getExtractor().getValue( workingMemory, left );
if ( value == null ) {
return ((ObjectVariableContextEntry) context).right != null;
}
return !value.equals( ((ObjectVariableContextEntry) context).right );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- final Object value = context.extractor.getValue( right );
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ final Object value = context.extractor.getValue( workingMemory, right );
if ( ((ObjectVariableContextEntry) context).left == null ) {
return value != null;
}
return !((ObjectVariableContextEntry) context).left.equals( value );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- final Object value1 = extractor1.getValue( object1 );
- final Object value2 = extractor2.getValue( object2 );
+ final Extractor extractor2, final Object object2) {
+ final Object value1 = extractor1.getValue( workingMemory, object1 );
+ final Object value2 = extractor2.getValue( workingMemory, object2 );
if ( value1 == null ) {
return value2 != null;
}
@@ -195,43 +196,43 @@
Operator.LESS );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final BigDecimal comp = (BigDecimal) extractor.getValue( object1 );
+ final BigDecimal comp = (BigDecimal) extractor.getValue( workingMemory, object1 );
return comp.compareTo( (BigDecimal) object2.getValue() ) < 0;
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
final BigDecimal comp = (BigDecimal) ((ObjectVariableContextEntry) context).right;
- return comp.compareTo( (BigDecimal) context.declaration.getExtractor().getValue( left ) ) < 0;
+ return comp.compareTo( (BigDecimal) context.declaration.getExtractor().getValue( workingMemory, left ) ) < 0;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- final BigDecimal comp = (BigDecimal) context.extractor.getValue( right );
+ final BigDecimal comp = (BigDecimal) context.extractor.getValue( workingMemory, right );
return comp.compareTo( (BigDecimal) ((ObjectVariableContextEntry) context).left ) < 0;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final BigDecimal comp = (BigDecimal) extractor1.getValue( object1 );
- return comp.compareTo( (BigDecimal) extractor2.getValue( object2 ) ) < 0;
+ final BigDecimal comp = (BigDecimal) extractor1.getValue( workingMemory, object1 );
+ return comp.compareTo( (BigDecimal) extractor2.getValue( workingMemory, object2 ) ) < 0;
}
public String toString() {
@@ -251,43 +252,43 @@
Operator.LESS_OR_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final BigDecimal comp = (BigDecimal) extractor.getValue( object1 );
+ final BigDecimal comp = (BigDecimal) extractor.getValue( workingMemory, object1 );
return comp.compareTo( (BigDecimal) object2.getValue() ) <= 0;
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
final BigDecimal comp = (BigDecimal) ((ObjectVariableContextEntry) context).right;
- return comp.compareTo( (BigDecimal) context.declaration.getExtractor().getValue( left ) ) <= 0;
+ return comp.compareTo( (BigDecimal) context.declaration.getExtractor().getValue( workingMemory, left ) ) <= 0;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- final BigDecimal comp = (BigDecimal) context.extractor.getValue( right );
+ final BigDecimal comp = (BigDecimal) context.extractor.getValue( workingMemory, right );
return comp.compareTo( (BigDecimal) ((ObjectVariableContextEntry) context).left ) <= 0;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final BigDecimal comp = (BigDecimal) extractor1.getValue( object1 );
- return comp.compareTo( (BigDecimal) extractor2.getValue( object2 ) ) <= 0;
+ final BigDecimal comp = (BigDecimal) extractor1.getValue( workingMemory, object1 );
+ return comp.compareTo( (BigDecimal) extractor2.getValue( workingMemory, object2 ) ) <= 0;
}
public String toString() {
@@ -307,43 +308,43 @@
Operator.GREATER );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final BigDecimal comp = (BigDecimal) extractor.getValue( object1 );
+ final BigDecimal comp = (BigDecimal) extractor.getValue( workingMemory, object1 );
return comp.compareTo( (BigDecimal) object2.getValue() ) > 0;
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
final BigDecimal comp = (BigDecimal) ((ObjectVariableContextEntry) context).right;
- return comp.compareTo( (BigDecimal) context.declaration.getExtractor().getValue( left ) ) > 0;
+ return comp.compareTo( (BigDecimal) context.declaration.getExtractor().getValue( workingMemory, left ) ) > 0;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- final BigDecimal comp = (BigDecimal) context.extractor.getValue( right );
+ final BigDecimal comp = (BigDecimal) context.extractor.getValue( workingMemory, right );
return comp.compareTo( (BigDecimal) ((ObjectVariableContextEntry) context).left ) > 0;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final BigDecimal comp = (BigDecimal) extractor1.getValue( object1 );
- return comp.compareTo( (BigDecimal) extractor2.getValue( object2 ) ) > 0;
+ final BigDecimal comp = (BigDecimal) extractor1.getValue( workingMemory, object1 );
+ return comp.compareTo( (BigDecimal) extractor2.getValue( workingMemory, object2 ) ) > 0;
}
public String toString() {
@@ -363,43 +364,43 @@
Operator.GREATER_OR_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final BigDecimal comp = (BigDecimal) extractor.getValue( object1 );
+ final BigDecimal comp = (BigDecimal) extractor.getValue( workingMemory, object1 );
return comp.compareTo( (BigDecimal) object2.getValue() ) >= 0;
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
final BigDecimal comp = (BigDecimal) ((ObjectVariableContextEntry) context).right;
- return comp.compareTo( (BigDecimal) context.declaration.getExtractor().getValue( left ) ) >= 0;
+ return comp.compareTo( (BigDecimal) context.declaration.getExtractor().getValue( workingMemory, left ) ) >= 0;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- final BigDecimal comp = (BigDecimal) context.extractor.getValue( right );
+ final BigDecimal comp = (BigDecimal) context.extractor.getValue( workingMemory, right );
return comp.compareTo( (BigDecimal) ((ObjectVariableContextEntry) context).left ) >= 0;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final BigDecimal comp = (BigDecimal) extractor1.getValue( object1 );
- return comp.compareTo( (BigDecimal) extractor2.getValue( object2 ) ) >= 0;
+ final BigDecimal comp = (BigDecimal) extractor1.getValue( workingMemory, object1 );
+ return comp.compareTo( (BigDecimal) extractor2.getValue( workingMemory, object2 ) ) >= 0;
}
public String toString() {
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/BigIntegerFactory.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/BigIntegerFactory.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/BigIntegerFactory.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -20,6 +20,7 @@
import org.drools.base.BaseEvaluator;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
import org.drools.rule.VariableRestriction.ObjectVariableContextEntry;
import org.drools.rule.VariableRestriction.VariableContextEntry;
import org.drools.spi.Evaluator;
@@ -78,10 +79,10 @@
Operator.EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- final Object value1 = extractor.getValue( object1 );
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ final Object value1 = extractor.getValue( workingMemory, object1 );
final Object value2 = object2.getValue();
if ( value1 == null ) {
return value2 == null;
@@ -89,30 +90,30 @@
return value1.equals( value2 );
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- final Object value = context.declaration.getExtractor().getValue( left );
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ final Object value = context.declaration.getExtractor().getValue( workingMemory, left );
if ( value == null ) {
return ((ObjectVariableContextEntry) context).right == null;
}
return value.equals( ((ObjectVariableContextEntry) context).right );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- final Object value = context.extractor.getValue( right );
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ final Object value = context.extractor.getValue( workingMemory, right );
if ( ((ObjectVariableContextEntry) context).left == null ) {
return value == null;
}
return ((ObjectVariableContextEntry) context).left.equals( value );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- final Object value1 = extractor1.getValue( object1 );
- final Object value2 = extractor2.getValue( object2 );
+ final Extractor extractor2, final Object object2) {
+ final Object value1 = extractor1.getValue( workingMemory, object1 );
+ final Object value2 = extractor2.getValue( workingMemory, object2 );
if ( value1 == null ) {
return value2 == null;
}
@@ -136,10 +137,10 @@
Operator.NOT_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- final Object value1 = extractor.getValue( object1 );
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ final Object value1 = extractor.getValue( workingMemory, object1 );
final Object value2 = object2.getValue();
if ( value1 == null ) {
return value2 != null;
@@ -147,30 +148,30 @@
return !value1.equals( value2 );
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- final Object value = context.declaration.getExtractor().getValue( left );
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ final Object value = context.declaration.getExtractor().getValue( workingMemory, left );
if ( value == null ) {
return ((ObjectVariableContextEntry) context).right != null;
}
return !value.equals( ((ObjectVariableContextEntry) context).right );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- final Object value = context.extractor.getValue( right );
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ final Object value = context.extractor.getValue( workingMemory, right );
if ( ((ObjectVariableContextEntry) context).left == null ) {
return value != null;
}
return !((ObjectVariableContextEntry) context).left.equals( value );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- final Object value1 = extractor1.getValue( object1 );
- final Object value2 = extractor2.getValue( object2 );
+ final Extractor extractor2, final Object object2) {
+ final Object value1 = extractor1.getValue( workingMemory, object1 );
+ final Object value2 = extractor2.getValue( workingMemory, object2 );
if ( value1 == null ) {
return value2 != null;
}
@@ -194,43 +195,43 @@
Operator.LESS );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final BigInteger comp = (BigInteger) extractor.getValue( object1 );
+ final BigInteger comp = (BigInteger) extractor.getValue( workingMemory, object1 );
return comp.compareTo( (BigInteger) object2.getValue() ) < 0;
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
final BigInteger comp = (BigInteger) ((ObjectVariableContextEntry) context).right;
- return comp.compareTo( (BigInteger) context.declaration.getExtractor().getValue( left ) ) < 0;
+ return comp.compareTo( (BigInteger) context.declaration.getExtractor().getValue( workingMemory, left ) ) < 0;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- final BigInteger comp = (BigInteger) context.extractor.getValue( right );
+ final BigInteger comp = (BigInteger) context.extractor.getValue( workingMemory, right );
return comp.compareTo( (BigInteger) ((ObjectVariableContextEntry) context).left ) < 0;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final BigInteger comp = (BigInteger) extractor1.getValue( object1 );
- return comp.compareTo( (BigInteger) extractor2.getValue( object2 ) ) < 0;
+ final BigInteger comp = (BigInteger) extractor1.getValue( workingMemory, object1 );
+ return comp.compareTo( (BigInteger) extractor2.getValue( workingMemory, object2 ) ) < 0;
}
public String toString() {
@@ -250,43 +251,43 @@
Operator.LESS_OR_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final BigInteger comp = (BigInteger) extractor.getValue( object1 );
+ final BigInteger comp = (BigInteger) extractor.getValue( workingMemory, object1 );
return comp.compareTo( (BigInteger) object2.getValue() ) <= 0;
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
final BigInteger comp = (BigInteger) ((ObjectVariableContextEntry) context).right;
- return comp.compareTo( (BigInteger) context.declaration.getExtractor().getValue( left ) ) <= 0;
+ return comp.compareTo( (BigInteger) context.declaration.getExtractor().getValue( workingMemory, left ) ) <= 0;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- final BigInteger comp = (BigInteger) context.extractor.getValue( right );
+ final BigInteger comp = (BigInteger) context.extractor.getValue( workingMemory, right );
return comp.compareTo( (BigInteger) ((ObjectVariableContextEntry) context).left ) <= 0;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final BigInteger comp = (BigInteger) extractor1.getValue( object1 );
- return comp.compareTo( (BigInteger) extractor2.getValue( object2 ) ) <= 0;
+ final BigInteger comp = (BigInteger) extractor1.getValue( workingMemory, object1 );
+ return comp.compareTo( (BigInteger) extractor2.getValue( workingMemory, object2 ) ) <= 0;
}
public String toString() {
@@ -306,43 +307,43 @@
Operator.GREATER );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final BigInteger comp = (BigInteger) extractor.getValue( object1 );
+ final BigInteger comp = (BigInteger) extractor.getValue( workingMemory, object1 );
return comp.compareTo( (BigInteger) object2.getValue() ) > 0;
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
final BigInteger comp = (BigInteger) ((ObjectVariableContextEntry) context).right;
- return comp.compareTo( (BigInteger) context.declaration.getExtractor().getValue( left ) ) > 0;
+ return comp.compareTo( (BigInteger) context.declaration.getExtractor().getValue( workingMemory, left ) ) > 0;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- final BigInteger comp = (BigInteger) context.extractor.getValue( right );
+ final BigInteger comp = (BigInteger) context.extractor.getValue( workingMemory, right );
return comp.compareTo( (BigInteger) ((ObjectVariableContextEntry) context).left ) > 0;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final BigInteger comp = (BigInteger) extractor1.getValue( object1 );
- return comp.compareTo( (BigInteger) extractor2.getValue( object2 ) ) > 0;
+ final BigInteger comp = (BigInteger) extractor1.getValue( workingMemory, object1 );
+ return comp.compareTo( (BigInteger) extractor2.getValue( workingMemory, object2 ) ) > 0;
}
public String toString() {
@@ -362,43 +363,43 @@
Operator.GREATER_OR_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final BigInteger comp = (BigInteger) extractor.getValue( object1 );
+ final BigInteger comp = (BigInteger) extractor.getValue( workingMemory, object1 );
return comp.compareTo( (BigInteger) object2.getValue() ) >= 0;
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
final BigInteger comp = (BigInteger) ((ObjectVariableContextEntry) context).right;
- return comp.compareTo( (BigInteger) context.declaration.getExtractor().getValue( left ) ) >= 0;
+ return comp.compareTo( (BigInteger) context.declaration.getExtractor().getValue( workingMemory, left ) ) >= 0;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- final BigInteger comp = (BigInteger) context.extractor.getValue( right );
+ final BigInteger comp = (BigInteger) context.extractor.getValue( workingMemory, right );
return comp.compareTo( (BigInteger) ((ObjectVariableContextEntry) context).left ) >= 0;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final BigInteger comp = (BigInteger) extractor1.getValue( object1 );
- return comp.compareTo( (BigInteger) extractor2.getValue( object2 ) ) >= 0;
+ final BigInteger comp = (BigInteger) extractor1.getValue( workingMemory, object1 );
+ return comp.compareTo( (BigInteger) extractor2.getValue( workingMemory, object2 ) ) >= 0;
}
public String toString() {
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/BooleanFactory.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/BooleanFactory.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/BooleanFactory.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -18,6 +18,7 @@
import org.drools.base.BaseEvaluator;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
import org.drools.rule.VariableRestriction.BooleanVariableContextEntry;
import org.drools.rule.VariableRestriction.VariableContextEntry;
import org.drools.spi.Evaluator;
@@ -68,51 +69,51 @@
Operator.EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if ( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if ( extractor.isNullValue( workingMemory, object1 ) ) {
return object2.isNull();
} else if ( object2.isNull() ) {
return false;
}
- return extractor.getBooleanValue( object1 ) == object2.getBooleanValue();
+ return extractor.getBooleanValue( workingMemory, object1 ) == object2.getBooleanValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- if ( context.declaration.getExtractor().isNullValue( left ) ) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ if ( context.declaration.getExtractor().isNullValue( workingMemory, left ) ) {
return context.isRightNull();
} else if ( context.isRightNull() ) {
return false;
}
- return context.declaration.getExtractor().getBooleanValue( left ) == ((BooleanVariableContextEntry) context).right;
+ return context.declaration.getExtractor().getBooleanValue( workingMemory, left ) == ((BooleanVariableContextEntry) context).right;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object object2) {
- if ( context.extractor.isNullValue( object2 )) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object object2) {
+ if ( context.extractor.isNullValue( workingMemory, object2 )) {
return context.isLeftNull();
} else if ( context.isLeftNull() ) {
return false;
}
- return context.extractor.getBooleanValue( object2 ) == ((BooleanVariableContextEntry) context).left;
+ return context.extractor.getBooleanValue( workingMemory, object2 ) == ((BooleanVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if (extractor1.isNullValue( object1 )) {
- return extractor2.isNullValue( object2 );
- } else if (extractor2.isNullValue( object2 )) {
+ final Extractor extractor2, final Object object2) {
+ if (extractor1.isNullValue( workingMemory, object1 )) {
+ return extractor2.isNullValue( workingMemory, object2 );
+ } else if (extractor2.isNullValue( workingMemory, object2 )) {
return false;
}
- return extractor1.getBooleanValue( object1 ) == extractor2.getBooleanValue( object2 );
+ return extractor1.getBooleanValue( workingMemory, object1 ) == extractor2.getBooleanValue( workingMemory, object2 );
}
public String toString() {
@@ -133,50 +134,50 @@
Operator.NOT_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if ( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if ( extractor.isNullValue( workingMemory, object1 ) ) {
return !object2.isNull();
} else if ( object2.isNull() ) {
return true;
}
- return extractor.getBooleanValue( object1 ) != object2.getBooleanValue();
+ return extractor.getBooleanValue( workingMemory, object1 ) != object2.getBooleanValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- if ( context.declaration.getExtractor().isNullValue( left ) ) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ if ( context.declaration.getExtractor().isNullValue( workingMemory, left ) ) {
return !context.isRightNull();
} else if ( context.isRightNull() ) {
return true;
}
- return context.declaration.getExtractor().getBooleanValue( left ) != ((BooleanVariableContextEntry) context).right;
+ return context.declaration.getExtractor().getBooleanValue( workingMemory, left ) != ((BooleanVariableContextEntry) context).right;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object object2) {
- if ( context.extractor.isNullValue( object2 )) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object object2) {
+ if ( context.extractor.isNullValue( workingMemory, object2 )) {
return !context.isLeftNull();
} else if ( context.isLeftNull() ) {
return true;
}
- return context.extractor.getBooleanValue( object2 ) != ((BooleanVariableContextEntry) context).left;
+ return context.extractor.getBooleanValue( workingMemory, object2 ) != ((BooleanVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if (extractor1.isNullValue( object1 )) {
- return !extractor2.isNullValue( object2 );
- } else if (extractor2.isNullValue( object2 )) {
+ final Extractor extractor2, final Object object2) {
+ if (extractor1.isNullValue( workingMemory, object1 )) {
+ return !extractor2.isNullValue( workingMemory, object2 );
+ } else if (extractor2.isNullValue( workingMemory, object2 )) {
return true;
}
- return extractor1.getBooleanValue( object1 ) != extractor1.getBooleanValue( object2 );
+ return extractor1.getBooleanValue( workingMemory, object1 ) != extractor1.getBooleanValue( workingMemory, object2 );
}
public String toString() {
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/ByteFactory.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/ByteFactory.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/ByteFactory.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -18,6 +18,7 @@
import org.drools.base.BaseEvaluator;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
import org.drools.rule.VariableRestriction.LongVariableContextEntry;
import org.drools.rule.VariableRestriction.VariableContextEntry;
import org.drools.spi.Evaluator;
@@ -76,51 +77,51 @@
Operator.EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if ( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if ( extractor.isNullValue( workingMemory, object1 ) ) {
return object2.isNull();
} else if ( object2.isNull() ) {
return false;
}
- return extractor.getByteValue( object1 ) == object2.getByteValue();
+ return extractor.getByteValue( workingMemory, object1 ) == object2.getByteValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- if ( context.declaration.getExtractor().isNullValue( left ) ) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ if ( context.declaration.getExtractor().isNullValue( workingMemory, left ) ) {
return context.isRightNull();
} else if ( context.isRightNull() ) {
return false;
}
- return context.declaration.getExtractor().getByteValue( left ) == ((LongVariableContextEntry) context).right;
+ return context.declaration.getExtractor().getByteValue( workingMemory, left ) == ((LongVariableContextEntry) context).right;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if ( context.extractor.isNullValue( right )) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if ( context.extractor.isNullValue( workingMemory, right )) {
return context.isLeftNull();
} else if ( context.isLeftNull() ) {
return false;
}
- return ((LongVariableContextEntry) context).left == context.extractor.getByteValue( right );
+ return ((LongVariableContextEntry) context).left == context.extractor.getByteValue( workingMemory, right );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if (extractor1.isNullValue( object1 )) {
- return extractor2.isNullValue( object2 );
- } else if (extractor2.isNullValue( object2 )) {
+ final Extractor extractor2, final Object object2) {
+ if (extractor1.isNullValue( workingMemory, object1 )) {
+ return extractor2.isNullValue( workingMemory, object2 );
+ } else if (extractor2.isNullValue( workingMemory, object2 )) {
return false;
}
- return extractor1.getByteValue( object1 ) == extractor2.getByteValue( object2 );
+ return extractor1.getByteValue( workingMemory, object1 ) == extractor2.getByteValue( workingMemory, object2 );
}
public String toString() {
@@ -141,51 +142,51 @@
Operator.NOT_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if ( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if ( extractor.isNullValue( workingMemory, object1 ) ) {
return !object2.isNull();
} else if ( object2.isNull() ) {
return true;
}
- return extractor.getByteValue( object1 ) != object2.getByteValue();
+ return extractor.getByteValue( workingMemory, object1 ) != object2.getByteValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- if ( context.declaration.getExtractor().isNullValue( left ) ) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ if ( context.declaration.getExtractor().isNullValue( workingMemory, left ) ) {
return !context.isRightNull();
} else if ( context.isRightNull() ) {
return true;
}
- return context.declaration.getExtractor().getByteValue( left ) != ((LongVariableContextEntry) context).right;
+ return context.declaration.getExtractor().getByteValue( workingMemory, left ) != ((LongVariableContextEntry) context).right;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object object2) {
- if ( context.extractor.isNullValue( object2 ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object object2) {
+ if ( context.extractor.isNullValue( workingMemory, object2 ) ) {
return !context.isLeftNull();
} else if ( context.isLeftNull() ) {
return true;
}
- return ((LongVariableContextEntry) context).left != context.extractor.getByteValue( object2 );
+ return ((LongVariableContextEntry) context).left != context.extractor.getByteValue( workingMemory, object2 );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if (extractor1.isNullValue( object1 )) {
- return !extractor2.isNullValue( object2 );
- } else if (extractor2.isNullValue( object2 )) {
+ final Extractor extractor2, final Object object2) {
+ if (extractor1.isNullValue( workingMemory, object1 )) {
+ return !extractor2.isNullValue( workingMemory, object2 );
+ } else if (extractor2.isNullValue( workingMemory, object2 )) {
return true;
}
- return extractor1.getByteValue( object1 ) != extractor2.getByteValue( object2 );
+ return extractor1.getByteValue( workingMemory, object1 ) != extractor2.getByteValue( workingMemory, object2 );
}
public String toString() {
@@ -205,39 +206,39 @@
Operator.LESS );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor.getByteValue( object1 ) < object2.getByteValue();
+ return extractor.getByteValue( workingMemory, object1 ) < object2.getByteValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
- return ((LongVariableContextEntry) context).right < context.declaration.getExtractor().getByteValue( left );
+ return ((LongVariableContextEntry) context).right < context.declaration.getExtractor().getByteValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- return context.extractor.getByteValue( right ) < ((LongVariableContextEntry) context).left;
+ return context.extractor.getByteValue( workingMemory, right ) < ((LongVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor1.getByteValue( object1 ) < extractor2.getByteValue( object2 );
+ return extractor1.getByteValue( workingMemory, object1 ) < extractor2.getByteValue( workingMemory, object2 );
}
public String toString() {
@@ -257,39 +258,39 @@
Operator.LESS_OR_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor.getByteValue( object1 ) <= object2.getByteValue();
+ return extractor.getByteValue( workingMemory, object1 ) <= object2.getByteValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
- return ((LongVariableContextEntry) context).right <= context.declaration.getExtractor().getByteValue( left );
+ return ((LongVariableContextEntry) context).right <= context.declaration.getExtractor().getByteValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- return context.extractor.getByteValue( right ) <= ((LongVariableContextEntry) context).left;
+ return context.extractor.getByteValue( workingMemory, right ) <= ((LongVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor1.getByteValue( object1 ) <= extractor2.getByteValue( object2 );
+ return extractor1.getByteValue( workingMemory, object1 ) <= extractor2.getByteValue( workingMemory, object2 );
}
public String toString() {
@@ -309,39 +310,39 @@
Operator.GREATER );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor.getByteValue( object1 ) > object2.getByteValue();
+ return extractor.getByteValue( workingMemory, object1 ) > object2.getByteValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
- return ((LongVariableContextEntry) context).right > context.declaration.getExtractor().getByteValue( left );
+ return ((LongVariableContextEntry) context).right > context.declaration.getExtractor().getByteValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- return context.extractor.getByteValue( right ) > ((LongVariableContextEntry) context).left;
+ return context.extractor.getByteValue( workingMemory, right ) > ((LongVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor1.getByteValue( object1 ) > extractor2.getByteValue( object2 );
+ return extractor1.getByteValue( workingMemory, object1 ) > extractor2.getByteValue( workingMemory, object2 );
}
public String toString() {
@@ -361,39 +362,39 @@
Operator.GREATER_OR_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor.getByteValue( object1 ) >= object2.getByteValue();
+ return extractor.getByteValue( workingMemory, object1 ) >= object2.getByteValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
- return ((LongVariableContextEntry) context).right >= context.declaration.getExtractor().getByteValue( left );
+ return ((LongVariableContextEntry) context).right >= context.declaration.getExtractor().getByteValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- return context.extractor.getByteValue( right ) >= ((LongVariableContextEntry) context).left;
+ return context.extractor.getByteValue( workingMemory, right ) >= ((LongVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor1.getByteValue( object1 ) >= extractor2.getByteValue( object2 );
+ return extractor1.getByteValue( workingMemory, object1 ) >= extractor2.getByteValue( workingMemory, object2 );
}
public String toString() {
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/CharacterFactory.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/CharacterFactory.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/CharacterFactory.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -18,6 +18,7 @@
import org.drools.base.BaseEvaluator;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
import org.drools.rule.VariableRestriction.LongVariableContextEntry;
import org.drools.rule.VariableRestriction.VariableContextEntry;
import org.drools.spi.Evaluator;
@@ -76,51 +77,51 @@
Operator.EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if ( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if ( extractor.isNullValue( workingMemory, object1 ) ) {
return object2.isNull();
} else if ( object2.isNull() ) {
return false;
}
- return extractor.getCharValue( object1 ) == object2.getCharValue();
+ return extractor.getCharValue( workingMemory, object1 ) == object2.getCharValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- if ( context.declaration.getExtractor().isNullValue( left ) ) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ if ( context.declaration.getExtractor().isNullValue( workingMemory, left ) ) {
return context.isRightNull();
} else if ( context.isRightNull() ) {
return false;
}
- return context.declaration.getExtractor().getCharValue( left ) == ((LongVariableContextEntry) context).right;
+ return context.declaration.getExtractor().getCharValue( workingMemory, left ) == ((LongVariableContextEntry) context).right;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if ( context.extractor.isNullValue( right )) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if ( context.extractor.isNullValue( workingMemory, right )) {
return context.isLeftNull();
} else if ( context.isLeftNull() ) {
return false;
}
- return ((LongVariableContextEntry) context).left == context.extractor.getCharValue( right );
+ return ((LongVariableContextEntry) context).left == context.extractor.getCharValue( workingMemory, right );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if (extractor1.isNullValue( object1 )) {
- return extractor2.isNullValue( object2 );
- } else if (extractor2.isNullValue( object2 )) {
+ final Extractor extractor2, final Object object2) {
+ if (extractor1.isNullValue( workingMemory, object1 )) {
+ return extractor2.isNullValue( workingMemory, object2 );
+ } else if (extractor2.isNullValue( workingMemory, object2 )) {
return false;
}
- return extractor1.getCharValue( object1 ) == extractor2.getCharValue( object2 );
+ return extractor1.getCharValue( workingMemory, object1 ) == extractor2.getCharValue( workingMemory, object2 );
}
public String toString() {
@@ -140,51 +141,51 @@
Operator.NOT_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if ( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if ( extractor.isNullValue( workingMemory, object1 ) ) {
return !object2.isNull();
} else if ( object2.isNull() ) {
return true;
}
- return extractor.getCharValue( object1 ) != object2.getCharValue();
+ return extractor.getCharValue( workingMemory, object1 ) != object2.getCharValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- if ( context.declaration.getExtractor().isNullValue( left ) ) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ if ( context.declaration.getExtractor().isNullValue( workingMemory, left ) ) {
return !context.isRightNull();
} else if ( context.isRightNull() ) {
return true;
}
- return context.declaration.getExtractor().getCharValue( left ) != ((LongVariableContextEntry) context).right;
+ return context.declaration.getExtractor().getCharValue( workingMemory, left ) != ((LongVariableContextEntry) context).right;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if ( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if ( context.extractor.isNullValue( workingMemory, right ) ) {
return !context.isLeftNull();
} else if ( context.isLeftNull() ) {
return true;
}
- return ((LongVariableContextEntry) context).left != context.extractor.getCharValue( right );
+ return ((LongVariableContextEntry) context).left != context.extractor.getCharValue( workingMemory, right );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if (extractor1.isNullValue( object1 )) {
- return !extractor2.isNullValue( object2 );
- } else if (extractor2.isNullValue( object2 )) {
+ final Extractor extractor2, final Object object2) {
+ if (extractor1.isNullValue( workingMemory, object1 )) {
+ return !extractor2.isNullValue( workingMemory, object2 );
+ } else if (extractor2.isNullValue( workingMemory, object2 )) {
return true;
}
- return extractor1.getCharValue( object1 ) != extractor2.getCharValue( object2 );
+ return extractor1.getCharValue( workingMemory, object1 ) != extractor2.getCharValue( workingMemory, object2 );
}
public String toString() {
@@ -204,39 +205,39 @@
Operator.LESS );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor.getCharValue( object1 ) < object2.getCharValue();
+ return extractor.getCharValue( workingMemory, object1 ) < object2.getCharValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
- return ((LongVariableContextEntry) context).right < context.declaration.getExtractor().getCharValue( left );
+ return ((LongVariableContextEntry) context).right < context.declaration.getExtractor().getCharValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- return context.extractor.getCharValue( right ) < ((LongVariableContextEntry) context).left;
+ return context.extractor.getCharValue( workingMemory, right ) < ((LongVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor1.getCharValue( object1 ) < extractor2.getCharValue( object2 );
+ return extractor1.getCharValue( workingMemory, object1 ) < extractor2.getCharValue( workingMemory, object2 );
}
public String toString() {
@@ -256,39 +257,39 @@
Operator.LESS_OR_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor.getCharValue( object1 ) <= object2.getCharValue();
+ return extractor.getCharValue( workingMemory, object1 ) <= object2.getCharValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
- return ((LongVariableContextEntry) context).right <= context.declaration.getExtractor().getCharValue( left );
+ return ((LongVariableContextEntry) context).right <= context.declaration.getExtractor().getCharValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- return context.extractor.getCharValue( right ) <= ((LongVariableContextEntry) context).left;
+ return context.extractor.getCharValue( workingMemory, right ) <= ((LongVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor1.getCharValue( object1 ) <= extractor2.getCharValue( object2 );
+ return extractor1.getCharValue( workingMemory, object1 ) <= extractor2.getCharValue( workingMemory, object2 );
}
public String toString() {
@@ -308,39 +309,39 @@
Operator.GREATER );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor.getCharValue( object1 ) > object2.getCharValue();
+ return extractor.getCharValue( workingMemory, object1 ) > object2.getCharValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
- return ((LongVariableContextEntry) context).right > context.declaration.getExtractor().getCharValue( left );
+ return ((LongVariableContextEntry) context).right > context.declaration.getExtractor().getCharValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- return context.extractor.getCharValue( right ) > ((LongVariableContextEntry) context).left;
+ return context.extractor.getCharValue( workingMemory, right ) > ((LongVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor1.getCharValue( object1 ) > extractor2.getCharValue( object2 );
+ return extractor1.getCharValue( workingMemory, object1 ) > extractor2.getCharValue( workingMemory, object2 );
}
public String toString() {
@@ -360,39 +361,39 @@
Operator.GREATER_OR_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor.getCharValue( object1 ) >= object2.getCharValue();
+ return extractor.getCharValue( workingMemory, object1 ) >= object2.getCharValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
- return ((LongVariableContextEntry) context).right >= context.declaration.getExtractor().getCharValue( left );
+ return ((LongVariableContextEntry) context).right >= context.declaration.getExtractor().getCharValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- return context.extractor.getCharValue( right ) >= ((LongVariableContextEntry) context).left;
+ return context.extractor.getCharValue( workingMemory, right ) >= ((LongVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor1.getCharValue( object1 ) >= extractor2.getCharValue( object2 );
+ return extractor1.getCharValue( workingMemory, object1 ) >= extractor2.getCharValue( workingMemory, object2 );
}
public String toString() {
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/DateFactory.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/DateFactory.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/DateFactory.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -22,6 +22,7 @@
import org.drools.base.BaseEvaluator;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
import org.drools.rule.VariableRestriction.ObjectVariableContextEntry;
import org.drools.rule.VariableRestriction.VariableContextEntry;
import org.drools.spi.Evaluator;
@@ -96,10 +97,10 @@
Operator.EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- final Date value1 = (Date) extractor.getValue( object1 );
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ final Date value1 = (Date) extractor.getValue( workingMemory, object1 );
final Object value2 = object2.getValue();
if ( value1 == null ) {
return value2 == null;
@@ -110,9 +111,9 @@
return value1.compareTo( getRightDate( value2 ) ) == 0;
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- final Date value1 = (Date) context.declaration.getExtractor().getValue( left );
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ final Date value1 = (Date) context.declaration.getExtractor().getValue( workingMemory, left );
final Object value2 = ((ObjectVariableContextEntry) context).right;
if ( value1 == null ) {
return value2 == null;
@@ -123,10 +124,10 @@
return value1.compareTo( getRightDate( value2 ) ) == 0;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
final Date value1 = (Date) ((ObjectVariableContextEntry) context).left;
- final Object value2 = context.extractor.getValue( right );
+ final Object value2 = context.extractor.getValue( workingMemory, right );
if ( value1 == null ) {
return value2 == null;
}
@@ -136,12 +137,12 @@
return value1.compareTo( getRightDate( value2 ) ) == 0;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- final Date value1 = (Date) extractor1.getValue( object1 );
- final Date value2 = (Date) extractor2.getValue( object2 );
+ final Extractor extractor2, final Object object2) {
+ final Date value1 = (Date) extractor1.getValue( workingMemory, object1 );
+ final Date value2 = (Date) extractor2.getValue( workingMemory, object2 );
if ( value1 == null ) {
return value2 == null;
}
@@ -169,10 +170,10 @@
Operator.NOT_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- final Date value1 = (Date) extractor.getValue( object1 );
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ final Date value1 = (Date) extractor.getValue( workingMemory, object1 );
final Object value2 = object2.getValue();
if ( value1 == null ) {
return value2 != null;
@@ -183,9 +184,9 @@
return value1.compareTo( getRightDate( value2 ) ) != 0;
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- final Date value1 = (Date) context.declaration.getExtractor().getValue( left );
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ final Date value1 = (Date) context.declaration.getExtractor().getValue( workingMemory, left );
final Object value2 = ((ObjectVariableContextEntry) context).right;
if ( value1 == null ) {
return value2 != null;
@@ -196,10 +197,10 @@
return value1.compareTo( getRightDate( value2 ) ) != 0;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
final Date value1 = (Date) ((ObjectVariableContextEntry) context).left;
- final Object value2 = context.extractor.getValue( right );
+ final Object value2 = context.extractor.getValue( workingMemory, right );
if ( value1 == null ) {
return value2 != null;
}
@@ -209,12 +210,12 @@
return value1.compareTo( getRightDate( value2 ) ) != 0;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- final Date value1 = (Date) extractor1.getValue( object1 );
- final Date value2 = (Date) extractor2.getValue( object2 );
+ final Extractor extractor2, final Object object2) {
+ final Date value1 = (Date) extractor1.getValue( workingMemory, object1 );
+ final Date value2 = (Date) extractor2.getValue( workingMemory, object2 );
if ( value1 == null ) {
return value2 != null;
}
@@ -241,46 +242,46 @@
Operator.LESS );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final Date value1 = (Date) extractor.getValue( object1 );
+ final Date value1 = (Date) extractor.getValue( workingMemory, object1 );
final Object value2 = object2.getValue();
return value1.compareTo( getRightDate( value2 ) ) < 0;
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
- final Date value1 = (Date) context.declaration.getExtractor().getValue( left );
+ final Date value1 = (Date) context.declaration.getExtractor().getValue( workingMemory, left );
final Object value2 = ((ObjectVariableContextEntry) context).right;
return getRightDate( value2 ).compareTo( value1 ) < 0;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
final Date value1 = (Date) ((ObjectVariableContextEntry) context).left;
- final Object value2 = context.extractor.getValue( right );
+ final Object value2 = context.extractor.getValue( workingMemory, right );
return getRightDate( value2 ).compareTo( value1 ) < 0;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final Date value1 = (Date) extractor1.getValue( object1 );
- final Date value2 = (Date) extractor2.getValue( object2 );
+ final Date value1 = (Date) extractor1.getValue( workingMemory, object1 );
+ final Date value2 = (Date) extractor2.getValue( workingMemory, object2 );
return value1.compareTo( value2 ) < 0;
}
@@ -301,46 +302,46 @@
Operator.LESS_OR_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final Date value1 = (Date) extractor.getValue( object1 );
+ final Date value1 = (Date) extractor.getValue( workingMemory, object1 );
final Object value2 = object2.getValue();
return value1.compareTo( getRightDate( value2 ) ) <= 0;
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
- final Date value1 = (Date) context.declaration.getExtractor().getValue( left );
+ final Date value1 = (Date) context.declaration.getExtractor().getValue( workingMemory, left );
final Object value2 = ((ObjectVariableContextEntry) context).right;
return getRightDate( value2 ).compareTo( value1 ) <= 0;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
final Date value1 = (Date) ((ObjectVariableContextEntry) context).left;
- final Object value2 = context.extractor.getValue( right );
+ final Object value2 = context.extractor.getValue( workingMemory, right );
return getRightDate( value2 ).compareTo( value1 ) <= 0;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final Date value1 = (Date) extractor1.getValue( object1 );
- final Date value2 = (Date) extractor2.getValue( object2 );
+ final Date value1 = (Date) extractor1.getValue( workingMemory, object1 );
+ final Date value2 = (Date) extractor2.getValue( workingMemory, object2 );
return value1.compareTo( value2 ) <= 0;
}
@@ -361,46 +362,46 @@
Operator.GREATER );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final Date value1 = (Date) extractor.getValue( object1 );
+ final Date value1 = (Date) extractor.getValue( workingMemory, object1 );
final Object value2 = object2.getValue();
return value1.compareTo( getRightDate( value2 ) ) > 0;
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
- final Date value1 = (Date) context.declaration.getExtractor().getValue( left );
+ final Date value1 = (Date) context.declaration.getExtractor().getValue( workingMemory, left );
final Object value2 = ((ObjectVariableContextEntry) context).right;
return getRightDate( value2 ).compareTo( value1 ) > 0;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
final Date value1 = (Date) ((ObjectVariableContextEntry) context).left;
- final Object value2 = context.extractor.getValue( right );
+ final Object value2 = context.extractor.getValue( workingMemory, right );
return getRightDate( value2 ).compareTo( value1 ) > 0;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final Date value1 = (Date) extractor1.getValue( object1 );
- final Date value2 = (Date) extractor2.getValue( object2 );
+ final Date value1 = (Date) extractor1.getValue( workingMemory, object1 );
+ final Date value2 = (Date) extractor2.getValue( workingMemory, object2 );
return value1.compareTo( value2 ) > 0;
}
@@ -421,46 +422,46 @@
Operator.GREATER_OR_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final Date value1 = (Date) extractor.getValue( object1 );
+ final Date value1 = (Date) extractor.getValue( workingMemory, object1 );
final Object value2 = object2.getValue();
return value1.compareTo( getRightDate( value2 ) ) >= 0;
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
- final Date value1 = (Date) context.declaration.getExtractor().getValue( left );
+ final Date value1 = (Date) context.declaration.getExtractor().getValue( workingMemory, left );
final Object value2 = ((ObjectVariableContextEntry) context).right;
return getRightDate( value2 ).compareTo( value1 ) >= 0;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
final Date value1 = (Date) ((ObjectVariableContextEntry) context).left;
- final Object value2 = context.extractor.getValue( right );
+ final Object value2 = context.extractor.getValue( workingMemory, right );
return getRightDate( value2 ).compareTo( value1 ) >= 0;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final Date value1 = (Date) extractor1.getValue( object1 );
- final Date value2 = (Date) extractor2.getValue( object2 );
+ final Date value1 = (Date) extractor1.getValue( workingMemory, object1 );
+ final Date value2 = (Date) extractor2.getValue( workingMemory, object2 );
return value1.compareTo( value2 ) >= 0;
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/DoubleFactory.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/DoubleFactory.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/DoubleFactory.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -18,6 +18,7 @@
import org.drools.base.BaseEvaluator;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
import org.drools.rule.VariableRestriction.DoubleVariableContextEntry;
import org.drools.rule.VariableRestriction.VariableContextEntry;
import org.drools.spi.Evaluator;
@@ -76,53 +77,53 @@
Operator.EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if ( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if ( extractor.isNullValue( workingMemory, object1 ) ) {
return object2.isNull();
} else if ( object2.isNull() ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return extractor.getDoubleValue( object1 ) == object2.getDoubleValue();
+ return extractor.getDoubleValue( workingMemory, object1 ) == object2.getDoubleValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- if ( context.declaration.getExtractor().isNullValue( left ) ) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ if ( context.declaration.getExtractor().isNullValue( workingMemory, left ) ) {
return context.isRightNull();
} else if ( context.isRightNull() ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return context.declaration.getExtractor().getDoubleValue( left ) == ((DoubleVariableContextEntry) context).right;
+ return context.declaration.getExtractor().getDoubleValue( workingMemory, left ) == ((DoubleVariableContextEntry) context).right;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if ( context.extractor.isNullValue( right )) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if ( context.extractor.isNullValue( workingMemory, right )) {
return context.isLeftNull();
} else if ( context.isLeftNull() ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return ((DoubleVariableContextEntry) context).left == context.extractor.getDoubleValue( right );
+ return ((DoubleVariableContextEntry) context).left == context.extractor.getDoubleValue( workingMemory, right );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if (extractor1.isNullValue( object1 )) {
- return extractor2.isNullValue( object2 );
- } else if (extractor2.isNullValue( object2 )) {
+ final Extractor extractor2, final Object object2) {
+ if (extractor1.isNullValue( workingMemory, object1 )) {
+ return extractor2.isNullValue( workingMemory, object2 );
+ } else if (extractor2.isNullValue( workingMemory, object2 )) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return extractor1.getDoubleValue( object1 ) == extractor2.getDoubleValue( object2 );
+ return extractor1.getDoubleValue( workingMemory, object1 ) == extractor2.getDoubleValue( workingMemory, object2 );
}
public String toString() {
@@ -142,55 +143,55 @@
Operator.NOT_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if ( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if ( extractor.isNullValue( workingMemory, object1 ) ) {
return !object2.isNull();
} else if ( object2.isNull() ) {
return true;
}
// TODO: we are not handling delta right now... maybe we should
- return extractor.getDoubleValue( object1 ) != object2.getDoubleValue();
+ return extractor.getDoubleValue( workingMemory, object1 ) != object2.getDoubleValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- if ( context.declaration.getExtractor().isNullValue( left ) ) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ if ( context.declaration.getExtractor().isNullValue( workingMemory, left ) ) {
return !context.isRightNull();
} else if ( context.isRightNull() ) {
return true;
}
// TODO: we are not handling delta right now... maybe we should
- return context.declaration.getExtractor().getDoubleValue( left ) != ((DoubleVariableContextEntry) context).right;
+ return context.declaration.getExtractor().getDoubleValue( workingMemory, left ) != ((DoubleVariableContextEntry) context).right;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if ( context.extractor.isNullValue( right )) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if ( context.extractor.isNullValue( workingMemory, right )) {
return !context.isLeftNull();
} else if ( context.isLeftNull() ) {
return true;
}
// TODO: we are not handling delta right now... maybe we should
- return ((DoubleVariableContextEntry) context).left != context.extractor.getDoubleValue( right );
+ return ((DoubleVariableContextEntry) context).left != context.extractor.getDoubleValue( workingMemory, right );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if (extractor1.isNullValue( object1 )) {
- return !extractor2.isNullValue( object2 );
- } else if (extractor2.isNullValue( object2 )) {
+ final Extractor extractor2, final Object object2) {
+ if (extractor1.isNullValue( workingMemory, object1 )) {
+ return !extractor2.isNullValue( workingMemory, object2 );
+ } else if (extractor2.isNullValue( workingMemory, object2 )) {
return true;
}
// TODO: we are not handling delta right now... maybe we should
- return extractor1.getDoubleValue( object1 ) != extractor2.getDoubleValue( object2 );
+ return extractor1.getDoubleValue( workingMemory, object1 ) != extractor2.getDoubleValue( workingMemory, object2 );
}
public String toString() {
@@ -210,43 +211,43 @@
Operator.LESS );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return extractor.getDoubleValue( object1 ) < object2.getDoubleValue();
+ return extractor.getDoubleValue( workingMemory, object1 ) < object2.getDoubleValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return ((DoubleVariableContextEntry) context).right < context.declaration.getExtractor().getDoubleValue( left );
+ return ((DoubleVariableContextEntry) context).right < context.declaration.getExtractor().getDoubleValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return context.extractor.getDoubleValue( right ) < ((DoubleVariableContextEntry) context).left;
+ return context.extractor.getDoubleValue( workingMemory, right ) < ((DoubleVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return extractor1.getDoubleValue( object1 ) < extractor2.getDoubleValue( object2 );
+ return extractor1.getDoubleValue( workingMemory, object1 ) < extractor2.getDoubleValue( workingMemory, object2 );
}
public String toString() {
@@ -266,43 +267,43 @@
Operator.LESS_OR_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return extractor.getDoubleValue( object1 ) <= object2.getDoubleValue();
+ return extractor.getDoubleValue( workingMemory, object1 ) <= object2.getDoubleValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return ((DoubleVariableContextEntry) context).right <= context.declaration.getExtractor().getDoubleValue( left );
+ return ((DoubleVariableContextEntry) context).right <= context.declaration.getExtractor().getDoubleValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return context.extractor.getDoubleValue( right ) <= ((DoubleVariableContextEntry) context).left;
+ return context.extractor.getDoubleValue( workingMemory, right ) <= ((DoubleVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return extractor1.getDoubleValue( object1 ) <= extractor2.getDoubleValue( object2 );
+ return extractor1.getDoubleValue( workingMemory, object1 ) <= extractor2.getDoubleValue( workingMemory, object2 );
}
public String toString() {
@@ -322,43 +323,43 @@
Operator.GREATER );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return extractor.getDoubleValue( object1 ) > object2.getDoubleValue();
+ return extractor.getDoubleValue( workingMemory, object1 ) > object2.getDoubleValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return ((DoubleVariableContextEntry) context).right > context.declaration.getExtractor().getDoubleValue( left );
+ return ((DoubleVariableContextEntry) context).right > context.declaration.getExtractor().getDoubleValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return context.extractor.getDoubleValue( right ) > ((DoubleVariableContextEntry) context).left;
+ return context.extractor.getDoubleValue( workingMemory, right ) > ((DoubleVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return extractor1.getDoubleValue( object1 ) > extractor2.getDoubleValue( object2 );
+ return extractor1.getDoubleValue( workingMemory, object1 ) > extractor2.getDoubleValue( workingMemory, object2 );
}
public String toString() {
@@ -378,43 +379,43 @@
Operator.GREATER_OR_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return extractor.getDoubleValue( object1 ) >= object2.getDoubleValue();
+ return extractor.getDoubleValue( workingMemory, object1 ) >= object2.getDoubleValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return ((DoubleVariableContextEntry) context).right >= context.declaration.getExtractor().getDoubleValue( left );
+ return ((DoubleVariableContextEntry) context).right >= context.declaration.getExtractor().getDoubleValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return context.extractor.getDoubleValue( right ) >= ((DoubleVariableContextEntry) context).left;
+ return context.extractor.getDoubleValue( workingMemory, right ) >= ((DoubleVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return extractor1.getDoubleValue( object1 ) >= extractor2.getDoubleValue( object2 );
+ return extractor1.getDoubleValue( workingMemory, object1 ) >= extractor2.getDoubleValue( workingMemory, object2 );
}
public String toString() {
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/FactTemplateFactory.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/FactTemplateFactory.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/FactTemplateFactory.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -18,6 +18,7 @@
import org.drools.base.BaseEvaluator;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
import org.drools.rule.VariableRestriction.ObjectVariableContextEntry;
import org.drools.rule.VariableRestriction.VariableContextEntry;
import org.drools.spi.Evaluator;
@@ -71,10 +72,10 @@
Operator.EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- final Object value1 = extractor.getValue( object1 );
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ final Object value1 = extractor.getValue( workingMemory, object1 );
final Object value2 = object2.getValue();
if ( value1 == null ) {
return value2 == null;
@@ -82,30 +83,30 @@
return value1.equals( value2 );
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- final Object value = context.declaration.getExtractor().getValue( left );
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ final Object value = context.declaration.getExtractor().getValue( workingMemory, left );
if ( value == null ) {
return ((ObjectVariableContextEntry) context).right == null;
}
return value.equals( ((ObjectVariableContextEntry) context).right );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- final Object value = context.extractor.getValue( right );
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ final Object value = context.extractor.getValue( workingMemory, right );
if ( ((ObjectVariableContextEntry) context).left == null ) {
return value == null;
}
return ((ObjectVariableContextEntry) context).left.equals( value );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- final Object value1 = extractor1.getValue( object1 );
- final Object value2 = extractor2.getValue( object2 );
+ final Extractor extractor2, final Object object2) {
+ final Object value1 = extractor1.getValue( workingMemory, object1 );
+ final Object value2 = extractor2.getValue( workingMemory, object2 );
if ( value1 == null ) {
return value2 == null;
}
@@ -130,10 +131,10 @@
Operator.NOT_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- final Object value1 = extractor.getValue( object1 );
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ final Object value1 = extractor.getValue( workingMemory, object1 );
final Object value2 = object2.getValue();
if ( value1 == null ) {
return value2 != null;
@@ -141,30 +142,30 @@
return !value1.equals( value2 );
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- final Object value = context.declaration.getExtractor().getValue( left );
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ final Object value = context.declaration.getExtractor().getValue( workingMemory, left );
if ( value == null ) {
return ((ObjectVariableContextEntry) context).right != null;
}
return !value.equals( ((ObjectVariableContextEntry) context).right );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- final Object value = context.extractor.getValue( right );
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ final Object value = context.extractor.getValue( workingMemory, right );
if ( ((ObjectVariableContextEntry) context).left == null ) {
return value != null;
}
return !((ObjectVariableContextEntry) context).left.equals( value );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- final Object value1 = extractor1.getValue( object1 );
- final Object value2 = extractor2.getValue( object2 );
+ final Extractor extractor2, final Object object2) {
+ final Object value1 = extractor1.getValue( workingMemory, object1 );
+ final Object value2 = extractor2.getValue( workingMemory, object2 );
if ( value1 == null ) {
return value2 != null;
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/FloatFactory.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/FloatFactory.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/FloatFactory.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -18,6 +18,7 @@
import org.drools.base.BaseEvaluator;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
import org.drools.rule.VariableRestriction.DoubleVariableContextEntry;
import org.drools.rule.VariableRestriction.VariableContextEntry;
import org.drools.spi.Evaluator;
@@ -74,55 +75,55 @@
Operator.EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if ( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if ( extractor.isNullValue( workingMemory, object1 ) ) {
return object2.isNull();
} else if ( object2.isNull() ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return extractor.getFloatValue( object1 ) == object2.getFloatValue();
+ return extractor.getFloatValue( workingMemory, object1 ) == object2.getFloatValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- if ( context.declaration.getExtractor().isNullValue( left ) ) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ if ( context.declaration.getExtractor().isNullValue( workingMemory, left ) ) {
return context.isRightNull();
} else if ( context.isRightNull() ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return context.declaration.getExtractor().getFloatValue( left ) == ((DoubleVariableContextEntry) context).right;
+ return context.declaration.getExtractor().getFloatValue( workingMemory, left ) == ((DoubleVariableContextEntry) context).right;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if ( context.extractor.isNullValue( right )) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if ( context.extractor.isNullValue( workingMemory, right )) {
return context.isLeftNull();
} else if ( context.isLeftNull() ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return ((DoubleVariableContextEntry) context).left == context.extractor.getFloatValue( right );
+ return ((DoubleVariableContextEntry) context).left == context.extractor.getFloatValue( workingMemory, right );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if (extractor1.isNullValue( object1 )) {
- return extractor2.isNullValue( object2 );
- } else if (extractor2.isNullValue( object2 )) {
+ final Extractor extractor2, final Object object2) {
+ if (extractor1.isNullValue( workingMemory, object1 )) {
+ return extractor2.isNullValue( workingMemory, object2 );
+ } else if (extractor2.isNullValue( workingMemory, object2 )) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return extractor1.getFloatValue( object1 ) == extractor2.getFloatValue( object2 );
+ return extractor1.getFloatValue( workingMemory, object1 ) == extractor2.getFloatValue( workingMemory, object2 );
}
public String toString() {
@@ -142,55 +143,55 @@
Operator.NOT_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if ( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if ( extractor.isNullValue( workingMemory, object1 ) ) {
return !object2.isNull();
} else if ( object2.isNull() ) {
return true;
}
// TODO: we are not handling delta right now... maybe we should
- return extractor.getFloatValue( object1 ) != object2.getFloatValue();
+ return extractor.getFloatValue( workingMemory, object1 ) != object2.getFloatValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- if ( context.declaration.getExtractor().isNullValue( left ) ) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ if ( context.declaration.getExtractor().isNullValue( workingMemory, left ) ) {
return !context.isRightNull();
} else if ( context.isRightNull() ) {
return true;
}
// TODO: we are not handling delta right now... maybe we should
- return context.declaration.getExtractor().getFloatValue( left ) != ((DoubleVariableContextEntry) context).right;
+ return context.declaration.getExtractor().getFloatValue( workingMemory, left ) != ((DoubleVariableContextEntry) context).right;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if ( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if ( context.extractor.isNullValue( workingMemory, right ) ) {
return !context.isLeftNull();
} else if ( context.isLeftNull() ) {
return true;
}
// TODO: we are not handling delta right now... maybe we should
- return ((DoubleVariableContextEntry) context).left != context.extractor.getFloatValue( right );
+ return ((DoubleVariableContextEntry) context).left != context.extractor.getFloatValue( workingMemory, right );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if (extractor1.isNullValue( object1 )) {
- return !extractor2.isNullValue( object2 );
- } else if (extractor2.isNullValue( object2 )) {
+ final Extractor extractor2, final Object object2) {
+ if (extractor1.isNullValue( workingMemory, object1 )) {
+ return !extractor2.isNullValue( workingMemory, object2 );
+ } else if (extractor2.isNullValue( workingMemory, object2 )) {
return true;
}
// TODO: we are not handling delta right now... maybe we should
- return extractor1.getFloatValue( object1 ) != extractor2.getFloatValue( object2 );
+ return extractor1.getFloatValue( workingMemory, object1 ) != extractor2.getFloatValue( workingMemory, object2 );
}
public String toString() {
@@ -210,43 +211,43 @@
Operator.LESS );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return extractor.getFloatValue( object1 ) < object2.getFloatValue();
+ return extractor.getFloatValue( workingMemory, object1 ) < object2.getFloatValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return ((DoubleVariableContextEntry) context).right < context.declaration.getExtractor().getFloatValue( left );
+ return ((DoubleVariableContextEntry) context).right < context.declaration.getExtractor().getFloatValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return context.extractor.getFloatValue( right ) < ((DoubleVariableContextEntry) context).left;
+ return context.extractor.getFloatValue( workingMemory, right ) < ((DoubleVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return extractor1.getFloatValue( object1 ) < extractor2.getFloatValue( object2 );
+ return extractor1.getFloatValue( workingMemory, object1 ) < extractor2.getFloatValue( workingMemory, object2 );
}
public String toString() {
@@ -266,43 +267,43 @@
Operator.LESS_OR_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return extractor.getFloatValue( object1 ) <= object2.getFloatValue();
+ return extractor.getFloatValue( workingMemory, object1 ) <= object2.getFloatValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return ((DoubleVariableContextEntry) context).right <= context.declaration.getExtractor().getFloatValue( left );
+ return ((DoubleVariableContextEntry) context).right <= context.declaration.getExtractor().getFloatValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return context.extractor.getFloatValue( right ) <= ((DoubleVariableContextEntry) context).left;
+ return context.extractor.getFloatValue( workingMemory, right ) <= ((DoubleVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return extractor1.getFloatValue( object1 ) <= extractor2.getFloatValue( object2 );
+ return extractor1.getFloatValue( workingMemory, object1 ) <= extractor2.getFloatValue( workingMemory, object2 );
}
public String toString() {
@@ -322,43 +323,43 @@
Operator.GREATER );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return extractor.getFloatValue( object1 ) > object2.getFloatValue();
+ return extractor.getFloatValue( workingMemory, object1 ) > object2.getFloatValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return ((DoubleVariableContextEntry) context).right > context.declaration.getExtractor().getFloatValue( left );
+ return ((DoubleVariableContextEntry) context).right > context.declaration.getExtractor().getFloatValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return context.extractor.getFloatValue( right ) > ((DoubleVariableContextEntry) context).left;
+ return context.extractor.getFloatValue( workingMemory, right ) > ((DoubleVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return extractor1.getFloatValue( object1 ) > extractor2.getFloatValue( object2 );
+ return extractor1.getFloatValue( workingMemory, object1 ) > extractor2.getFloatValue( workingMemory, object2 );
}
public String toString() {
@@ -378,43 +379,43 @@
Operator.GREATER_OR_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return extractor.getFloatValue( object1 ) >= object2.getFloatValue();
+ return extractor.getFloatValue( workingMemory, object1 ) >= object2.getFloatValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return ((DoubleVariableContextEntry) context).right >= context.declaration.getExtractor().getFloatValue( left );
+ return ((DoubleVariableContextEntry) context).right >= context.declaration.getExtractor().getFloatValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return context.extractor.getFloatValue( right ) >= ((DoubleVariableContextEntry) context).left;
+ return context.extractor.getFloatValue( workingMemory, right ) >= ((DoubleVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
// TODO: we are not handling delta right now... maybe we should
- return extractor1.getFloatValue( object1 ) >= extractor2.getFloatValue( object2 );
+ return extractor1.getFloatValue( workingMemory, object1 ) >= extractor2.getFloatValue( workingMemory, object2 );
}
public String toString() {
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/IntegerFactory.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/IntegerFactory.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/IntegerFactory.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -18,6 +18,7 @@
import org.drools.base.BaseEvaluator;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
import org.drools.rule.VariableRestriction.LongVariableContextEntry;
import org.drools.rule.VariableRestriction.VariableContextEntry;
import org.drools.spi.Evaluator;
@@ -76,51 +77,51 @@
Operator.EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if ( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if ( extractor.isNullValue( workingMemory, object1 ) ) {
return object2.isNull();
} else if ( object2.isNull() ) {
return false;
}
- return extractor.getIntValue( object1 ) == object2.getIntValue();
+ return extractor.getIntValue( workingMemory, object1 ) == object2.getIntValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- if ( context.declaration.getExtractor().isNullValue( left ) ) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ if ( context.declaration.getExtractor().isNullValue( workingMemory, left ) ) {
return context.isRightNull();
} else if ( context.isRightNull() ) {
return false;
}
- return context.declaration.getExtractor().getIntValue( left ) == ((LongVariableContextEntry) context).right;
+ return context.declaration.getExtractor().getIntValue( workingMemory, left ) == ((LongVariableContextEntry) context).right;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object object2) {
- if ( context.extractor.isNullValue( object2 )) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object object2) {
+ if ( context.extractor.isNullValue( workingMemory, object2 )) {
return context.isLeftNull();
} else if ( context.isLeftNull() ) {
return false;
}
- return context.extractor.getIntValue( object2 ) == ((LongVariableContextEntry) context).left;
+ return context.extractor.getIntValue( workingMemory, object2 ) == ((LongVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if (extractor1.isNullValue( object1 )) {
- return extractor2.isNullValue( object2 );
- } else if (extractor2.isNullValue( object2 )) {
+ final Extractor extractor2, final Object object2) {
+ if (extractor1.isNullValue( workingMemory, object1 )) {
+ return extractor2.isNullValue( workingMemory, object2 );
+ } else if (extractor2.isNullValue( workingMemory, object2 )) {
return false;
}
- return extractor1.getIntValue( object1 ) == extractor2.getIntValue( object2 );
+ return extractor1.getIntValue( workingMemory, object1 ) == extractor2.getIntValue( workingMemory, object2 );
}
public String toString() {
@@ -141,51 +142,51 @@
Operator.NOT_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if ( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if ( extractor.isNullValue( workingMemory, object1 ) ) {
return !object2.isNull();
} else if ( object2.isNull() ) {
return true;
}
- return extractor.getIntValue( object1 ) != object2.getIntValue();
+ return extractor.getIntValue( workingMemory, object1 ) != object2.getIntValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- if ( context.declaration.getExtractor().isNullValue( left ) ) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ if ( context.declaration.getExtractor().isNullValue( workingMemory, left ) ) {
return !context.isRightNull();
} else if ( context.isRightNull() ) {
return true;
}
- return context.declaration.getExtractor().getIntValue( left ) != ((LongVariableContextEntry) context).right;
+ return context.declaration.getExtractor().getIntValue( workingMemory, left ) != ((LongVariableContextEntry) context).right;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object object2) {
- if ( context.extractor.isNullValue( object2 ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object object2) {
+ if ( context.extractor.isNullValue( workingMemory, object2 ) ) {
return !context.isLeftNull();
} else if ( context.isLeftNull() ) {
return true;
}
- return context.extractor.getIntValue( object2 ) != ((LongVariableContextEntry) context).left;
+ return context.extractor.getIntValue( workingMemory, object2 ) != ((LongVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if (extractor1.isNullValue( object1 )) {
- return !extractor2.isNullValue( object2 );
- } else if (extractor2.isNullValue( object2 )) {
+ final Extractor extractor2, final Object object2) {
+ if (extractor1.isNullValue( workingMemory, object1 )) {
+ return !extractor2.isNullValue( workingMemory, object2 );
+ } else if (extractor2.isNullValue( workingMemory, object2 )) {
return true;
}
- return extractor1.getIntValue( object1 ) != extractor2.getIntValue( object2 );
+ return extractor1.getIntValue( workingMemory, object1 ) != extractor2.getIntValue( workingMemory, object2 );
}
public String toString() {
@@ -205,39 +206,39 @@
Operator.LESS );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor.getIntValue( object1 ) < object2.getIntValue();
+ return extractor.getIntValue( workingMemory, object1 ) < object2.getIntValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
- return ((LongVariableContextEntry) context).right < context.declaration.getExtractor().getIntValue( left );
+ return ((LongVariableContextEntry) context).right < context.declaration.getExtractor().getIntValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- return context.extractor.getIntValue( right ) < ((LongVariableContextEntry) context).left;
+ return context.extractor.getIntValue( workingMemory, right ) < ((LongVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor1.getIntValue( object1 ) < extractor2.getIntValue( object2 );
+ return extractor1.getIntValue( workingMemory, object1 ) < extractor2.getIntValue( workingMemory, object2 );
}
public String toString() {
@@ -257,39 +258,39 @@
Operator.LESS_OR_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor.getIntValue( object1 ) <= object2.getIntValue();
+ return extractor.getIntValue( workingMemory, object1 ) <= object2.getIntValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
- return ((LongVariableContextEntry) context).right <= context.declaration.getExtractor().getIntValue( left );
+ return ((LongVariableContextEntry) context).right <= context.declaration.getExtractor().getIntValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- return context.extractor.getIntValue( right ) <= ((LongVariableContextEntry) context).left;
+ return context.extractor.getIntValue( workingMemory, right ) <= ((LongVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor1.getIntValue( object1 ) <= extractor2.getIntValue( object2 );
+ return extractor1.getIntValue( workingMemory, object1 ) <= extractor2.getIntValue( workingMemory, object2 );
}
public String toString() {
@@ -309,39 +310,39 @@
Operator.GREATER );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor.getIntValue( object1 ) > object2.getIntValue();
+ return extractor.getIntValue( workingMemory, object1 ) > object2.getIntValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
- return ((LongVariableContextEntry) context).right > context.declaration.getExtractor().getIntValue( left );
+ return ((LongVariableContextEntry) context).right > context.declaration.getExtractor().getIntValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- return context.extractor.getIntValue( right ) > ((LongVariableContextEntry) context).left;
+ return context.extractor.getIntValue( workingMemory, right ) > ((LongVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor1.getIntValue( object1 ) > extractor2.getIntValue( object2 );
+ return extractor1.getIntValue( workingMemory, object1 ) > extractor2.getIntValue( workingMemory, object2 );
}
public String toString() {
@@ -361,39 +362,39 @@
Operator.GREATER_OR_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor.getIntValue( object1 ) >= object2.getIntValue();
+ return extractor.getIntValue( workingMemory, object1 ) >= object2.getIntValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
- return ((LongVariableContextEntry) context).right >= context.declaration.getExtractor().getIntValue( left );
+ return ((LongVariableContextEntry) context).right >= context.declaration.getExtractor().getIntValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- return context.extractor.getIntValue( right ) >= ((LongVariableContextEntry) context).left;
+ return context.extractor.getIntValue( workingMemory, right ) >= ((LongVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor1.getIntValue( object1 ) >= extractor2.getIntValue( object2 );
+ return extractor1.getIntValue( workingMemory, object1 ) >= extractor2.getIntValue( workingMemory, object2 );
}
public String toString() {
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/LongFactory.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/LongFactory.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/LongFactory.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -18,6 +18,7 @@
import org.drools.base.BaseEvaluator;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
import org.drools.rule.VariableRestriction.LongVariableContextEntry;
import org.drools.rule.VariableRestriction.VariableContextEntry;
import org.drools.spi.Evaluator;
@@ -76,51 +77,51 @@
Operator.EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if ( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if ( extractor.isNullValue( workingMemory, object1 ) ) {
return object2.isNull();
} else if ( object2.isNull() ) {
return false;
}
- return extractor.getLongValue( object1 ) == object2.getLongValue();
+ return extractor.getLongValue( workingMemory, object1 ) == object2.getLongValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- if ( context.declaration.getExtractor().isNullValue( left ) ) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ if ( context.declaration.getExtractor().isNullValue( workingMemory, left ) ) {
return context.isRightNull();
} else if ( context.isRightNull() ) {
return false;
}
- return context.declaration.getExtractor().getLongValue( left ) == ((LongVariableContextEntry) context).right;
+ return context.declaration.getExtractor().getLongValue( workingMemory, left ) == ((LongVariableContextEntry) context).right;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if ( context.extractor.isNullValue( right )) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if ( context.extractor.isNullValue( workingMemory, right )) {
return context.isLeftNull();
} else if ( context.isLeftNull() ) {
return false;
}
- return ((LongVariableContextEntry) context).left == context.extractor.getLongValue( right );
+ return ((LongVariableContextEntry) context).left == context.extractor.getLongValue( workingMemory, right );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if (extractor1.isNullValue( object1 )) {
- return extractor2.isNullValue( object2 );
- } else if (extractor2.isNullValue( object2 )) {
+ final Extractor extractor2, final Object object2) {
+ if (extractor1.isNullValue( workingMemory, object1 )) {
+ return extractor2.isNullValue( workingMemory, object2 );
+ } else if (extractor2.isNullValue( workingMemory, object2 )) {
return false;
}
- return extractor1.getLongValue( object1 ) == extractor2.getLongValue( object2 );
+ return extractor1.getLongValue( workingMemory, object1 ) == extractor2.getLongValue( workingMemory, object2 );
}
public String toString() {
@@ -140,51 +141,51 @@
Operator.NOT_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if ( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if ( extractor.isNullValue( workingMemory, object1 ) ) {
return !object2.isNull();
} else if ( object2.isNull() ) {
return true;
}
- return extractor.getLongValue( object1 ) != object2.getLongValue();
+ return extractor.getLongValue( workingMemory, object1 ) != object2.getLongValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- if ( context.declaration.getExtractor().isNullValue( left ) ) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ if ( context.declaration.getExtractor().isNullValue( workingMemory, left ) ) {
return !context.isRightNull();
} else if ( context.isRightNull() ) {
return true;
}
- return context.declaration.getExtractor().getLongValue( left ) != ((LongVariableContextEntry) context).right;
+ return context.declaration.getExtractor().getLongValue( workingMemory, left ) != ((LongVariableContextEntry) context).right;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if ( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if ( context.extractor.isNullValue( workingMemory, right ) ) {
return !context.isLeftNull();
} else if ( context.isLeftNull() ) {
return true;
}
- return ((LongVariableContextEntry) context).left != context.extractor.getLongValue( right );
+ return ((LongVariableContextEntry) context).left != context.extractor.getLongValue( workingMemory, right );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if (extractor1.isNullValue( object1 )) {
- return !extractor2.isNullValue( object2 );
- } else if (extractor2.isNullValue( object2 )) {
+ final Extractor extractor2, final Object object2) {
+ if (extractor1.isNullValue( workingMemory, object1 )) {
+ return !extractor2.isNullValue( workingMemory, object2 );
+ } else if (extractor2.isNullValue( workingMemory, object2 )) {
return true;
}
- return extractor1.getLongValue( object1 ) != extractor2.getLongValue( object2 );
+ return extractor1.getLongValue( workingMemory, object1 ) != extractor2.getLongValue( workingMemory, object2 );
}
public String toString() {
@@ -204,39 +205,39 @@
Operator.LESS );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor.getLongValue( object1 ) < object2.getLongValue();
+ return extractor.getLongValue( workingMemory, object1 ) < object2.getLongValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
- return ((LongVariableContextEntry) context).right < context.declaration.getExtractor().getLongValue( left );
+ return ((LongVariableContextEntry) context).right < context.declaration.getExtractor().getLongValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- return context.extractor.getLongValue( right ) < ((LongVariableContextEntry) context).left;
+ return context.extractor.getLongValue( workingMemory, right ) < ((LongVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor1.getLongValue( object1 ) < extractor2.getLongValue( object2 );
+ return extractor1.getLongValue( workingMemory, object1 ) < extractor2.getLongValue( workingMemory, object2 );
}
public String toString() {
@@ -256,39 +257,39 @@
Operator.LESS_OR_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor.getLongValue( object1 ) <= object2.getLongValue();
+ return extractor.getLongValue( workingMemory, object1 ) <= object2.getLongValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
- return ((LongVariableContextEntry) context).right <= context.declaration.getExtractor().getLongValue( left );
+ return ((LongVariableContextEntry) context).right <= context.declaration.getExtractor().getLongValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- return context.extractor.getLongValue( right ) <= ((LongVariableContextEntry) context).left;
+ return context.extractor.getLongValue( workingMemory, right ) <= ((LongVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor1.getLongValue( object1 ) <= extractor2.getLongValue( object2 );
+ return extractor1.getLongValue( workingMemory, object1 ) <= extractor2.getLongValue( workingMemory, object2 );
}
public String toString() {
@@ -308,39 +309,39 @@
Operator.GREATER );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor.getLongValue( object1 ) > object2.getLongValue();
+ return extractor.getLongValue( workingMemory, object1 ) > object2.getLongValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
- return ((LongVariableContextEntry) context).right > context.declaration.getExtractor().getLongValue( left );
+ return ((LongVariableContextEntry) context).right > context.declaration.getExtractor().getLongValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- return context.extractor.getLongValue( right ) > ((LongVariableContextEntry) context).left;
+ return context.extractor.getLongValue( workingMemory, right ) > ((LongVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor1.getLongValue( object1 ) > extractor2.getLongValue( object2 );
+ return extractor1.getLongValue( workingMemory, object1 ) > extractor2.getLongValue( workingMemory, object2 );
}
public String toString() {
@@ -360,39 +361,39 @@
Operator.GREATER_OR_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor.getLongValue( object1 ) >= object2.getLongValue();
+ return extractor.getLongValue( workingMemory, object1 ) >= object2.getLongValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
- return ((LongVariableContextEntry) context).right >= context.declaration.getExtractor().getLongValue( left );
+ return ((LongVariableContextEntry) context).right >= context.declaration.getExtractor().getLongValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- return context.extractor.getLongValue( right ) >= ((LongVariableContextEntry) context).left;
+ return context.extractor.getLongValue( workingMemory, right ) >= ((LongVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor1.getLongValue( object1 ) >= extractor2.getLongValue( object2 );
+ return extractor1.getLongValue( workingMemory, object1 ) >= extractor2.getLongValue( workingMemory, object2 );
}
public String toString() {
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/ObjectFactory.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/ObjectFactory.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/ObjectFactory.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -20,6 +20,7 @@
import org.drools.base.BaseEvaluator;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
import org.drools.rule.VariableRestriction.ObjectVariableContextEntry;
import org.drools.rule.VariableRestriction.VariableContextEntry;
import org.drools.spi.Evaluator;
@@ -95,10 +96,10 @@
Operator.EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- final Object value1 = extractor.getValue( object1 );
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ final Object value1 = extractor.getValue( workingMemory, object1 );
final Object value2 = object2.getValue();
if ( value1 == null ) {
return value2 == null;
@@ -106,30 +107,30 @@
return value1.equals( value2 );
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- final Object value = context.declaration.getExtractor().getValue( left );
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ final Object value = context.declaration.getExtractor().getValue( workingMemory, left );
if ( value == null ) {
return ((ObjectVariableContextEntry) context).right == null;
}
return value.equals( ((ObjectVariableContextEntry) context).right );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- final Object value = context.extractor.getValue( right );
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ final Object value = context.extractor.getValue( workingMemory, right );
if ( ((ObjectVariableContextEntry) context).left == null ) {
return value == null;
}
return ((ObjectVariableContextEntry) context).left.equals( value );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- final Object value1 = extractor1.getValue( object1 );
- final Object value2 = extractor2.getValue( object2 );
+ final Extractor extractor2, final Object object2) {
+ final Object value1 = extractor1.getValue( workingMemory, object1 );
+ final Object value2 = extractor2.getValue( workingMemory, object2 );
if ( value1 == null ) {
return value2 == null;
}
@@ -154,10 +155,10 @@
Operator.NOT_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- final Object value1 = extractor.getValue( object1 );
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ final Object value1 = extractor.getValue( workingMemory, object1 );
final Object value2 = object2.getValue();
if ( value1 == null ) {
return value2 != null;
@@ -165,30 +166,30 @@
return !value1.equals( value2 );
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- final Object value = context.declaration.getExtractor().getValue( left );
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ final Object value = context.declaration.getExtractor().getValue( workingMemory, left );
if ( value == null ) {
return ((ObjectVariableContextEntry) context).right != null;
}
return !value.equals( ((ObjectVariableContextEntry) context).right );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- final Object value = context.extractor.getValue( right );
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ final Object value = context.extractor.getValue( workingMemory, right );
if ( ((ObjectVariableContextEntry) context).left == null ) {
return value != null;
}
return !((ObjectVariableContextEntry) context).left.equals( value );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- final Object value1 = extractor1.getValue( object1 );
- final Object value2 = extractor2.getValue( object2 );
+ final Extractor extractor2, final Object object2) {
+ final Object value1 = extractor1.getValue( workingMemory, object1 );
+ final Object value2 = extractor2.getValue( workingMemory, object2 );
if ( value1 == null ) {
return value2 != null;
}
@@ -209,43 +210,43 @@
Operator.LESS );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final Comparable comp = (Comparable) extractor.getValue( object1 );
+ final Comparable comp = (Comparable) extractor.getValue( workingMemory, object1 );
return comp.compareTo( object2.getValue() ) < 0;
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
final Comparable comp = (Comparable) ((ObjectVariableContextEntry) context).right;
- return comp.compareTo( context.declaration.getExtractor().getValue( left ) ) < 0;
+ return comp.compareTo( context.declaration.getExtractor().getValue( workingMemory, left ) ) < 0;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- final Comparable comp = (Comparable) context.extractor.getValue( right );
+ final Comparable comp = (Comparable) context.extractor.getValue( workingMemory, right );
return comp.compareTo( ((ObjectVariableContextEntry) context).left ) < 0;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final Comparable comp = (Comparable) extractor1.getValue( object1 );
- return comp.compareTo( extractor2.getValue( object2 ) ) < 0;
+ final Comparable comp = (Comparable) extractor1.getValue( workingMemory, object1 );
+ return comp.compareTo( extractor2.getValue( workingMemory, object2 ) ) < 0;
}
public String toString() {
@@ -265,43 +266,43 @@
Operator.LESS_OR_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final Comparable comp = (Comparable) extractor.getValue( object1 );
+ final Comparable comp = (Comparable) extractor.getValue( workingMemory, object1 );
return comp.compareTo( object2.getValue() ) <= 0;
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
final Comparable comp = (Comparable) ((ObjectVariableContextEntry) context).right;
- return comp.compareTo( context.declaration.getExtractor().getValue( left ) ) <= 0;
+ return comp.compareTo( context.declaration.getExtractor().getValue( workingMemory, left ) ) <= 0;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- final Comparable comp = (Comparable) context.extractor.getValue( right );
+ final Comparable comp = (Comparable) context.extractor.getValue( workingMemory, right );
return comp.compareTo( ((ObjectVariableContextEntry) context).left ) <= 0;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final Comparable comp = (Comparable) extractor1.getValue( object1 );
- return comp.compareTo( extractor2.getValue( object2 ) ) <= 0;
+ final Comparable comp = (Comparable) extractor1.getValue( workingMemory, object1 );
+ return comp.compareTo( extractor2.getValue( workingMemory, object2 ) ) <= 0;
}
public String toString() {
@@ -321,43 +322,43 @@
Operator.GREATER );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final Comparable comp = (Comparable) extractor.getValue( object1 );
+ final Comparable comp = (Comparable) extractor.getValue( workingMemory, object1 );
return comp.compareTo( object2.getValue() ) > 0;
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
final Comparable comp = (Comparable) ((ObjectVariableContextEntry) context).right;
- return comp.compareTo( context.declaration.getExtractor().getValue( left ) ) > 0;
+ return comp.compareTo( context.declaration.getExtractor().getValue( workingMemory, left ) ) > 0;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- final Comparable comp = (Comparable) context.extractor.getValue( right );
+ final Comparable comp = (Comparable) context.extractor.getValue( workingMemory, right );
return comp.compareTo( ((ObjectVariableContextEntry) context).left ) > 0;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final Comparable comp = (Comparable) extractor1.getValue( object1 );
- return comp.compareTo( extractor2.getValue( object2 ) ) > 0;
+ final Comparable comp = (Comparable) extractor1.getValue( workingMemory, object1 );
+ return comp.compareTo( extractor2.getValue( workingMemory, object2 ) ) > 0;
}
public String toString() {
@@ -377,43 +378,43 @@
Operator.GREATER_OR_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final Comparable comp = (Comparable) extractor.getValue( object1 );
+ final Comparable comp = (Comparable) extractor.getValue( workingMemory, object1 );
return comp.compareTo( object2.getValue() ) >= 0;
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
final Comparable comp = (Comparable) ((ObjectVariableContextEntry) context).right;
- return comp.compareTo( context.declaration.getExtractor().getValue( left ) ) >= 0;
+ return comp.compareTo( context.declaration.getExtractor().getValue( workingMemory, left ) ) >= 0;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- final Comparable comp = (Comparable) context.extractor.getValue( right );
+ final Comparable comp = (Comparable) context.extractor.getValue( workingMemory, right );
return comp.compareTo( ((ObjectVariableContextEntry) context).left ) >= 0;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- final Comparable comp = (Comparable) extractor1.getValue( object1 );
- return comp.compareTo( extractor2.getValue( object2 ) ) >= 0;
+ final Comparable comp = (Comparable) extractor1.getValue( workingMemory, object1 );
+ return comp.compareTo( extractor2.getValue( workingMemory, object2 ) ) >= 0;
}
public String toString() {
@@ -433,34 +434,34 @@
Operator.CONTAINS );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
final Object value = object2.getValue();
- final Collection col = (Collection) extractor.getValue( object1 );
+ final Collection col = (Collection) extractor.getValue( workingMemory, object1 );
return col.contains( value );
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- final Object value = context.declaration.getExtractor().getValue( left );
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ final Object value = context.declaration.getExtractor().getValue( workingMemory, left );
final Collection col = (Collection) ((ObjectVariableContextEntry) context).right;
return col.contains( value );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
final Object value = ((ObjectVariableContextEntry) context).left;
- final Collection col = (Collection) context.extractor.getValue( right );
+ final Collection col = (Collection) context.extractor.getValue( workingMemory, right );
return col.contains( value );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- final Object value = extractor2.getValue( object2 );
- final Collection col = (Collection) extractor1.getValue( object1 );
+ final Extractor extractor2, final Object object2) {
+ final Object value = extractor2.getValue( workingMemory, object2 );
+ final Collection col = (Collection) extractor1.getValue( workingMemory, object1 );
return col.contains( value );
}
@@ -481,34 +482,34 @@
Operator.EXCLUDES );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
final Object value = object2.getValue();
- final Collection col = (Collection) extractor.getValue( object1 );
+ final Collection col = (Collection) extractor.getValue( workingMemory, object1 );
return !col.contains( value );
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- final Object value = context.declaration.getExtractor().getValue( left );
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ final Object value = context.declaration.getExtractor().getValue( workingMemory, left );
final Collection col = (Collection) ((ObjectVariableContextEntry) context).right;
return !col.contains( value );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
final Object value = ((ObjectVariableContextEntry) context).left;
- final Collection col = (Collection) context.extractor.getValue( right );
+ final Collection col = (Collection) context.extractor.getValue( workingMemory, right );
return !col.contains( value );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- final Object value = extractor2.getValue( object2 );
- final Collection col = (Collection) extractor1.getValue( object1 );
+ final Extractor extractor2, final Object object2) {
+ final Object value = extractor2.getValue( workingMemory, object2 );
+ final Collection col = (Collection) extractor1.getValue( workingMemory, object1 );
return !col.contains( value );
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/ShortFactory.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/ShortFactory.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/ShortFactory.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -18,6 +18,7 @@
import org.drools.base.BaseEvaluator;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
import org.drools.rule.VariableRestriction.LongVariableContextEntry;
import org.drools.rule.VariableRestriction.VariableContextEntry;
import org.drools.spi.Evaluator;
@@ -76,51 +77,51 @@
Operator.EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if ( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if ( extractor.isNullValue( workingMemory, object1 ) ) {
return object2.isNull();
} else if ( object2.isNull() ) {
return false;
}
- return extractor.getShortValue( object1 ) == object2.getShortValue();
+ return extractor.getShortValue( workingMemory, object1 ) == object2.getShortValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- if ( context.declaration.getExtractor().isNullValue( left ) ) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ if ( context.declaration.getExtractor().isNullValue( workingMemory, left ) ) {
return context.isRightNull();
} else if ( context.isRightNull() ) {
return false;
}
- return context.declaration.getExtractor().getShortValue( left ) == ((LongVariableContextEntry) context).right;
+ return context.declaration.getExtractor().getShortValue( workingMemory, left ) == ((LongVariableContextEntry) context).right;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if ( context.extractor.isNullValue( right )) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if ( context.extractor.isNullValue( workingMemory, right )) {
return context.isLeftNull();
} else if ( context.isLeftNull() ) {
return false;
}
- return ((LongVariableContextEntry) context).left == context.extractor.getShortValue( right );
+ return ((LongVariableContextEntry) context).left == context.extractor.getShortValue( workingMemory, right );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if (extractor1.isNullValue( object1 )) {
- return extractor2.isNullValue( object2 );
- } else if (extractor2.isNullValue( object2 )) {
+ final Extractor extractor2, final Object object2) {
+ if (extractor1.isNullValue( workingMemory, object1 )) {
+ return extractor2.isNullValue( workingMemory, object2 );
+ } else if (extractor2.isNullValue( workingMemory, object2 )) {
return false;
}
- return extractor1.getShortValue( object1 ) == extractor2.getShortValue( object2 );
+ return extractor1.getShortValue( workingMemory, object1 ) == extractor2.getShortValue( workingMemory, object2 );
}
public String toString() {
@@ -140,51 +141,51 @@
Operator.NOT_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if ( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if ( extractor.isNullValue( workingMemory, object1 ) ) {
return !object2.isNull();
} else if ( object2.isNull() ) {
return true;
}
- return extractor.getShortValue( object1 ) != object2.getShortValue();
+ return extractor.getShortValue( workingMemory, object1 ) != object2.getShortValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- if ( context.declaration.getExtractor().isNullValue( left ) ) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ if ( context.declaration.getExtractor().isNullValue( workingMemory, left ) ) {
return !context.isRightNull();
} else if ( context.isRightNull() ) {
return true;
}
- return context.declaration.getExtractor().getShortValue( left ) != ((LongVariableContextEntry) context).right;
+ return context.declaration.getExtractor().getShortValue( workingMemory, left ) != ((LongVariableContextEntry) context).right;
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if ( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if ( context.extractor.isNullValue( workingMemory, right ) ) {
return !context.isLeftNull();
} else if ( context.isLeftNull() ) {
return true;
}
- return ((LongVariableContextEntry) context).left != context.extractor.getShortValue( right );
+ return ((LongVariableContextEntry) context).left != context.extractor.getShortValue( workingMemory, right );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if (extractor1.isNullValue( object1 )) {
- return !extractor2.isNullValue( object2 );
- } else if (extractor2.isNullValue( object2 )) {
+ final Extractor extractor2, final Object object2) {
+ if (extractor1.isNullValue( workingMemory, object1 )) {
+ return !extractor2.isNullValue( workingMemory, object2 );
+ } else if (extractor2.isNullValue( workingMemory, object2 )) {
return true;
}
- return extractor1.getShortValue( object1 ) != extractor2.getShortValue( object2 );
+ return extractor1.getShortValue( workingMemory, object1 ) != extractor2.getShortValue( workingMemory, object2 );
}
public String toString() {
@@ -204,39 +205,39 @@
Operator.LESS );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor.getShortValue( object1 ) < object2.getShortValue();
+ return extractor.getShortValue( workingMemory, object1 ) < object2.getShortValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
- return ((LongVariableContextEntry) context).right < context.declaration.getExtractor().getShortValue( left );
+ return ((LongVariableContextEntry) context).right < context.declaration.getExtractor().getShortValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- return context.extractor.getShortValue( right ) < ((LongVariableContextEntry) context).left;
+ return context.extractor.getShortValue( workingMemory, right ) < ((LongVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor1.getShortValue( object1 ) < extractor2.getShortValue( object2 );
+ return extractor1.getShortValue( workingMemory, object1 ) < extractor2.getShortValue( workingMemory, object2 );
}
public String toString() {
@@ -256,39 +257,39 @@
Operator.LESS_OR_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor.getShortValue( object1 ) <= object2.getShortValue();
+ return extractor.getShortValue( workingMemory, object1 ) <= object2.getShortValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
- return ((LongVariableContextEntry) context).right <= context.declaration.getExtractor().getShortValue( left );
+ return ((LongVariableContextEntry) context).right <= context.declaration.getExtractor().getShortValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- return context.extractor.getShortValue( right ) <= ((LongVariableContextEntry) context).left;
+ return context.extractor.getShortValue( workingMemory, right ) <= ((LongVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor1.getShortValue( object1 ) <= extractor2.getShortValue( object2 );
+ return extractor1.getShortValue( workingMemory, object1 ) <= extractor2.getShortValue( workingMemory, object2 );
}
public String toString() {
@@ -308,39 +309,39 @@
Operator.GREATER );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor.getShortValue( object1 ) > object2.getShortValue();
+ return extractor.getShortValue( workingMemory, object1 ) > object2.getShortValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
- return ((LongVariableContextEntry) context).right > context.declaration.getExtractor().getShortValue( left );
+ return ((LongVariableContextEntry) context).right > context.declaration.getExtractor().getShortValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- return context.extractor.getShortValue( right ) > ((LongVariableContextEntry) context).left;
+ return context.extractor.getShortValue( workingMemory, right ) > ((LongVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor1.getShortValue( object1 ) > extractor2.getShortValue( object2 );
+ return extractor1.getShortValue( workingMemory, object1 ) > extractor2.getShortValue( workingMemory, object2 );
}
public String toString() {
@@ -360,39 +361,39 @@
Operator.GREATER_OR_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- if( extractor.isNullValue( object1 ) ) {
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ if( extractor.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor.getShortValue( object1 ) >= object2.getShortValue();
+ return extractor.getShortValue( workingMemory, object1 ) >= object2.getShortValue();
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
if( context.rightNull ) {
return false;
}
- return ((LongVariableContextEntry) context).right >= context.declaration.getExtractor().getShortValue( left );
+ return ((LongVariableContextEntry) context).right >= context.declaration.getExtractor().getShortValue( workingMemory, left );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- if( context.extractor.isNullValue( right ) ) {
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ if( context.extractor.isNullValue( workingMemory, right ) ) {
return false;
}
- return context.extractor.getShortValue( right ) >= ((LongVariableContextEntry) context).left;
+ return context.extractor.getShortValue( workingMemory, right ) >= ((LongVariableContextEntry) context).left;
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- if( extractor1.isNullValue( object1 ) ) {
+ final Extractor extractor2, final Object object2) {
+ if( extractor1.isNullValue( workingMemory, object1 ) ) {
return false;
}
- return extractor1.getShortValue( object1 ) >= extractor2.getShortValue( object2 );
+ return extractor1.getShortValue( workingMemory, object1 ) >= extractor2.getShortValue( workingMemory, object2 );
}
public String toString() {
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/StringFactory.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/StringFactory.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/StringFactory.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -18,6 +18,7 @@
import org.drools.base.BaseEvaluator;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
import org.drools.rule.VariableRestriction.ObjectVariableContextEntry;
import org.drools.rule.VariableRestriction.VariableContextEntry;
import org.drools.spi.Evaluator;
@@ -79,10 +80,10 @@
Operator.EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- final Object value1 = extractor.getValue( object1 );
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ final Object value1 = extractor.getValue( workingMemory, object1 );
final Object value2 = object2.getValue();
if ( value1 == null ) {
return value2 == null;
@@ -90,30 +91,30 @@
return value1.equals( value2 );
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- final Object value = context.declaration.getExtractor().getValue( left );
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ final Object value = context.declaration.getExtractor().getValue( workingMemory, left );
if ( value == null ) {
return ((ObjectVariableContextEntry) context).right == null;
}
return value.equals( ((ObjectVariableContextEntry) context).right );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- final Object value = context.extractor.getValue( right );
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ final Object value = context.extractor.getValue( workingMemory, right );
if ( ((ObjectVariableContextEntry) context).left == null ) {
return value == null;
}
return ((ObjectVariableContextEntry) context).left.equals( value );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- final Object value1 = extractor1.getValue( object1 );
- final Object value2 = extractor2.getValue( object2 );
+ final Extractor extractor2, final Object object2) {
+ final Object value1 = extractor1.getValue( workingMemory, object1 );
+ final Object value2 = extractor2.getValue( workingMemory, object2 );
if ( value1 == null ) {
return value2 == null;
}
@@ -138,10 +139,10 @@
Operator.NOT_EQUAL );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- final Object value1 = extractor.getValue( object1 );
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ final Object value1 = extractor.getValue( workingMemory, object1 );
final Object value2 = object2.getValue();
if ( value1 == null ) {
return value2 != null;
@@ -149,30 +150,30 @@
return !value1.equals( value2 );
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
- final Object value = context.declaration.getExtractor().getValue( left );
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
+ final Object value = context.declaration.getExtractor().getValue( workingMemory, left );
if ( value == null ) {
return ((ObjectVariableContextEntry) context).right != null;
}
return !value.equals( ((ObjectVariableContextEntry) context).right );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- final Object value = context.extractor.getValue( right );
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ final Object value = context.extractor.getValue( workingMemory, right );
if ( ((ObjectVariableContextEntry) context).left == null ) {
return value != null;
}
return !((ObjectVariableContextEntry) context).left.equals( value );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- final Object value1 = extractor1.getValue( object1 );
- final Object value2 = extractor2.getValue( object2 );
+ final Extractor extractor2, final Object object2) {
+ final Object value1 = extractor1.getValue( workingMemory, object1 );
+ final Object value2 = extractor2.getValue( workingMemory, object2 );
if ( value1 == null ) {
return value2 != null;
}
@@ -196,10 +197,10 @@
Operator.MATCHES );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- final String value1 = (String) extractor.getValue( object1 );
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ final String value1 = (String) extractor.getValue( workingMemory, object1 );
final String value2 = (String) object2.getValue();
if ( value1 == null ) {
return false;
@@ -207,30 +208,30 @@
return value1.matches( value2 );
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
final String value = (String) ((ObjectVariableContextEntry) context).right;
if ( value == null ) {
return false;
}
- return value.matches( (String) context.declaration.getExtractor().getValue( left ) );
+ return value.matches( (String) context.declaration.getExtractor().getValue( workingMemory, left ) );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- final String value = (String) context.extractor.getValue( right );
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ final String value = (String) context.extractor.getValue( workingMemory, right );
if ( value == null ) {
return false;
}
return value.matches( (String) ((ObjectVariableContextEntry) context).left );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- final Object value1 = extractor1.getValue( object1 );
- final Object value2 = extractor2.getValue( object2 );
+ final Extractor extractor2, final Object object2) {
+ final Object value1 = extractor1.getValue( workingMemory, object1 );
+ final Object value2 = extractor2.getValue( workingMemory, object2 );
if ( value1 == null ) {
return false;
}
@@ -254,10 +255,10 @@
Operator.NOT_MATCHES );
}
- public boolean evaluate(final Extractor extractor,
- final Object object1,
- final FieldValue object2) {
- final String value1 = (String) extractor.getValue( object1 );
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor,
+ final Object object1, final FieldValue object2) {
+ final String value1 = (String) extractor.getValue( workingMemory, object1 );
final String value2 = (String) object2.getValue();
if ( value1 == null ) {
return false;
@@ -265,30 +266,30 @@
return ! value1.matches( value2 );
}
- public boolean evaluateCachedRight(final VariableContextEntry context,
- final Object left) {
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object left) {
final String value = (String) ((ObjectVariableContextEntry) context).right;
if ( value == null ) {
return false;
}
- return ! value.matches( (String) context.declaration.getExtractor().getValue( left ) );
+ return ! value.matches( (String) context.declaration.getExtractor().getValue( workingMemory, left ) );
}
- public boolean evaluateCachedLeft(final VariableContextEntry context,
- final Object right) {
- final String value = (String) context.extractor.getValue( right );
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ final VariableContextEntry context, final Object right) {
+ final String value = (String) context.extractor.getValue( workingMemory, right );
if ( value == null ) {
return false;
}
return ! value.matches( (String) ((ObjectVariableContextEntry) context).left );
}
- public boolean evaluate(final Extractor extractor1,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ final Extractor extractor1,
final Object object1,
- final Extractor extractor2,
- final Object object2) {
- final Object value1 = extractor1.getValue( object1 );
- final Object value2 = extractor2.getValue( object2 );
+ final Extractor extractor2, final Object object2) {
+ final Object value1 = extractor1.getValue( workingMemory, object1 );
+ final Object value2 = extractor2.getValue( workingMemory, object2 );
if ( value1 == null ) {
return false;
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/ArrayExtractor.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/ArrayExtractor.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/ArrayExtractor.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -3,6 +3,7 @@
import java.lang.reflect.Method;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
import org.drools.spi.Extractor;
public class ArrayExtractor implements Extractor {
@@ -20,57 +21,57 @@
return type;
}
- public boolean getBooleanValue(Object object) {
- Object[] array = ( Object[] ) this.arrayExtractor.getValue( object );
+ public boolean getBooleanValue(InternalWorkingMemory workingMemory, Object object) {
+ Object[] array = ( Object[] ) this.arrayExtractor.getValue( workingMemory, object );
return ( (Boolean)array[ this.index ]).booleanValue();
}
- public byte getByteValue(Object object) {
- Object[] array = ( Object[] ) this.arrayExtractor.getValue( object );
+ public byte getByteValue(InternalWorkingMemory workingMemory, Object object) {
+ Object[] array = ( Object[] ) this.arrayExtractor.getValue( workingMemory, object );
return ( (Byte)array[ this.index ]).byteValue();
}
- public char getCharValue(Object object) {
- Object[] array = ( Object[] ) this.arrayExtractor.getValue( object );
+ public char getCharValue(InternalWorkingMemory workingMemory, Object object) {
+ Object[] array = ( Object[] ) this.arrayExtractor.getValue( workingMemory, object );
return ( (Character)array[ this.index ]).charValue();
}
- public double getDoubleValue(Object object) {
- Object[] array = ( Object[] ) this.arrayExtractor.getValue( object );
+ public double getDoubleValue(InternalWorkingMemory workingMemory, Object object) {
+ Object[] array = ( Object[] ) this.arrayExtractor.getValue( workingMemory, object );
return ( (Double)array[ this.index ]).doubleValue();
}
- public float getFloatValue(Object object) {
- Object[] array = ( Object[] ) this.arrayExtractor.getValue( object );
+ public float getFloatValue(InternalWorkingMemory workingMemory, Object object) {
+ Object[] array = ( Object[] ) this.arrayExtractor.getValue( workingMemory, object );
return ( (Float)array[ this.index ]).floatValue();
}
- public int getIntValue(Object object) {
- Object[] array = ( Object[] ) this.arrayExtractor.getValue( object );
+ public int getIntValue(InternalWorkingMemory workingMemory, Object object) {
+ Object[] array = ( Object[] ) this.arrayExtractor.getValue( workingMemory, object );
return ( (Integer)array[ this.index ]).intValue();
}
- public long getLongValue(Object object) {
- Object[] array = ( Object[] ) this.arrayExtractor.getValue( object );
+ public long getLongValue(InternalWorkingMemory workingMemory, Object object) {
+ Object[] array = ( Object[] ) this.arrayExtractor.getValue( workingMemory, object );
return ( (Long) array[ this.index ]).longValue();
}
public Method getNativeReadMethod() {
throw new UnsupportedOperationException("cannot call a method on an array extractor" );
}
- public short getShortValue(Object object) {
- Object[] array = ( Object[] ) this.arrayExtractor.getValue( object );
+ public short getShortValue(InternalWorkingMemory workingMemory, Object object) {
+ Object[] array = ( Object[] ) this.arrayExtractor.getValue( workingMemory, object );
return ( (Short)array[ this.index ]).shortValue();
}
- public Object getValue(Object object) {
- Object[] array = ( Object[] ) this.arrayExtractor.getValue( object );
+ public Object getValue(InternalWorkingMemory workingMemory, Object object) {
+ Object[] array = ( Object[] ) this.arrayExtractor.getValue( workingMemory, object );
return array[ this.index ];
}
public ValueType getValueType() {
return ValueType.OBJECT_TYPE;
}
- public boolean isNullValue(Object object) {
- Object[] array = ( Object[] ) this.arrayExtractor.getValue( object );
+ public boolean isNullValue(InternalWorkingMemory workingMemory, Object object ) {
+ Object[] array = ( Object[] ) this.arrayExtractor.getValue( workingMemory, object );
return array[ this.index ] == null;
}
- public int getHashCode(Object object) {
- Object[] array = ( Object[] ) this.arrayExtractor.getValue( object );
+ public int getHashCode(InternalWorkingMemory workingMemory, Object object) {
+ Object[] array = ( Object[] ) this.arrayExtractor.getValue( workingMemory, object );
return array[ this.index ].hashCode();
}
@@ -93,9 +94,8 @@
if ( index != other.index ) return false;
return true;
}
-
-
-
-
+ public boolean isGlobal() {
+ return false;
+ }
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseBooleanClassFieldExtractor.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseBooleanClassFieldExtractor.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseBooleanClassFieldExtractor.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -21,6 +21,7 @@
import org.drools.RuntimeDroolsException;
import org.drools.base.BaseClassFieldExtractor;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
/**
* A Base class for primitive boolean class field
@@ -53,56 +54,56 @@
valueType );
}
- public Object getValue(final Object object) {
- return getBooleanValue( object ) ? Boolean.TRUE : Boolean.FALSE;
+ public Object getValue(InternalWorkingMemory workingMemory, final Object object) {
+ return getBooleanValue( workingMemory, object ) ? Boolean.TRUE : Boolean.FALSE;
}
- public abstract boolean getBooleanValue(Object object);
+ public abstract boolean getBooleanValue(InternalWorkingMemory workingMemory, Object object);
- public byte getByteValue(final Object object) {
+ public byte getByteValue(InternalWorkingMemory workingMemory, final Object object) {
throw new RuntimeDroolsException( "Conversion to byte not supported from boolean" );
}
- public char getCharValue(final Object object) {
+ public char getCharValue(InternalWorkingMemory workingMemory, final Object object) {
throw new RuntimeDroolsException( "Conversion to char not supported from boolean" );
}
- public double getDoubleValue(final Object object) {
+ public double getDoubleValue(InternalWorkingMemory workingMemory, final Object object) {
throw new RuntimeDroolsException( "Conversion to double not supported from boolean" );
}
- public float getFloatValue(final Object object) {
+ public float getFloatValue(InternalWorkingMemory workingMemory, final Object object) {
throw new RuntimeDroolsException( "Conversion to float not supported from boolean" );
}
- public int getIntValue(final Object object) {
+ public int getIntValue(InternalWorkingMemory workingMemory, final Object object) {
throw new RuntimeDroolsException( "Conversion to int not supported from boolean" );
}
- public long getLongValue(final Object object) {
+ public long getLongValue(InternalWorkingMemory workingMemory, final Object object) {
throw new RuntimeDroolsException( "Conversion to long not supported from boolean" );
}
- public short getShortValue(final Object object) {
+ public short getShortValue(InternalWorkingMemory workingMemory, final Object object) {
throw new RuntimeDroolsException( "Conversion to short not supported from boolean" );
}
- public boolean isNullValue(final Object object) {
+ public boolean isNullValue(InternalWorkingMemory workingMemory, final Object object) {
return false;
}
public Method getNativeReadMethod() {
try {
return this.getClass().getDeclaredMethod( "getBooleanValue",
- new Class[]{Object.class} );
+ new Class[]{InternalWorkingMemory.class, Object.class} );
} catch ( final Exception e ) {
throw new RuntimeDroolsException( "This is a bug. Please report to development team: " + e.getMessage(),
e );
}
}
- public int getHashCode(final Object object) {
- return getBooleanValue( object ) ? 1231 : 1237;
+ public int getHashCode(InternalWorkingMemory workingMemory, final Object object) {
+ return getBooleanValue( workingMemory, object ) ? 1231 : 1237;
}
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseByteClassFieldExtractor.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseByteClassFieldExtractor.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseByteClassFieldExtractor.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -21,6 +21,7 @@
import org.drools.RuntimeDroolsException;
import org.drools.base.BaseClassFieldExtractor;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
/**
* A Base class for primitive byte class field
@@ -53,55 +54,55 @@
valueType );
}
- public Object getValue(final Object object) {
- return new Long( getByteValue( object ) );
+ public Object getValue(InternalWorkingMemory workingMemory, final Object object) {
+ return new Long( getByteValue( workingMemory, object ) );
}
- public boolean getBooleanValue(final Object object) {
+ public boolean getBooleanValue(InternalWorkingMemory workingMemory, final Object object) {
throw new RuntimeDroolsException( "Conversion to boolean not supported from byte" );
}
- public abstract byte getByteValue(Object object);
+ public abstract byte getByteValue(InternalWorkingMemory workingMemory, Object object);
- public char getCharValue(final Object object) {
+ public char getCharValue(InternalWorkingMemory workingMemory, final Object object) {
throw new RuntimeDroolsException( "Conversion to char not supported from byte" );
}
- public double getDoubleValue(final Object object) {
- return getByteValue( object );
+ public double getDoubleValue(InternalWorkingMemory workingMemory, final Object object) {
+ return getByteValue( workingMemory, object );
}
- public float getFloatValue(final Object object) {
- return getByteValue( object );
+ public float getFloatValue(InternalWorkingMemory workingMemory, final Object object) {
+ return getByteValue( workingMemory, object );
}
- public int getIntValue(final Object object) {
- return getByteValue( object );
+ public int getIntValue(InternalWorkingMemory workingMemory, final Object object) {
+ return getByteValue( workingMemory, object );
}
- public long getLongValue(final Object object) {
- return getByteValue( object );
+ public long getLongValue(InternalWorkingMemory workingMemory, final Object object) {
+ return getByteValue( workingMemory, object );
}
- public short getShortValue(final Object object) {
- return getByteValue( object );
+ public short getShortValue(InternalWorkingMemory workingMemory, final Object object) {
+ return getByteValue( workingMemory, object );
}
- public boolean isNullValue(final Object object) {
+ public boolean isNullValue(InternalWorkingMemory workingMemory, final Object object) {
return false;
}
public Method getNativeReadMethod() {
try {
return this.getClass().getDeclaredMethod( "getByteValue",
- new Class[]{Object.class} );
+ new Class[]{InternalWorkingMemory.class, Object.class} );
} catch ( final Exception e ) {
throw new RuntimeDroolsException( "This is a bug. Please report to development team: " + e.getMessage(),
e );
}
}
- public int getHashCode(final Object object) {
- return getByteValue( object );
+ public int getHashCode(InternalWorkingMemory workingMemory, final Object object) {
+ return getByteValue( workingMemory, object );
}
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseCharClassFieldExtractor.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseCharClassFieldExtractor.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseCharClassFieldExtractor.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -5,6 +5,7 @@
import org.drools.RuntimeDroolsException;
import org.drools.base.BaseClassFieldExtractor;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
public abstract class BaseCharClassFieldExtractor extends BaseClassFieldExtractor {
@@ -31,55 +32,55 @@
valueType );
}
- public Object getValue(final Object object) {
- return new Long( getCharValue( object ) );
+ public Object getValue(InternalWorkingMemory workingMemory, final Object object) {
+ return new Long( getCharValue( workingMemory, object ) );
}
- public boolean getBooleanValue(final Object object) {
+ public boolean getBooleanValue(InternalWorkingMemory workingMemory, final Object object) {
throw new RuntimeDroolsException( "Conversion to boolean not supported from char" );
}
- public byte getByteValue(final Object object) {
- return (byte) getCharValue( object );
+ public byte getByteValue(InternalWorkingMemory workingMemory, final Object object) {
+ return (byte) getCharValue( workingMemory, object );
}
- public abstract char getCharValue(Object object);
+ public abstract char getCharValue(InternalWorkingMemory workingMemory, Object object);
- public double getDoubleValue(final Object object) {
- return getCharValue( object );
+ public double getDoubleValue(InternalWorkingMemory workingMemory, final Object object) {
+ return getCharValue( workingMemory, object );
}
- public float getFloatValue(final Object object) {
- return getCharValue( object );
+ public float getFloatValue(InternalWorkingMemory workingMemory, final Object object) {
+ return getCharValue( workingMemory, object );
}
- public int getIntValue(final Object object) {
- return getCharValue( object );
+ public int getIntValue(InternalWorkingMemory workingMemory, final Object object) {
+ return getCharValue( workingMemory, object );
}
- public long getLongValue(final Object object) {
- return getCharValue( object );
+ public long getLongValue(InternalWorkingMemory workingMemory, final Object object) {
+ return getCharValue( workingMemory, object );
}
- public short getShortValue(final Object object) {
- return (short) getCharValue( object );
+ public short getShortValue(InternalWorkingMemory workingMemory, final Object object) {
+ return (short) getCharValue( workingMemory, object );
}
- public boolean isNullValue(final Object object) {
+ public boolean isNullValue(InternalWorkingMemory workingMemory, final Object object) {
return false;
}
public Method getNativeReadMethod() {
try {
return this.getClass().getDeclaredMethod( "getCharValue",
- new Class[]{Object.class} );
+ new Class[]{InternalWorkingMemory.class, Object.class} );
} catch ( final Exception e ) {
throw new RuntimeDroolsException( "This is a bug. Please report to development team: " + e.getMessage(),
e );
}
}
- public int getHashCode(final Object object) {
- return getCharValue( object );
+ public int getHashCode(InternalWorkingMemory workingMemory, final Object object) {
+ return getCharValue( workingMemory, object );
}
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseDoubleClassFieldExtractor.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseDoubleClassFieldExtractor.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseDoubleClassFieldExtractor.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -5,6 +5,7 @@
import org.drools.RuntimeDroolsException;
import org.drools.base.BaseClassFieldExtractor;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
public abstract class BaseDoubleClassFieldExtractor extends BaseClassFieldExtractor {
@@ -31,57 +32,57 @@
valueType );
}
- public Object getValue(final Object object) {
- return new Double( getDoubleValue( object ) );
+ public Object getValue(InternalWorkingMemory workingMemory, final Object object) {
+ return new Double( getDoubleValue( workingMemory, object ) );
}
- public boolean getBooleanValue(final Object object) {
+ public boolean getBooleanValue(InternalWorkingMemory workingMemory, final Object object) {
throw new RuntimeDroolsException( "Conversion to boolean not supported from double" );
}
- public byte getByteValue(final Object object) {
- return (byte) getDoubleValue( object );
+ public byte getByteValue(InternalWorkingMemory workingMemory, final Object object) {
+ return (byte) getDoubleValue( workingMemory, object );
}
- public char getCharValue(final Object object) {
+ public char getCharValue(InternalWorkingMemory workingMemory, final Object object) {
throw new RuntimeDroolsException( "Conversion to char not supported from double" );
}
- public abstract double getDoubleValue(Object object);
+ public abstract double getDoubleValue(InternalWorkingMemory workingMemory, Object object);
- public float getFloatValue(final Object object) {
- return (float) getDoubleValue( object );
+ public float getFloatValue(InternalWorkingMemory workingMemory, final Object object) {
+ return (float) getDoubleValue( workingMemory, object );
}
- public int getIntValue(final Object object) {
- return (int) getDoubleValue( object );
+ public int getIntValue(InternalWorkingMemory workingMemory, final Object object) {
+ return (int) getDoubleValue( workingMemory, object );
}
- public long getLongValue(final Object object) {
- return (long) getDoubleValue( object );
+ public long getLongValue(InternalWorkingMemory workingMemory, final Object object) {
+ return (long) getDoubleValue( workingMemory, object );
}
- public short getShortValue(final Object object) {
- return (short) getDoubleValue( object );
+ public short getShortValue(InternalWorkingMemory workingMemory, final Object object) {
+ return (short) getDoubleValue( workingMemory, object );
}
- public boolean isNullValue(final Object object) {
+ public boolean isNullValue(InternalWorkingMemory workingMemory, final Object object) {
return false;
}
public Method getNativeReadMethod() {
try {
return this.getClass().getDeclaredMethod( "getDoubleValue",
- new Class[]{Object.class} );
+ new Class[]{InternalWorkingMemory.class, Object.class} );
} catch ( final Exception e ) {
throw new RuntimeDroolsException( "This is a bug. Please report to development team: " + e.getMessage(),
e );
}
}
- public int getHashCode(final Object object) {
- final long temp = Double.doubleToLongBits( getDoubleValue( object ) );
+ public int getHashCode(InternalWorkingMemory workingMemory, final Object object) {
+ final long temp = Double.doubleToLongBits( getDoubleValue( workingMemory, object ) );
return (int) (temp ^ (temp >>> 32));
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseFloatClassFieldExtractor.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseFloatClassFieldExtractor.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseFloatClassFieldExtractor.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -5,6 +5,7 @@
import org.drools.RuntimeDroolsException;
import org.drools.base.BaseClassFieldExtractor;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
public abstract class BaseFloatClassFieldExtractor extends BaseClassFieldExtractor {
@@ -31,57 +32,57 @@
valueType );
}
- public Object getValue(final Object object) {
- return new Float( getFloatValue( object ) );
+ public Object getValue(InternalWorkingMemory workingMemory, final Object object) {
+ return new Float( getFloatValue( workingMemory, object ) );
}
- public boolean getBooleanValue(final Object object) {
+ public boolean getBooleanValue(InternalWorkingMemory workingMemory, final Object object) {
throw new RuntimeDroolsException( "Conversion to boolean not supported from float" );
}
- public byte getByteValue(final Object object) {
- return (byte) getFloatValue( object );
+ public byte getByteValue(InternalWorkingMemory workingMemory, final Object object) {
+ return (byte) getFloatValue( workingMemory, object );
}
- public char getCharValue(final Object object) {
+ public char getCharValue(InternalWorkingMemory workingMemory, final Object object) {
throw new RuntimeDroolsException( "Conversion to char not supported from float" );
}
- public double getDoubleValue(final Object object) {
- return getFloatValue( object );
+ public double getDoubleValue(InternalWorkingMemory workingMemory, final Object object) {
+ return getFloatValue( workingMemory, object );
}
- public abstract float getFloatValue(Object object);
+ public abstract float getFloatValue(InternalWorkingMemory workingMemory, Object object);
- public int getIntValue(final Object object) {
- return (int) getFloatValue( object );
+ public int getIntValue(InternalWorkingMemory workingMemory, final Object object) {
+ return (int) getFloatValue( workingMemory, object );
}
- public long getLongValue(final Object object) {
- return (long) getFloatValue( object );
+ public long getLongValue(InternalWorkingMemory workingMemory, final Object object) {
+ return (long) getFloatValue( workingMemory, object );
}
- public short getShortValue(final Object object) {
- return (short) getFloatValue( object );
+ public short getShortValue(InternalWorkingMemory workingMemory, final Object object) {
+ return (short) getFloatValue( workingMemory, object );
}
- public boolean isNullValue(final Object object) {
+ public boolean isNullValue(InternalWorkingMemory workingMemory, final Object object) {
return false;
}
public Method getNativeReadMethod() {
try {
return this.getClass().getDeclaredMethod( "getFloatValue",
- new Class[]{Object.class} );
+ new Class[]{InternalWorkingMemory.class, Object.class} );
} catch ( final Exception e ) {
throw new RuntimeDroolsException( "This is a bug. Please report to development team: " + e.getMessage(),
e );
}
}
- public int getHashCode(final Object object) {
- return Float.floatToIntBits( getFloatValue( object ) );
+ public int getHashCode(InternalWorkingMemory workingMemory, final Object object) {
+ return Float.floatToIntBits( getFloatValue( workingMemory, object ) );
}
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseIntClassFieldExtractor.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseIntClassFieldExtractor.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseIntClassFieldExtractor.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -5,6 +5,7 @@
import org.drools.RuntimeDroolsException;
import org.drools.base.BaseClassFieldExtractor;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
public abstract class BaseIntClassFieldExtractor extends BaseClassFieldExtractor {
@@ -31,56 +32,56 @@
valueType );
}
- public Object getValue(final Object object) {
- return new Long( getIntValue( object ) );
+ public Object getValue(InternalWorkingMemory workingMemory, final Object object) {
+ return new Long( getIntValue( workingMemory, object ) );
}
- public boolean getBooleanValue(final Object object) {
+ public boolean getBooleanValue(InternalWorkingMemory workingMemory, final Object object) {
throw new RuntimeDroolsException( "Conversion to boolean not supported from int" );
}
- public byte getByteValue(final Object object) {
- return (byte) getIntValue( object );
+ public byte getByteValue(InternalWorkingMemory workingMemory, final Object object) {
+ return (byte) getIntValue( workingMemory, object );
}
- public char getCharValue(final Object object) {
+ public char getCharValue(InternalWorkingMemory workingMemory, final Object object) {
throw new RuntimeDroolsException( "Conversion to char not supported from int" );
}
- public double getDoubleValue(final Object object) {
- return getIntValue( object );
+ public double getDoubleValue(InternalWorkingMemory workingMemory, final Object object) {
+ return getIntValue( workingMemory, object );
}
- public float getFloatValue(final Object object) {
- return getIntValue( object );
+ public float getFloatValue(InternalWorkingMemory workingMemory, final Object object) {
+ return getIntValue( workingMemory, object );
}
- public abstract int getIntValue(Object object);
+ public abstract int getIntValue(InternalWorkingMemory workingMemory, Object object);
- public long getLongValue(final Object object) {
- return getIntValue( object );
+ public long getLongValue(InternalWorkingMemory workingMemory, final Object object) {
+ return getIntValue( workingMemory, object );
}
- public short getShortValue(final Object object) {
- return (short) getIntValue( object );
+ public short getShortValue(InternalWorkingMemory workingMemory, final Object object) {
+ return (short) getIntValue( workingMemory, object );
}
- public boolean isNullValue(final Object object) {
+ public boolean isNullValue(InternalWorkingMemory workingMemory, final Object object) {
return false;
}
public Method getNativeReadMethod() {
try {
return this.getClass().getDeclaredMethod( "getIntValue",
- new Class[]{Object.class} );
+ new Class[]{InternalWorkingMemory.class, Object.class} );
} catch ( final Exception e ) {
throw new RuntimeDroolsException( "This is a bug. Please report to development team: " + e.getMessage(),
e );
}
}
- public int getHashCode(final Object object) {
- return getIntValue( object );
+ public int getHashCode(InternalWorkingMemory workingMemory, final Object object) {
+ return getIntValue( workingMemory, object );
}
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseLongClassFieldExtractors.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseLongClassFieldExtractors.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseLongClassFieldExtractors.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -5,6 +5,7 @@
import org.drools.RuntimeDroolsException;
import org.drools.base.BaseClassFieldExtractor;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
public abstract class BaseLongClassFieldExtractors extends BaseClassFieldExtractor {
@@ -31,57 +32,57 @@
valueType );
}
- public Object getValue(final Object object) {
- return new Long( getLongValue( object ) );
+ public Object getValue(InternalWorkingMemory workingMemory, final Object object) {
+ return new Long( getLongValue( workingMemory, object ) );
}
- public boolean getBooleanValue(final Object object) {
+ public boolean getBooleanValue(InternalWorkingMemory workingMemory, final Object object) {
throw new RuntimeDroolsException( "Conversion to boolean not supported from long" );
}
- public byte getByteValue(final Object object) {
- return (byte) getLongValue( object );
+ public byte getByteValue(InternalWorkingMemory workingMemory, final Object object) {
+ return (byte) getLongValue( workingMemory, object );
}
- public char getCharValue(final Object object) {
+ public char getCharValue(InternalWorkingMemory workingMemory, final Object object) {
throw new RuntimeDroolsException( "Conversion to char not supported from long" );
}
- public double getDoubleValue(final Object object) {
- return getLongValue( object );
+ public double getDoubleValue(InternalWorkingMemory workingMemory, final Object object) {
+ return getLongValue( workingMemory, object );
}
- public float getFloatValue(final Object object) {
- return getLongValue( object );
+ public float getFloatValue(InternalWorkingMemory workingMemory, final Object object) {
+ return getLongValue( workingMemory, object );
}
- public int getIntValue(final Object object) {
- return (int) getLongValue( object );
+ public int getIntValue(InternalWorkingMemory workingMemory, final Object object) {
+ return (int) getLongValue( workingMemory, object );
}
- public abstract long getLongValue(Object object);
+ public abstract long getLongValue(InternalWorkingMemory workingMemory, Object object);
- public short getShortValue(final Object object) {
- return (short) getLongValue( object );
+ public short getShortValue(InternalWorkingMemory workingMemory, final Object object) {
+ return (short) getLongValue( workingMemory, object );
}
- public boolean isNullValue(final Object object) {
+ public boolean isNullValue(InternalWorkingMemory workingMemory, final Object object) {
return false;
}
public Method getNativeReadMethod() {
try {
return this.getClass().getDeclaredMethod( "getLongValue",
- new Class[]{Object.class} );
+ new Class[]{InternalWorkingMemory.class, Object.class} );
} catch ( final Exception e ) {
throw new RuntimeDroolsException( "This is a bug. Please report to development team: " + e.getMessage(),
e );
}
}
- public int getHashCode(final Object object) {
- final long temp = getLongValue( object );
+ public int getHashCode(InternalWorkingMemory workingMemory, final Object object) {
+ final long temp = getLongValue( workingMemory, object );
return (int) (temp ^ (temp >>> 32));
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseObjectClassFieldExtractor.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseObjectClassFieldExtractor.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseObjectClassFieldExtractor.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -5,6 +5,7 @@
import org.drools.RuntimeDroolsException;
import org.drools.base.BaseClassFieldExtractor;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
public abstract class BaseObjectClassFieldExtractor extends BaseClassFieldExtractor {
@@ -24,12 +25,12 @@
fieldName );
}
- public abstract Object getValue(Object object);
+ public abstract Object getValue(InternalWorkingMemory workingMemory, Object object);
- public boolean getBooleanValue(final Object object) {
+ public boolean getBooleanValue(InternalWorkingMemory workingMemory, final Object object) {
// this can be improved by generating specific
// bytecode generation in the subclass, avoiding the if instanceof
- final Object value = getValue( object );
+ final Object value = getValue( workingMemory, object );
if ( value instanceof Boolean ) {
return ((Boolean) value).booleanValue();
@@ -37,10 +38,10 @@
throw new RuntimeDroolsException( "Conversion to boolean not supported from " + value.getClass().getName() );
}
- public byte getByteValue(final Object object) {
+ public byte getByteValue(InternalWorkingMemory workingMemory, final Object object) {
// this can be improved by generating specific
// bytecode generation in the subclass, avoiding the if instanceof
- final Object value = getValue( object );
+ final Object value = getValue( workingMemory, object );
if ( value instanceof Number ) {
return ((Number) value).byteValue();
@@ -48,10 +49,10 @@
throw new RuntimeDroolsException( "Conversion to byte not supported from " + value.getClass().getName() );
}
- public char getCharValue(final Object object) {
+ public char getCharValue(InternalWorkingMemory workingMemory, final Object object) {
// this can be improved by generating specific
// bytecode generation in the subclass, avoiding the if instanceof
- final Object value = getValue( object );
+ final Object value = getValue( workingMemory, object );
if ( value instanceof Character ) {
return ((Character) value).charValue();
@@ -59,10 +60,10 @@
throw new RuntimeDroolsException( "Conversion to char not supported from " + value.getClass().getName() );
}
- public double getDoubleValue(final Object object) {
+ public double getDoubleValue(InternalWorkingMemory workingMemory, final Object object) {
// this can be improved by generating specific
// bytecode generation in the subclass, avoiding the if instanceof
- final Object value = getValue( object );
+ final Object value = getValue( workingMemory, object );
if ( value instanceof Number ) {
return ((Number) value).doubleValue();
@@ -70,10 +71,10 @@
throw new RuntimeDroolsException( "Conversion to double not supported from " + value.getClass().getName() );
}
- public float getFloatValue(final Object object) {
+ public float getFloatValue(InternalWorkingMemory workingMemory, final Object object) {
// this can be improved by generating specific
// bytecode generation in the subclass, avoiding the if instanceof
- final Object value = getValue( object );
+ final Object value = getValue( workingMemory, object );
if ( value instanceof Number ) {
return ((Number) value).floatValue();
@@ -81,10 +82,10 @@
throw new RuntimeDroolsException( "Conversion to float not supported from " + value.getClass().getName() );
}
- public int getIntValue(final Object object) {
+ public int getIntValue(InternalWorkingMemory workingMemory, final Object object) {
// this can be improved by generating specific
// bytecode generation in the subclass, avoiding the if instanceof
- final Object value = getValue( object );
+ final Object value = getValue( workingMemory, object );
if ( value instanceof Number ) {
return ((Number) value).intValue();
@@ -92,10 +93,10 @@
throw new RuntimeDroolsException( "Conversion to int not supported from " + value.getClass().getName() );
}
- public long getLongValue(final Object object) {
+ public long getLongValue(InternalWorkingMemory workingMemory, final Object object) {
// this can be improved by generating specific
// bytecode generation in the subclass, avoiding the if instanceof
- final Object value = getValue( object );
+ final Object value = getValue( workingMemory, object );
if ( value instanceof Number ) {
return ((Number) value).longValue();
@@ -103,10 +104,10 @@
throw new RuntimeDroolsException( "Conversion to long not supported from " + value.getClass().getName() );
}
- public short getShortValue(final Object object) {
+ public short getShortValue(InternalWorkingMemory workingMemory, final Object object) {
// this can be improved by generating specific
// bytecode generation in the subclass, avoiding the if instanceof
- final Object value = getValue( object );
+ final Object value = getValue( workingMemory, object );
if ( value instanceof Number ) {
return ((Number) value).shortValue();
@@ -114,26 +115,26 @@
throw new RuntimeDroolsException( "Conversion to short not supported from " + value.getClass().getName() );
}
- public boolean isNullValue(final Object object) {
+ public boolean isNullValue(InternalWorkingMemory workingMemory, final Object object) {
if (object == null) {
return true;
} else {
- return getValue( object ) == null;
+ return getValue( workingMemory, object ) == null;
}
}
public Method getNativeReadMethod() {
try {
return this.getClass().getDeclaredMethod( "getValue",
- new Class[]{Object.class} );
+ new Class[]{InternalWorkingMemory.class, Object.class} );
} catch ( final Exception e ) {
throw new RuntimeDroolsException( "This is a bug. Please report to development team: " + e.getMessage(),
e );
}
}
- public int getHashCode(final Object object) {
- final Object value = getValue( object );
+ public int getHashCode(InternalWorkingMemory workingMemory, final Object object) {
+ final Object value = getValue( workingMemory, object );
return (value != null) ? value.hashCode() : 0;
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseShortClassFieldExtractor.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseShortClassFieldExtractor.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/BaseShortClassFieldExtractor.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -5,6 +5,7 @@
import org.drools.RuntimeDroolsException;
import org.drools.base.BaseClassFieldExtractor;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
public abstract class BaseShortClassFieldExtractor extends BaseClassFieldExtractor {
@@ -31,56 +32,56 @@
valueType );
}
- public Object getValue(final Object object) {
- return new Long( getShortValue( object ) );
+ public Object getValue(InternalWorkingMemory workingMemory, final Object object) {
+ return new Long( getShortValue( workingMemory, object ) );
}
- public boolean getBooleanValue(final Object object) {
+ public boolean getBooleanValue(InternalWorkingMemory workingMemory, final Object object) {
throw new RuntimeDroolsException( "Conversion to boolean not supported from short" );
}
- public byte getByteValue(final Object object) {
- return (byte) getShortValue( object );
+ public byte getByteValue(InternalWorkingMemory workingMemory, final Object object) {
+ return (byte) getShortValue( workingMemory, object );
}
- public char getCharValue(final Object object) {
+ public char getCharValue(InternalWorkingMemory workingMemory, final Object object) {
throw new RuntimeDroolsException( "Conversion to char not supported from short" );
}
- public double getDoubleValue(final Object object) {
- return getShortValue( object );
+ public double getDoubleValue(InternalWorkingMemory workingMemory, final Object object) {
+ return getShortValue( workingMemory, object );
}
- public float getFloatValue(final Object object) {
- return getShortValue( object );
+ public float getFloatValue(InternalWorkingMemory workingMemory, final Object object) {
+ return getShortValue( workingMemory, object );
}
- public int getIntValue(final Object object) {
- return getShortValue( object );
+ public int getIntValue(InternalWorkingMemory workingMemory, final Object object) {
+ return getShortValue( workingMemory, object );
}
- public long getLongValue(final Object object) {
- return getShortValue( object );
+ public long getLongValue(InternalWorkingMemory workingMemory, final Object object) {
+ return getShortValue( workingMemory, object );
}
- public abstract short getShortValue(Object object);
+ public abstract short getShortValue(InternalWorkingMemory workingMemory, Object object);
- public boolean isNullValue(final Object object) {
+ public boolean isNullValue(InternalWorkingMemory workingMemory, final Object object) {
return false;
}
public Method getNativeReadMethod() {
try {
return this.getClass().getDeclaredMethod( "getShortValue",
- new Class[]{Object.class} );
+ new Class[]{InternalWorkingMemory.class, Object.class} );
} catch ( final Exception e ) {
throw new RuntimeDroolsException( "This is a bug. Please report to development team: " + e.getMessage(),
e );
}
}
- public int getHashCode(final Object object) {
- return getShortValue( object );
+ public int getHashCode(InternalWorkingMemory workingMemory, final Object object) {
+ return getShortValue( workingMemory, object );
}
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/MVELClassFieldExtractor.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/MVELClassFieldExtractor.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/MVELClassFieldExtractor.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -25,6 +25,7 @@
import org.drools.base.ClassFieldExtractorCache;
import org.drools.base.ClassFieldExtractorFactory;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
import org.drools.spi.Extractor;
import org.drools.spi.FieldExtractor;
import org.mvel.CompiledExpression;
@@ -69,13 +70,13 @@
/* (non-Javadoc)
* @see org.drools.base.extractors.BaseObjectClassFieldExtractor#getValue(java.lang.Object)
*/
- public Object getValue(Object object) {
+ public Object getValue(InternalWorkingMemory workingMemory, Object object) {
for( Iterator it = this.extractors.entrySet().iterator(); it.hasNext(); ) {
Map.Entry entry = (Map.Entry) it.next();
String var = (String) entry.getKey();
FieldExtractor extr = (FieldExtractor) entry.getValue();
- this.variables.put( var, extr.getValue( object ));
+ this.variables.put( var, extr.getValue( workingMemory, object ));
}
return MVEL.executeExpression( mvelExpression, this.variables );
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/SelfReferenceClassFieldExtractor.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/SelfReferenceClassFieldExtractor.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/extractors/SelfReferenceClassFieldExtractor.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -18,6 +18,7 @@
import org.drools.base.ShadowProxy;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
/**
* A special field extractor for the self reference "this".
@@ -35,11 +36,11 @@
ValueType.determineValueType( clazz ) ); // value type
}
- public Object getValue(final Object object) {
+ public Object getValue(InternalWorkingMemory workingMemory, final Object object) {
return (object instanceof ShadowProxy) ? ((ShadowProxy) object).getShadowedObject() : object;
}
- public boolean isNullValue(final Object object) {
- return getValue( object ) == null;
+ public boolean isNullValue(InternalWorkingMemory workingMemory, final Object object) {
+ return getValue( workingMemory, object ) == null;
}
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/mvel/DroolsMVELLocalDeclarationVariable.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/mvel/DroolsMVELLocalDeclarationVariable.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/mvel/DroolsMVELLocalDeclarationVariable.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -2,6 +2,7 @@
import java.io.Serializable;
+import org.drools.common.InternalWorkingMemory;
import org.drools.rule.Declaration;
import org.mvel.integration.VariableResolver;
@@ -28,7 +29,7 @@
}
public Object getValue() {
- return this.declaration.getValue( this.factory.getObject() );
+ return this.declaration.getValue( (InternalWorkingMemory) this.factory.getWorkingMemory(), this.factory.getObject() );
}
public void setValue(final Object value) {
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/mvel/DroolsMVELPreviousDeclarationVariable.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/mvel/DroolsMVELPreviousDeclarationVariable.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/mvel/DroolsMVELPreviousDeclarationVariable.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -2,6 +2,7 @@
import java.io.Serializable;
+import org.drools.common.InternalWorkingMemory;
import org.drools.rule.Declaration;
import org.mvel.integration.VariableResolver;
@@ -28,7 +29,7 @@
}
public Object getValue() {
- return this.declaration.getValue( this.factory.getValue( this.declaration ) );
+ return this.declaration.getValue( (InternalWorkingMemory) this.factory.getWorkingMemory(), this.factory.getValue( this.declaration ) );
}
public void setValue(final Object value) {
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/facttemplates/FactTemplateFieldExtractor.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/facttemplates/FactTemplateFieldExtractor.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/facttemplates/FactTemplateFieldExtractor.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -4,6 +4,7 @@
import org.drools.RuntimeDroolsException;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
import org.drools.spi.FieldExtractor;
public class FactTemplateFieldExtractor
@@ -24,7 +25,7 @@
return this.factTemplate.getFieldTemplate( this.fieldIndex ).getValueType();
}
- public Object getValue(final Object object) {
+ public Object getValue(InternalWorkingMemory workingMemory, final Object object) {
return ((Fact) object).getFieldValue( this.fieldIndex );
}
@@ -36,35 +37,35 @@
return Fact.class;//this.factTemplate.getFieldTemplate( fieldIndex ).getValueType().getClass();
}
- public boolean getBooleanValue(final Object object) {
+ public boolean getBooleanValue(InternalWorkingMemory workingMemory, final Object object) {
return ((Boolean) ((Fact) object).getFieldValue( this.fieldIndex )).booleanValue();
}
- public byte getByteValue(final Object object) {
+ public byte getByteValue(InternalWorkingMemory workingMemory, final Object object) {
return ((Number) ((Fact) object).getFieldValue( this.fieldIndex )).byteValue();
}
- public char getCharValue(final Object object) {
+ public char getCharValue(InternalWorkingMemory workingMemory, final Object object) {
return ((Character) ((Fact) object).getFieldValue( this.fieldIndex )).charValue();
}
- public double getDoubleValue(final Object object) {
+ public double getDoubleValue(InternalWorkingMemory workingMemory, final Object object) {
return ((Number) ((Fact) object).getFieldValue( this.fieldIndex )).doubleValue();
}
- public float getFloatValue(final Object object) {
+ public float getFloatValue(InternalWorkingMemory workingMemory, final Object object) {
return ((Number) ((Fact) object).getFieldValue( this.fieldIndex )).floatValue();
}
- public int getIntValue(final Object object) {
+ public int getIntValue(InternalWorkingMemory workingMemory, final Object object) {
return ((Number) ((Fact) object).getFieldValue( this.fieldIndex )).intValue();
}
- public long getLongValue(final Object object) {
+ public long getLongValue(InternalWorkingMemory workingMemory, final Object object) {
return ((Number) ((Fact) object).getFieldValue( this.fieldIndex )).longValue();
}
- public short getShortValue(final Object object) {
+ public short getShortValue(InternalWorkingMemory workingMemory, final Object object) {
return ((Number) ((Fact) object).getFieldValue( this.fieldIndex )).shortValue();
}
@@ -78,11 +79,16 @@
}
}
- public int getHashCode(final Object object) {
- return getValue( object ).hashCode();
+ public int getHashCode(InternalWorkingMemory workingMemory, final Object object) {
+ return getValue( workingMemory, object ).hashCode();
}
- public boolean isNullValue(Object object) {
+ public boolean isGlobal() {
+ return false;
+ }
+
+ public boolean isNullValue(InternalWorkingMemory workingMemory,
+ Object object) {
return ((Fact) object).getFieldValue( this.fieldIndex ) == null;
}
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/CompositeObjectSinkAdapter.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/CompositeObjectSinkAdapter.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/CompositeObjectSinkAdapter.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -460,20 +460,20 @@
this.index = index;
final ValueType vtype = extractor.getValueType();
if ( vtype.isBoolean() ) {
- this.bvalue = extractor.getBooleanValue( value );
+ this.bvalue = extractor.getBooleanValue( null, value );
this.type = BOOL;
this.setHashCode( this.bvalue ? 1231 : 1237 );
} else if ( vtype.isIntegerNumber() ) {
- this.lvalue = extractor.getLongValue( value );
+ this.lvalue = extractor.getLongValue( null, value );
this.type = LONG;
this.setHashCode( (int) (this.lvalue ^ (this.lvalue >>> 32)) );
} else if ( vtype.isFloatNumber() ) {
- this.dvalue = extractor.getDoubleValue( value );
+ this.dvalue = extractor.getDoubleValue( null, value );
this.type = DOUBLE;
final long temp = Double.doubleToLongBits( this.dvalue );
this.setHashCode( (int) (temp ^ (temp >>> 32)) );
} else {
- this.ovalue = extractor.getValue( value );
+ this.ovalue = extractor.getValue( null, value );
this.type = OBJECT;
this.setHashCode( this.ovalue.hashCode() );
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/builder/PatternBuilder.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/builder/PatternBuilder.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/builder/PatternBuilder.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -125,7 +125,7 @@
boolean isAlphaConstraint = true;
for ( int i = 0; isAlphaConstraint && i < declarations.length; i++ ) {
- if ( declarations[i].getPattern() != pattern ) {
+ if ( ! declarations[i].isGlobal() && declarations[i].getPattern() != pattern ) {
isAlphaConstraint = false;
}
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/Declaration.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/Declaration.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/Declaration.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -43,6 +43,7 @@
import java.io.Serializable;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
import org.drools.spi.Extractor;
/*
@@ -160,45 +161,49 @@
return this.extractor;
}
- public Object getValue(final Object object) {
- return this.extractor.getValue( object );
+ public Object getValue(InternalWorkingMemory workingMemory, final Object object) {
+ return this.extractor.getValue( workingMemory, object );
}
- public char getCharValue(final Object object) {
- return this.extractor.getCharValue( object );
+ public char getCharValue(InternalWorkingMemory workingMemory, final Object object) {
+ return this.extractor.getCharValue( workingMemory, object );
}
- public int getIntValue(final Object object) {
- return this.extractor.getIntValue( object );
+ public int getIntValue(InternalWorkingMemory workingMemory, final Object object) {
+ return this.extractor.getIntValue( workingMemory, object );
}
- public byte getByteValue(final Object object) {
- return this.extractor.getByteValue( object );
+ public byte getByteValue(InternalWorkingMemory workingMemory, final Object object) {
+ return this.extractor.getByteValue( workingMemory, object );
}
- public short getShortValue(final Object object) {
- return this.extractor.getShortValue( object );
+ public short getShortValue(InternalWorkingMemory workingMemory, final Object object) {
+ return this.extractor.getShortValue( workingMemory, object );
}
- public long getLongValue(final Object object) {
- return this.extractor.getLongValue( object );
+ public long getLongValue(InternalWorkingMemory workingMemory, final Object object) {
+ return this.extractor.getLongValue( workingMemory, object );
}
- public float getFloatValue(final Object object) {
- return this.extractor.getFloatValue( object );
+ public float getFloatValue(InternalWorkingMemory workingMemory, final Object object) {
+ return this.extractor.getFloatValue( workingMemory, object );
}
- public double getDoubleValue(final Object object) {
- return this.extractor.getDoubleValue( object );
+ public double getDoubleValue(InternalWorkingMemory workingMemory, final Object object) {
+ return this.extractor.getDoubleValue( workingMemory, object );
}
- public boolean getBooleanValue(final Object object) {
- return this.extractor.getBooleanValue( object );
+ public boolean getBooleanValue(InternalWorkingMemory workingMemory, final Object object) {
+ return this.extractor.getBooleanValue( workingMemory, object );
}
- public int getHashCode(final Object object) {
- return this.extractor.getHashCode( object );
+ public int getHashCode(InternalWorkingMemory workingMemory, final Object object) {
+ return this.extractor.getHashCode( workingMemory, object );
}
+
+ public boolean isGlobal() {
+ return this.extractor.isGlobal();
+ }
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/LiteralRestriction.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/LiteralRestriction.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/LiteralRestriction.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -58,23 +58,23 @@
public boolean isAllowed(final Extractor extractor,
final Object object,
final InternalWorkingMemory workingMemoiry) {
- return this.evaluator.evaluate( extractor,
- object,
- this.field );
+ return this.evaluator.evaluate( null,
+ extractor,
+ object, this.field );
}
public boolean isAllowedCachedLeft(final ContextEntry context,
final Object object) {
- return this.evaluator.evaluate( ((LiteralContextEntry) context).getFieldExtractor(),
- object,
- this.field );
+ return this.evaluator.evaluate( null,
+ ((LiteralContextEntry) context).getFieldExtractor(),
+ object, this.field );
}
public boolean isAllowedCachedRight(final ReteTuple tuple,
final ContextEntry context) {
- return this.evaluator.evaluate( ((LiteralContextEntry) context).getFieldExtractor(),
- ((LiteralContextEntry) context).getObject(),
- this.field );
+ return this.evaluator.evaluate( null,
+ ((LiteralContextEntry) context).getFieldExtractor(),
+ ((LiteralContextEntry) context).getObject(), this.field );
}
/**
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/ReturnValueRestriction.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/ReturnValueRestriction.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/ReturnValueRestriction.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -140,13 +140,13 @@
final Tuple tuple,
final WorkingMemory workingMemory) {
try {
- return this.evaluator.evaluate( extractor,
- object,
- this.expression.evaluate( object,
- tuple,
- this.previousDeclarations,
- this.localDeclarations,
- workingMemory ) );
+ return this.evaluator.evaluate( null,
+ extractor,
+ object, this.expression.evaluate( object,
+ tuple,
+ this.previousDeclarations,
+ this.localDeclarations,
+ workingMemory ) );
} catch ( final Exception e ) {
throw new RuntimeDroolsException( e );
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/VariableRestriction.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/VariableRestriction.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/VariableRestriction.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -60,23 +60,23 @@
public boolean isAllowed(final Extractor extractor,
final Object object,
- final InternalWorkingMemory workingMemoiry) {
- return this.evaluator.evaluate( this.contextEntry.extractor,
+ final InternalWorkingMemory workingMemory) {
+ return this.evaluator.evaluate( workingMemory,
+ this.contextEntry.extractor,
object,
- this.contextEntry.declaration.getExtractor(),
- object );
+ this.contextEntry.declaration.getExtractor(), object );
}
public boolean isAllowedCachedLeft(final ContextEntry context,
final Object object) {
- return this.evaluator.evaluateCachedLeft( (VariableContextEntry) context,
- object );
+ return this.evaluator.evaluateCachedLeft( ((VariableContextEntry) context).workingMemory,
+ (VariableContextEntry) context, object );
}
public boolean isAllowedCachedRight(final ReteTuple tuple,
final ContextEntry context) {
- return this.evaluator.evaluateCachedRight( (VariableContextEntry) context,
- tuple.get( this.declaration ).getObject() );
+ return this.evaluator.evaluateCachedRight( ((VariableContextEntry) context).workingMemory,
+ (VariableContextEntry) context, tuple.get( this.declaration ).getObject() );
}
public String toString() {
@@ -146,6 +146,7 @@
public ContextEntry entry;
public boolean leftNull;
public boolean rightNull;
+ public InternalWorkingMemory workingMemory;
public VariableContextEntry(final FieldExtractor extractor,
final Declaration declaration) {
@@ -201,15 +202,17 @@
public void updateFromTuple(final InternalWorkingMemory workingMemory,
final ReteTuple tuple) {
this.reteTuple = tuple;
- this.leftNull = this.declaration.getExtractor().isNullValue( tuple.get( this.declaration ).getObject() );
- this.left = this.declaration.getExtractor().getValue( tuple.get( this.declaration ).getObject() );
+ this.workingMemory = workingMemory;
+ this.leftNull = this.declaration.getExtractor().isNullValue( workingMemory, tuple.get( this.declaration ).getObject() );
+ this.left = this.declaration.getExtractor().getValue( workingMemory, tuple.get( this.declaration ).getObject() );
}
public void updateFromFactHandle(final InternalWorkingMemory workingMemory,
final InternalFactHandle handle) {
this.object = handle.getObject();
- this.rightNull = this.extractor.isNullValue( handle.getObject() );
- this.right = this.extractor.getValue( handle.getObject() );
+ this.workingMemory = workingMemory;
+ this.rightNull = this.extractor.isNullValue( workingMemory, handle.getObject() );
+ this.right = this.extractor.getValue( workingMemory, handle.getObject() );
}
}
@@ -229,10 +232,11 @@
public void updateFromTuple(final InternalWorkingMemory workingMemory,
final ReteTuple tuple) {
this.reteTuple = tuple;
- this.leftNull = this.declaration.getExtractor().isNullValue( tuple.get( this.declaration ).getObject() );
+ this.workingMemory = workingMemory;
+ this.leftNull = this.declaration.getExtractor().isNullValue( workingMemory, tuple.get( this.declaration ).getObject() );
if (!leftNull) {
- this.left = this.declaration.getExtractor().getLongValue( tuple.get( this.declaration ).getObject() );
+ this.left = this.declaration.getExtractor().getLongValue( workingMemory, tuple.get( this.declaration ).getObject() );
} else {
this.left = 0;
}
@@ -241,10 +245,11 @@
public void updateFromFactHandle(final InternalWorkingMemory workingMemory,
final InternalFactHandle handle) {
this.object = handle.getObject();
- this.rightNull = this.extractor.isNullValue( handle.getObject() );
+ this.workingMemory = workingMemory;
+ this.rightNull = this.extractor.isNullValue( workingMemory, handle.getObject() );
if ( !rightNull ) { // avoid a NullPointerException
- this.right = this.extractor.getLongValue( handle.getObject() );
+ this.right = this.extractor.getLongValue( workingMemory, handle.getObject() );
} else {
this.right = 0;
}
@@ -267,10 +272,11 @@
public void updateFromTuple(final InternalWorkingMemory workingMemory,
final ReteTuple tuple) {
this.reteTuple = tuple;
- this.leftNull = this.declaration.getExtractor().isNullValue( tuple.get( this.declaration ).getObject() );
+ this.workingMemory = workingMemory;
+ this.leftNull = this.declaration.getExtractor().isNullValue( workingMemory, tuple.get( this.declaration ).getObject() );
if (!leftNull) {
- this.left = this.declaration.getExtractor().getDoubleValue( tuple.get( this.declaration ).getObject() );
+ this.left = this.declaration.getExtractor().getDoubleValue( workingMemory, tuple.get( this.declaration ).getObject() );
} else {
this.left = 0;
}
@@ -279,10 +285,11 @@
public void updateFromFactHandle(final InternalWorkingMemory workingMemory,
final InternalFactHandle handle) {
this.object = handle.getObject();
- this.rightNull = this.extractor.isNullValue( handle.getObject() );
+ this.workingMemory = workingMemory;
+ this.rightNull = this.extractor.isNullValue( workingMemory, handle.getObject() );
if ( !rightNull ) { // avoid a NullPointerException
- this.right = this.extractor.getDoubleValue( handle.getObject() );
+ this.right = this.extractor.getDoubleValue( workingMemory, handle.getObject() );
} else {
this.right = 0;
}
@@ -304,10 +311,11 @@
public void updateFromTuple(final InternalWorkingMemory workingMemory,
final ReteTuple tuple) {
this.reteTuple = tuple;
- this.leftNull = this.declaration.getExtractor().isNullValue( tuple.get( this.declaration ).getObject() );
+ this.workingMemory = workingMemory;
+ this.leftNull = this.declaration.getExtractor().isNullValue( workingMemory, tuple.get( this.declaration ).getObject() );
if ( !leftNull ) {
- this.left = this.declaration.getExtractor().getBooleanValue( tuple.get( this.declaration ).getObject() );
+ this.left = this.declaration.getExtractor().getBooleanValue( workingMemory, tuple.get( this.declaration ).getObject() );
} else {
this.left = false;
}
@@ -316,10 +324,11 @@
public void updateFromFactHandle(final InternalWorkingMemory workingMemory,
final InternalFactHandle handle) {
this.object = handle.getObject();
- this.rightNull = this.extractor.isNullValue( handle.getObject() );
+ this.workingMemory = workingMemory;
+ this.rightNull = this.extractor.isNullValue( workingMemory, handle.getObject() );
if ( !rightNull ) { // avoid a NullPointerException
- this.right = this.extractor.getBooleanValue( handle.getObject() );
+ this.right = this.extractor.getBooleanValue( workingMemory, handle.getObject() );
} else {
this.right = false;
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/spi/Evaluator.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/spi/Evaluator.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/spi/Evaluator.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -20,6 +20,7 @@
import org.drools.base.ValueType;
import org.drools.base.evaluators.Operator;
+import org.drools.common.InternalWorkingMemory;
import org.drools.rule.VariableRestriction.VariableContextEntry;
public interface Evaluator
@@ -33,29 +34,33 @@
/**
* This method will extract the value from the object1 using the
* extractor and compare it with the object2.
- *
+ * @param workingMemory TODO
* @param extractor
* The extractor used to get the source value from the object
* @param object1
* The source object to evaluate
* @param object2
* The actual value to compare to
- *
+ *
* @return Returns true if evaluation is successfull. false otherwise.
*/
- public boolean evaluate(Extractor extractor,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ Extractor extractor,
Object object1,
FieldValue value);
- public boolean evaluate(Extractor leftExtractor,
+ public boolean evaluate(InternalWorkingMemory workingMemory,
+ Extractor leftExtractor,
Object left,
Extractor rightExtractor,
Object right);
- public boolean evaluateCachedLeft(VariableContextEntry context,
+ public boolean evaluateCachedLeft(InternalWorkingMemory workingMemory,
+ VariableContextEntry context,
Object object1);
- public boolean evaluateCachedRight(VariableContextEntry context,
+ public boolean evaluateCachedRight(InternalWorkingMemory workingMemory,
+ VariableContextEntry context,
Object object2);
}
\ No newline at end of file
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/spi/Extractor.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/spi/Extractor.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/spi/Extractor.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -20,30 +20,33 @@
import java.lang.reflect.Method;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
public interface Extractor
extends
Serializable {
- public Object getValue(Object object);
+ public Object getValue(InternalWorkingMemory workingMemory, Object object);
- public char getCharValue(Object object);
+ public char getCharValue(InternalWorkingMemory workingMemory, Object object);
- public int getIntValue(Object object);
+ public int getIntValue(InternalWorkingMemory workingMemory, Object object);
- public byte getByteValue(Object object);
+ public byte getByteValue(InternalWorkingMemory workingMemory, Object object);
- public short getShortValue(Object object);
+ public short getShortValue(InternalWorkingMemory workingMemory, Object object);
- public long getLongValue(Object object);
+ public long getLongValue(InternalWorkingMemory workingMemory, Object object);
- public float getFloatValue(Object object);
+ public float getFloatValue(InternalWorkingMemory workingMemory, Object object);
- public double getDoubleValue(Object object);
+ public double getDoubleValue(InternalWorkingMemory workingMemory, Object object);
- public boolean getBooleanValue(Object object);
+ public boolean getBooleanValue(InternalWorkingMemory workingMemory, Object object);
- public boolean isNullValue(Object object);
+ public boolean isNullValue(InternalWorkingMemory workingMemory, Object object);
+
+ public boolean isGlobal();
public ValueType getValueType();
@@ -51,6 +54,6 @@
public Method getNativeReadMethod();
- public int getHashCode(Object object);
+ public int getHashCode(InternalWorkingMemory workingMemory, Object object);
}
\ No newline at end of file
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/spi/GlobalExtractor.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/spi/GlobalExtractor.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/spi/GlobalExtractor.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -19,13 +19,13 @@
import java.lang.reflect.Method;
import java.util.Map;
+import org.drools.RuntimeDroolsException;
import org.drools.base.ClassObjectType;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
/**
- * This is a dummy extractor used during rule compilation and build. It is not
- * supposed to be used to extract real global values during runtime, so
- * all getValueXXX() methods will raise unsupported operation exceptions.
+ * This is a global variable extractor used to get a global variable value
*
* @author etirelli
*/
@@ -43,8 +43,8 @@
this.objectType = new ClassObjectType( (Class) map.get( this.key ));
}
- public Object getValue(final Object object) {
- throw new UnsupportedOperationException("Operation not suported for globals");
+ public Object getValue(InternalWorkingMemory workingMemory, final Object object) {
+ return workingMemory.getGlobal( key );
}
public ObjectType getObjectType() {
@@ -59,44 +59,75 @@
return this.objectType.getValueType();
}
- public boolean getBooleanValue(final Object object) {
- throw new UnsupportedOperationException("Operation not suported for globals");
+ public boolean getBooleanValue(InternalWorkingMemory workingMemory, final Object object) {
+ if( this.objectType.getValueType().isBoolean() ) {
+ return ((Boolean) workingMemory.getGlobal( key )).booleanValue();
+ }
+ throw new ClassCastException("Not possible to convert global '"+key+"' into a boolean.");
}
- public byte getByteValue(final Object object) {
- throw new UnsupportedOperationException("Operation not suported for globals");
+ public byte getByteValue(InternalWorkingMemory workingMemory, final Object object) {
+ if( this.objectType.getValueType().isNumber() ) {
+ return ((Number) workingMemory.getGlobal( key )).byteValue();
+ }
+ throw new ClassCastException("Not possible to convert global '"+key+"' into a byte.");
}
- public char getCharValue(final Object object) {
- throw new UnsupportedOperationException("Operation not suported for globals");
+ public char getCharValue(InternalWorkingMemory workingMemory, final Object object) {
+ if( this.objectType.getValueType().isChar() ) {
+ return ((Character) workingMemory.getGlobal( key )).charValue();
+ }
+ throw new ClassCastException("Not possible to convert global '"+key+"' into a char.");
}
- public double getDoubleValue(final Object object) {
- throw new UnsupportedOperationException("Operation not suported for globals");
+ public double getDoubleValue(InternalWorkingMemory workingMemory, final Object object) {
+ if( this.objectType.getValueType().isNumber() ) {
+ return ((Number) workingMemory.getGlobal( key )).doubleValue();
+ }
+ throw new ClassCastException("Not possible to convert global '"+key+"' into a double.");
}
- public float getFloatValue(final Object object) {
- throw new UnsupportedOperationException("Operation not suported for globals");
+ public float getFloatValue(InternalWorkingMemory workingMemory, final Object object) {
+ if( this.objectType.getValueType().isNumber() ) {
+ return ((Number) workingMemory.getGlobal( key )).floatValue();
+ }
+ throw new ClassCastException("Not possible to convert global '"+key+"' into a float.");
}
- public int getIntValue(final Object object) {
- throw new UnsupportedOperationException("Operation not suported for globals");
+ public int getIntValue(InternalWorkingMemory workingMemory, final Object object) {
+ if( this.objectType.getValueType().isNumber() ) {
+ return ((Number) workingMemory.getGlobal( key )).intValue();
+ }
+ throw new ClassCastException("Not possible to convert global '"+key+"' into an int.");
}
- public long getLongValue(final Object object) {
- throw new UnsupportedOperationException("Operation not suported for globals");
+ public long getLongValue(InternalWorkingMemory workingMemory, final Object object) {
+ if( this.objectType.getValueType().isNumber() ) {
+ return ((Number) workingMemory.getGlobal( key )).longValue();
+ }
+ throw new ClassCastException("Not possible to convert global '"+key+"' into a long.");
}
- public short getShortValue(final Object object) {
- throw new UnsupportedOperationException("Operation not suported for globals");
+ public short getShortValue(InternalWorkingMemory workingMemory, final Object object) {
+ if( this.objectType.getValueType().isNumber() ) {
+ return ((Number) workingMemory.getGlobal( key )).shortValue();
+ }
+ throw new ClassCastException("Not possible to convert global '"+key+"' into a short.");
}
public Method getNativeReadMethod() {
- throw new UnsupportedOperationException("Operation not suported for globals");
+ try {
+ return this.getClass().getDeclaredMethod( "getValue",
+ new Class[]{InternalWorkingMemory.class, Object.class} );
+ } catch ( final Exception e ) {
+ throw new RuntimeDroolsException( "This is a bug. Please report to development team: " + e.getMessage(),
+ e );
+ }
}
- public int getHashCode(final Object object) {
- throw new UnsupportedOperationException("Operation not suported for globals");
+ public int getHashCode(InternalWorkingMemory workingMemory, final Object object) {
+ final Object value = getValue( workingMemory, object );
+ return (value != null) ? value.hashCode() : 0;
}
public int hashCode() {
@@ -115,7 +146,12 @@
( this.objectType == null ? other.objectType == null : this.objectType.equals( other.objectType ));
}
- public boolean isNullValue(Object object) {
- throw new UnsupportedOperationException("Operation not supported for globals");
+ public boolean isNullValue( InternalWorkingMemory workingMemory, Object object ) {
+ final Object value = getValue( workingMemory, object );
+ return value == null;
}
+
+ public boolean isGlobal() {
+ return true;
+ }
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/spi/PatternExtractor.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/spi/PatternExtractor.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/spi/PatternExtractor.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -6,6 +6,7 @@
import org.drools.base.ClassObjectType;
import org.drools.base.ShadowProxy;
import org.drools.base.ValueType;
+import org.drools.common.InternalWorkingMemory;
import org.drools.facttemplates.Fact;
/*
@@ -38,7 +39,7 @@
this.objectType = objectType;
}
- public Object getValue(final Object object) {
+ public Object getValue(InternalWorkingMemory workingMemory, final Object object) {
// need to use instanceof because an object may be created in nodes like accumulate and from
// where no shadow is applied
return (object instanceof ShadowProxy) ? ((ShadowProxy) object).getShadowedObject() : object;
@@ -61,56 +62,56 @@
return this.objectType.getValueType();
}
- public boolean getBooleanValue(final Object object) {
+ public boolean getBooleanValue(InternalWorkingMemory workingMemory, final Object object) {
if ( this.objectType.getValueType().isBoolean() ) {
return ((Boolean) object).booleanValue();
}
throw new RuntimeDroolsException( "Conversion to boolean not supported for type: " + object.getClass() );
}
- public byte getByteValue(final Object object) {
+ public byte getByteValue(InternalWorkingMemory workingMemory, final Object object) {
if ( this.objectType.getValueType().isNumber() ) {
return ((Number) object).byteValue();
}
throw new RuntimeDroolsException( "Conversion to byte not supported for type: " + object.getClass() );
}
- public char getCharValue(final Object object) {
+ public char getCharValue(InternalWorkingMemory workingMemory, final Object object) {
if ( this.objectType.getValueType().isChar() ) {
return ((Character) object).charValue();
}
throw new RuntimeDroolsException( "Conversion to char not supported for type: " + object.getClass() );
}
- public double getDoubleValue(final Object object) {
+ public double getDoubleValue(InternalWorkingMemory workingMemory, final Object object) {
if ( this.objectType.getValueType().isNumber() ) {
return ((Number) object).doubleValue();
}
throw new RuntimeDroolsException( "Conversion to double not supported for type: " + object.getClass() );
}
- public float getFloatValue(final Object object) {
+ public float getFloatValue(InternalWorkingMemory workingMemory, final Object object) {
if ( this.objectType.getValueType().isNumber() ) {
return ((Number) object).floatValue();
}
throw new RuntimeDroolsException( "Conversion to float not supported for type: " + object.getClass() );
}
- public int getIntValue(final Object object) {
+ public int getIntValue(InternalWorkingMemory workingMemory, final Object object) {
if ( this.objectType.getValueType().isNumber() ) {
return ((Number) object).intValue();
}
throw new RuntimeDroolsException( "Conversion to int not supported for type: " + object.getClass() );
}
- public long getLongValue(final Object object) {
+ public long getLongValue(InternalWorkingMemory workingMemory, final Object object) {
if ( this.objectType.getValueType().isNumber() ) {
return ((Number) object).longValue();
}
throw new RuntimeDroolsException( "Conversion to long not supported for type: " + object.getClass() );
}
- public short getShortValue(final Object object) {
+ public short getShortValue(InternalWorkingMemory workingMemory, final Object object) {
if ( this.objectType.getValueType().isNumber() ) {
return ((Number) object).shortValue();
}
@@ -120,19 +121,19 @@
public Method getNativeReadMethod() {
try {
return this.getClass().getDeclaredMethod( "getValue",
- new Class[]{Object.class} );
+ new Class[]{InternalWorkingMemory.class, Object.class} );
} catch ( final Exception e ) {
throw new RuntimeDroolsException( "This is a bug. Please report to development team: " + e.getMessage(),
e );
}
}
- public boolean isNullValue(final Object object) {
- return getValue( object ) == null;
+ public boolean isNullValue(InternalWorkingMemory workingMemory, final Object object ) {
+ return getValue( workingMemory, object ) == null;
}
- public int getHashCode(final Object object) {
- return getValue( object ).hashCode();
+ public int getHashCode(InternalWorkingMemory workingMemory, final Object object) {
+ return getValue( workingMemory, object ).hashCode();
}
public int hashCode() {
@@ -149,4 +150,8 @@
final PatternExtractor other = (PatternExtractor) obj;
return this.objectType.equals( other.objectType );
}
+
+ public boolean isGlobal() {
+ return false;
+ }
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/AbstractHashTable.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/AbstractHashTable.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/AbstractHashTable.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -463,13 +463,13 @@
public int hashCodeOf(final Object object) {
int hashCode = this.startResult;
- hashCode = TupleIndexHashTable.PRIME * hashCode + this.extractor.getHashCode( object );
+ hashCode = TupleIndexHashTable.PRIME * hashCode + this.extractor.getHashCode( null, object );
return rehash( hashCode );
}
public int hashCodeOf(final ReteTuple tuple) {
int hashCode = this.startResult;
- hashCode = TupleIndexHashTable.PRIME * hashCode + this.declaration.getHashCode( tuple.get( this.declaration ).getObject() );
+ hashCode = TupleIndexHashTable.PRIME * hashCode + this.declaration.getHashCode( null, tuple.get( this.declaration ).getObject() );
return rehash( hashCode );
}
@@ -477,29 +477,29 @@
final ReteTuple tuple) {
final Object left = tuple.get( this.declaration ).getObject();
- return this.evaluator.evaluate( this.declaration.getExtractor(),
+ return this.evaluator.evaluate( null,
+ this.declaration.getExtractor(),
left,
- this.extractor,
- right );
+ this.extractor, right );
}
public boolean equal(final Object object1,
final Object object2) {
- return this.evaluator.evaluate( this.extractor,
+ return this.evaluator.evaluate( null,
+ this.extractor,
object1,
- this.extractor,
- object2 );
+ this.extractor, object2 );
}
public boolean equal(final ReteTuple tuple1,
final ReteTuple tuple2) {
final Object object1 = tuple1.get( this.declaration ).getObject();
final Object object2 = tuple2.get( this.declaration ).getObject();
- return this.evaluator.evaluate( this.declaration.getExtractor(),
+ return this.evaluator.evaluate( null,
+ this.declaration.getExtractor(),
object1,
- this.declaration.getExtractor(),
- object2 );
+ this.declaration.getExtractor(), object2 );
}
public int rehash(int h) {
@@ -532,8 +532,8 @@
public int hashCodeOf(final Object object) {
int hashCode = this.startResult;
- hashCode = TupleIndexHashTable.PRIME * hashCode + this.index0.extractor.getHashCode( object );
- hashCode = TupleIndexHashTable.PRIME * hashCode + this.index1.extractor.getHashCode( object );
+ hashCode = TupleIndexHashTable.PRIME * hashCode + this.index0.extractor.getHashCode( null, object );
+ hashCode = TupleIndexHashTable.PRIME * hashCode + this.index1.extractor.getHashCode( null, object );
return rehash( hashCode );
}
@@ -541,8 +541,8 @@
public int hashCodeOf(final ReteTuple tuple) {
int hashCode = this.startResult;
- hashCode = TupleIndexHashTable.PRIME * hashCode + this.index0.declaration.getHashCode( tuple.get( this.index0.declaration ).getObject() );
- hashCode = TupleIndexHashTable.PRIME * hashCode + this.index1.declaration.getHashCode( tuple.get( this.index1.declaration ).getObject() );
+ hashCode = TupleIndexHashTable.PRIME * hashCode + this.index0.declaration.getHashCode( null, tuple.get( this.index0.declaration ).getObject() );
+ hashCode = TupleIndexHashTable.PRIME * hashCode + this.index1.declaration.getHashCode( null, tuple.get( this.index1.declaration ).getObject() );
return rehash( hashCode );
}
@@ -552,13 +552,13 @@
final Object left1 = tuple.get( this.index0.declaration ).getObject();
final Object left2 = tuple.get( this.index1.declaration ).getObject();
- return this.index0.evaluator.evaluate( this.index0.declaration.getExtractor(),
+ return this.index0.evaluator.evaluate( null,
+ this.index0.declaration.getExtractor(),
left1,
- this.index0.extractor,
- right ) && this.index1.evaluator.evaluate( this.index1.declaration.getExtractor(),
+ this.index0.extractor, right ) && this.index1.evaluator.evaluate( null,
+ this.index1.declaration.getExtractor(),
left2,
- this.index1.extractor,
- right );
+ this.index1.extractor, right );
}
public boolean equal(final ReteTuple tuple1,
@@ -569,24 +569,24 @@
final Object object21 = tuple1.get( this.index1.declaration ).getObject();
final Object object22 = tuple2.get( this.index1.declaration ).getObject();
- return this.index0.evaluator.evaluate( this.index0.declaration.getExtractor(),
+ return this.index0.evaluator.evaluate( null,
+ this.index0.declaration.getExtractor(),
object11,
- this.index0.declaration.getExtractor(),
- object12 ) && this.index1.evaluator.evaluate( this.index1.declaration.getExtractor(),
+ this.index0.declaration.getExtractor(), object12 ) && this.index1.evaluator.evaluate( null,
+ this.index1.declaration.getExtractor(),
object21,
- this.index1.declaration.getExtractor(),
- object22 );
+ this.index1.declaration.getExtractor(), object22 );
}
public boolean equal(final Object object1,
final Object object2) {
- return this.index0.evaluator.evaluate( this.index0.extractor,
+ return this.index0.evaluator.evaluate( null,
+ this.index0.extractor,
object1,
- this.index0.extractor,
- object2 ) && this.index1.evaluator.evaluate( this.index1.extractor,
+ this.index0.extractor, object2 ) && this.index1.evaluator.evaluate( null,
+ this.index1.extractor,
object1,
- this.index1.extractor,
- object2 );
+ this.index1.extractor, object2 );
}
public int rehash(int h) {
@@ -620,9 +620,9 @@
public int hashCodeOf(final Object object) {
int hashCode = this.startResult;
- hashCode = TupleIndexHashTable.PRIME * hashCode + this.index0.extractor.getHashCode( object );;
- hashCode = TupleIndexHashTable.PRIME * hashCode + this.index1.extractor.getHashCode( object );;
- hashCode = TupleIndexHashTable.PRIME * hashCode + this.index2.extractor.getHashCode( object );;
+ hashCode = TupleIndexHashTable.PRIME * hashCode + this.index0.extractor.getHashCode( null, object );;
+ hashCode = TupleIndexHashTable.PRIME * hashCode + this.index1.extractor.getHashCode( null, object );;
+ hashCode = TupleIndexHashTable.PRIME * hashCode + this.index2.extractor.getHashCode( null, object );;
return rehash( hashCode );
}
@@ -630,9 +630,9 @@
public int hashCodeOf(final ReteTuple tuple) {
int hashCode = this.startResult;
- hashCode = TupleIndexHashTable.PRIME * hashCode + this.index0.declaration.getHashCode( tuple.get( this.index0.declaration ).getObject() );
- hashCode = TupleIndexHashTable.PRIME * hashCode + this.index1.declaration.getHashCode( tuple.get( this.index1.declaration ).getObject() );
- hashCode = TupleIndexHashTable.PRIME * hashCode + this.index2.declaration.getHashCode( tuple.get( this.index2.declaration ).getObject() );
+ hashCode = TupleIndexHashTable.PRIME * hashCode + this.index0.declaration.getHashCode( null, tuple.get( this.index0.declaration ).getObject() );
+ hashCode = TupleIndexHashTable.PRIME * hashCode + this.index1.declaration.getHashCode( null, tuple.get( this.index1.declaration ).getObject() );
+ hashCode = TupleIndexHashTable.PRIME * hashCode + this.index2.declaration.getHashCode( null, tuple.get( this.index2.declaration ).getObject() );
return rehash( hashCode );
}
@@ -643,16 +643,16 @@
final Object left2 = tuple.get( this.index1.declaration ).getObject();
final Object left3 = tuple.get( this.index2.declaration ).getObject();
- return this.index0.evaluator.evaluate( this.index0.declaration.getExtractor(),
+ return this.index0.evaluator.evaluate( null,
+ this.index0.declaration.getExtractor(),
left1,
- this.index0.extractor,
- right ) && this.index1.evaluator.evaluate( this.index1.declaration.getExtractor(),
+ this.index0.extractor, right ) && this.index1.evaluator.evaluate( null,
+ this.index1.declaration.getExtractor(),
left2,
- this.index1.extractor,
- right ) && this.index2.evaluator.evaluate( this.index2.declaration.getExtractor(),
+ this.index1.extractor, right ) && this.index2.evaluator.evaluate( null,
+ this.index2.declaration.getExtractor(),
left3,
- this.index2.extractor,
- right );
+ this.index2.extractor, right );
}
public boolean equal(final ReteTuple tuple1,
@@ -664,30 +664,30 @@
final Object object31 = tuple1.get( this.index2.declaration ).getObject();
final Object object32 = tuple2.get( this.index2.declaration ).getObject();
- return this.index0.evaluator.evaluate( this.index0.declaration.getExtractor(),
+ return this.index0.evaluator.evaluate( null,
+ this.index0.declaration.getExtractor(),
object11,
- this.index0.declaration.getExtractor(),
- object12 ) && this.index1.evaluator.evaluate( this.index1.declaration.getExtractor(),
+ this.index0.declaration.getExtractor(), object12 ) && this.index1.evaluator.evaluate( null,
+ this.index1.declaration.getExtractor(),
object21,
- this.index1.declaration.getExtractor(),
- object22 ) && this.index2.evaluator.evaluate( this.index2.declaration.getExtractor(),
+ this.index1.declaration.getExtractor(), object22 ) && this.index2.evaluator.evaluate( null,
+ this.index2.declaration.getExtractor(),
object31,
- this.index2.declaration.getExtractor(),
- object32 );
+ this.index2.declaration.getExtractor(), object32 );
}
public boolean equal(final Object object1,
final Object object2) {
- return this.index0.evaluator.evaluate( this.index0.extractor,
+ return this.index0.evaluator.evaluate( null,
+ this.index0.extractor,
object1,
- this.index0.extractor,
- object2 ) && this.index1.evaluator.evaluate( this.index1.extractor,
+ this.index0.extractor, object2 ) && this.index1.evaluator.evaluate( null,
+ this.index1.extractor,
object1,
- this.index1.extractor,
- object2 ) && this.index2.evaluator.evaluate( this.index2.extractor,
+ this.index1.extractor, object2 ) && this.index2.evaluator.evaluate( null,
+ this.index2.extractor,
object1,
- this.index2.extractor,
- object2 );
+ this.index2.extractor, object2 );
}
public int rehash(int h) {
Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/BaseClassFieldExtractorFactoryTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/BaseClassFieldExtractorFactoryTest.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/BaseClassFieldExtractorFactoryTest.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -34,14 +34,14 @@
assertEquals( 0,
ex.getIndex() );
assertEquals( "michael",
- ex.getValue( new TestBean() ) );
+ ex.getValue( null, new TestBean() ) );
ex = ClassFieldExtractorFactory.getClassFieldExtractor( TestBean.class,
"age",
Thread.currentThread().getContextClassLoader() );
assertEquals( 1,
ex.getIndex() );
assertEquals( 42,
- ((Number) ex.getValue( new TestBean() )).intValue() );
+ ((Number) ex.getValue( null, new TestBean() )).intValue() );
}
@@ -52,7 +52,7 @@
assertEquals( 0,
ex.getIndex() );
assertEquals( "foo",
- ex.getValue( new TestInterfaceImpl() ) );
+ ex.getValue( null, new TestInterfaceImpl() ) );
}
public void testAbstract() throws Exception {
@@ -62,7 +62,7 @@
assertEquals( 0,
ex.getIndex() );
assertEquals( "foo",
- ex.getValue( new TestAbstractImpl() ) );
+ ex.getValue( null, new TestAbstractImpl() ) );
}
public void testInherited() throws Exception {
@@ -70,7 +70,7 @@
"text",
getClass().getClassLoader() );
assertEquals( "hola",
- ex.getValue( new BeanInherit() ) );
+ ex.getValue( null, new BeanInherit() ) );
}
public void testSelfReference() throws Exception {
@@ -79,7 +79,7 @@
getClass().getClassLoader() );
final TestBean bean = new TestBean();
assertEquals( bean,
- ex.getValue( bean ) );
+ ex.getValue( null, bean ) );
}
}
\ No newline at end of file
Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/ClassFieldExtractorTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/ClassFieldExtractorTest.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/ClassFieldExtractorTest.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -40,19 +40,19 @@
"blah",
getClass().getClassLoader() );
assertEquals( false,
- ((Boolean) ext.getValue( obj )).booleanValue() );
+ ((Boolean) ext.getValue( null, obj )).booleanValue() );
final ClassFieldExtractor ext2 = ClassFieldExtractorCache.getExtractor( TestBean.class,
"fooBar",
getClass().getClassLoader() );
assertEquals( "fooBar",
- ext2.getValue( obj ) );
+ ext2.getValue( null, obj ) );
final ClassFieldExtractor ext3 = ClassFieldExtractorCache.getExtractor( TestBean.class,
"objArray",
getClass().getClassLoader() );
assertEquals( objArray,
- ext3.getValue( obj ) );
+ ext3.getValue( null, obj ) );
}
@@ -64,7 +64,7 @@
getClass().getClassLoader() );
assertEquals( "foo",
- (String) ext.getValue( obj ) );
+ (String) ext.getValue( null, obj ) );
}
@@ -75,7 +75,7 @@
getClass().getClassLoader() );
final TestAbstract obj = new TestAbstractImpl();
assertEquals( "foo",
- (String) ext.getValue( obj ) );
+ (String) ext.getValue( null, obj ) );
}
@@ -85,7 +85,7 @@
getClass().getClassLoader() );
final BeanInherit obj = new BeanInherit();
assertEquals( "hola",
- (String) ext.getValue( obj ) );
+ (String) ext.getValue( null, obj ) );
}
@@ -95,7 +95,7 @@
"foo",
getClass().getClassLoader() );
assertEquals( 42,
- ((Number) ext.getValue( obj )).intValue() );
+ ((Number) ext.getValue( null, obj )).intValue() );
}
public void testLong() throws Exception {
@@ -104,7 +104,7 @@
getClass().getClassLoader() );
final TestBean bean = new TestBean();
assertEquals( 424242,
- ((Number) ext.getValue( bean )).longValue() );
+ ((Number) ext.getValue( null, bean )).longValue() );
}
}
\ No newline at end of file
Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/EvaluatorFactoryTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/EvaluatorFactoryTest.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/EvaluatorFactoryTest.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -30,6 +30,7 @@
import junit.framework.TestCase;
import org.drools.base.evaluators.Operator;
+import org.drools.common.InternalWorkingMemory;
import org.drools.rule.Declaration;
import org.drools.rule.VariableRestriction.BooleanVariableContextEntry;
import org.drools.rule.VariableRestriction.DoubleVariableContextEntry;
@@ -614,9 +615,9 @@
final Object[] row,
final Evaluator evaluator) {
final FieldValue value = FieldFactory.getFieldValue( row[2] );
- final boolean result = evaluator.evaluate( extractor,
- row[0],
- value );
+ final boolean result = evaluator.evaluate( null,
+ extractor,
+ row[0], value );
final String message = "The evaluator type: [" + valueType + "] with FieldValue incorrectly returned " + result + " for [" + row[0] + " " + row[1] + " " + row[2] + "]. It was asserted to return " + row[3];
if ( row[3] == Boolean.TRUE ) {
@@ -642,8 +643,8 @@
(FieldExtractor) extractor,
valueType,
row );
- final boolean result = evaluator.evaluateCachedRight( context,
- row[2] );
+ final boolean result = evaluator.evaluateCachedRight( null,
+ context, row[2] );
final String message = "The evaluator type: [" + valueType + "] with CachedRight incorrectly returned " + result + " for [" + row[0] + " " + row[1] + " " + row[2] + "]. It was asserted to return " + row[3];
if ( row[3] == Boolean.TRUE ) {
@@ -669,8 +670,8 @@
(FieldExtractor) extractor,
valueType,
row );
- final boolean result = evaluator.evaluateCachedLeft( context,
- row[0] );
+ final boolean result = evaluator.evaluateCachedLeft( null,
+ context, row[0] );
final String message = "The evaluator type: [" + valueType + "] with CachedLeft incorrectly returned " + result + " for [" + row[0] + " " + row[1] + " " + row[2] + "]. It was asserted to return " + row[3];
if ( row[3] == Boolean.TRUE ) {
@@ -692,10 +693,10 @@
final Extractor extractor,
final Object[] row,
final Evaluator evaluator) {
- final boolean result = evaluator.evaluate( extractor,
+ final boolean result = evaluator.evaluate( null,
+ extractor,
row[0],
- extractor,
- row[2] );
+ extractor, row[2] );
final String message = "The evaluator type: [" + valueType + "] with 2 extractors incorrectly returned " + result + " for [" + row[0] + " " + row[1] + " " + row[2] + "]. It was asserted to return " + row[3];
if ( row[3] == Boolean.TRUE ) {
@@ -820,19 +821,19 @@
private static final long serialVersionUID = 2759666130893301563L;
- public boolean getBooleanValue(final Object object) {
+ public boolean getBooleanValue(InternalWorkingMemory workingMemory, final Object object) {
return object != null ? ((Boolean) object).booleanValue() : false;
}
- public byte getByteValue(final Object object) {
+ public byte getByteValue(InternalWorkingMemory workingMemory, final Object object) {
return object != null ? ((Number) object).byteValue() : (byte) 0;
}
- public char getCharValue(final Object object) {
+ public char getCharValue(InternalWorkingMemory workingMemory, final Object object) {
return object != null ? ((Character) object).charValue() : '\0';
}
- public double getDoubleValue(final Object object) {
+ public double getDoubleValue(InternalWorkingMemory workingMemory, final Object object) {
return object != null ? ((Number) object).doubleValue() : 0.0;
}
@@ -840,19 +841,19 @@
return null;
}
- public float getFloatValue(final Object object) {
+ public float getFloatValue(InternalWorkingMemory workingMemory, final Object object) {
return object != null ? ((Number) object).floatValue() : (float) 0.0;
}
- public int getHashCode(final Object object) {
+ public int getHashCode(InternalWorkingMemory workingMemory, final Object object) {
return 0;
}
- public int getIntValue(final Object object) {
+ public int getIntValue(InternalWorkingMemory workingMemory, final Object object) {
return object != null ? ((Number) object).intValue() : 0;
}
- public long getLongValue(final Object object) {
+ public long getLongValue(InternalWorkingMemory workingMemory, final Object object) {
return object != null ? ((Number) object).longValue() : 0;
}
@@ -860,15 +861,15 @@
return null;
}
- public short getShortValue(final Object object) {
+ public short getShortValue(InternalWorkingMemory workingMemory, final Object object) {
return object != null ? ((Number) object).shortValue() : (short) 0;
}
- public Object getValue(final Object object) {
+ public Object getValue(InternalWorkingMemory workingMemory, final Object object) {
return object;
}
- public boolean isNullValue(final Object object) {
+ public boolean isNullValue(InternalWorkingMemory workingMemory, final Object object ) {
return object == null;
}
@@ -881,6 +882,10 @@
return 0;
}
+ public boolean isGlobal() {
+ return false;
+ }
+
}
// public void testRegexFoo() {
Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/BooleanClassFieldExtractorTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/BooleanClassFieldExtractorTest.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/BooleanClassFieldExtractorTest.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -19,7 +19,7 @@
public void testGetBooleanValue() {
try {
- Assert.assertTrue( this.extractor.getBooleanValue( this.bean ) );
+ Assert.assertTrue( this.extractor.getBooleanValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw exception" );
}
@@ -27,7 +27,7 @@
public void testGetByteValue() {
try {
- this.extractor.getByteValue( this.bean );
+ this.extractor.getByteValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -36,7 +36,7 @@
public void testGetCharValue() {
try {
- this.extractor.getCharValue( this.bean );
+ this.extractor.getCharValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -45,7 +45,7 @@
public void testGetDoubleValue() {
try {
- this.extractor.getDoubleValue( this.bean );
+ this.extractor.getDoubleValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -54,7 +54,7 @@
public void testGetFloatValue() {
try {
- this.extractor.getFloatValue( this.bean );
+ this.extractor.getFloatValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -63,7 +63,7 @@
public void testGetIntValue() {
try {
- this.extractor.getIntValue( this.bean );
+ this.extractor.getIntValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -72,7 +72,7 @@
public void testGetLongValue() {
try {
- this.extractor.getLongValue( this.bean );
+ this.extractor.getLongValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -81,7 +81,7 @@
public void testGetShortValue() {
try {
- this.extractor.getShortValue( this.bean );
+ this.extractor.getShortValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -91,7 +91,7 @@
public void testGetValue() {
try {
Assert.assertSame( Boolean.TRUE,
- this.extractor.getValue( this.bean ) );
+ this.extractor.getValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -99,7 +99,7 @@
public void testIsNullValue() {
try {
- Assert.assertFalse( this.extractor.isNullValue( this.bean ) );
+ Assert.assertFalse( this.extractor.isNullValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/ByteClassFieldExtractorTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/ByteClassFieldExtractorTest.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/ByteClassFieldExtractorTest.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -19,7 +19,7 @@
public void testGetBooleanValue() {
try {
- this.extractor.getBooleanValue( this.bean );
+ this.extractor.getBooleanValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -29,7 +29,7 @@
public void testGetByteValue() {
try {
Assert.assertEquals( 1,
- this.extractor.getByteValue( this.bean ) );
+ this.extractor.getByteValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -37,7 +37,7 @@
public void testGetCharValue() {
try {
- this.extractor.getCharValue( this.bean );
+ this.extractor.getCharValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -47,7 +47,7 @@
public void testGetDoubleValue() {
try {
Assert.assertEquals( 1.0,
- this.extractor.getDoubleValue( this.bean ),
+ this.extractor.getDoubleValue( null, this.bean ),
0.01 );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
@@ -57,7 +57,7 @@
public void testGetFloatValue() {
try {
Assert.assertEquals( 1.0f,
- this.extractor.getFloatValue( this.bean ),
+ this.extractor.getFloatValue( null, this.bean ),
0.01 );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
@@ -67,7 +67,7 @@
public void testGetIntValue() {
try {
Assert.assertEquals( 1,
- this.extractor.getIntValue( this.bean ) );
+ this.extractor.getIntValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -76,7 +76,7 @@
public void testGetLongValue() {
try {
Assert.assertEquals( 1,
- this.extractor.getLongValue( this.bean ) );
+ this.extractor.getLongValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -85,7 +85,7 @@
public void testGetShortValue() {
try {
Assert.assertEquals( 1,
- this.extractor.getShortValue( this.bean ) );
+ this.extractor.getShortValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -94,7 +94,7 @@
public void testGetValue() {
try {
Assert.assertEquals( 1,
- ((Number) this.extractor.getValue( this.bean )).byteValue() );
+ ((Number) this.extractor.getValue( null, this.bean )).byteValue() );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -102,7 +102,7 @@
public void testIsNullValue() {
try {
- Assert.assertFalse( this.extractor.isNullValue( this.bean ) );
+ Assert.assertFalse( this.extractor.isNullValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/CharClassFieldExtractorTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/CharClassFieldExtractorTest.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/CharClassFieldExtractorTest.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -3,7 +3,6 @@
import junit.framework.Assert;
import org.drools.base.ClassFieldExtractorCache;
-import org.drools.base.ClassFieldExtractorFactory;
import org.drools.base.TestBean;
import org.drools.spi.Extractor;
@@ -19,7 +18,7 @@
public void testGetBooleanValue() {
try {
- this.extractor.getBooleanValue( this.bean );
+ this.extractor.getBooleanValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -29,7 +28,7 @@
public void testGetByteValue() {
try {
Assert.assertEquals( 'a',
- this.extractor.getByteValue( this.bean ) );
+ this.extractor.getByteValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw exception" );
}
@@ -38,7 +37,7 @@
public void testGetCharValue() {
try {
Assert.assertEquals( 'a',
- this.extractor.getCharValue( this.bean ) );
+ this.extractor.getCharValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw exception" );
}
@@ -47,7 +46,7 @@
public void testGetDoubleValue() {
try {
Assert.assertEquals( 'a',
- (int) this.extractor.getDoubleValue( this.bean ) );
+ (int) this.extractor.getDoubleValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw exception" );
}
@@ -56,7 +55,7 @@
public void testGetFloatValue() {
try {
Assert.assertEquals( 'a',
- (int) this.extractor.getFloatValue( this.bean ) );
+ (int) this.extractor.getFloatValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw exception" );
}
@@ -65,7 +64,7 @@
public void testGetIntValue() {
try {
Assert.assertEquals( 'a',
- this.extractor.getIntValue( this.bean ) );
+ this.extractor.getIntValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw exception" );
}
@@ -74,7 +73,7 @@
public void testGetLongValue() {
try {
Assert.assertEquals( 'a',
- (int) this.extractor.getLongValue( this.bean ) );
+ (int) this.extractor.getLongValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw exception" );
}
@@ -83,7 +82,7 @@
public void testGetShortValue() {
try {
Assert.assertEquals( 'a',
- this.extractor.getShortValue( this.bean ) );
+ this.extractor.getShortValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw exception" );
}
@@ -92,7 +91,7 @@
public void testGetValue() {
try {
Assert.assertEquals( 'a',
- ((Number) this.extractor.getValue( this.bean )).intValue() );
+ ((Number) this.extractor.getValue( null, this.bean )).intValue() );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -100,7 +99,7 @@
public void testIsNullValue() {
try {
- Assert.assertFalse( this.extractor.isNullValue( this.bean ) );
+ Assert.assertFalse( this.extractor.isNullValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/DoubleClassFieldExtractorTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/DoubleClassFieldExtractorTest.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/DoubleClassFieldExtractorTest.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -21,7 +21,7 @@
public void testGetBooleanValue() {
try {
- this.extractor.getBooleanValue( this.bean );
+ this.extractor.getBooleanValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -31,7 +31,7 @@
public void testGetByteValue() {
try {
Assert.assertEquals( (byte) DoubleClassFieldExtractorTest.VALUE,
- this.extractor.getByteValue( this.bean ) );
+ this.extractor.getByteValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -39,7 +39,7 @@
public void testGetCharValue() {
try {
- this.extractor.getCharValue( this.bean );
+ this.extractor.getCharValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -49,7 +49,7 @@
public void testGetDoubleValue() {
try {
Assert.assertEquals( DoubleClassFieldExtractorTest.VALUE,
- this.extractor.getDoubleValue( this.bean ),
+ this.extractor.getDoubleValue( null, this.bean ),
0.01 );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
@@ -59,7 +59,7 @@
public void testGetFloatValue() {
try {
Assert.assertEquals( DoubleClassFieldExtractorTest.VALUE,
- this.extractor.getFloatValue( this.bean ),
+ this.extractor.getFloatValue( null, this.bean ),
0.01 );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
@@ -69,7 +69,7 @@
public void testGetIntValue() {
try {
Assert.assertEquals( (int) DoubleClassFieldExtractorTest.VALUE,
- this.extractor.getIntValue( this.bean ) );
+ this.extractor.getIntValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -78,7 +78,7 @@
public void testGetLongValue() {
try {
Assert.assertEquals( (long) DoubleClassFieldExtractorTest.VALUE,
- this.extractor.getLongValue( this.bean ) );
+ this.extractor.getLongValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -87,7 +87,7 @@
public void testGetShortValue() {
try {
Assert.assertEquals( (short) DoubleClassFieldExtractorTest.VALUE,
- this.extractor.getShortValue( this.bean ) );
+ this.extractor.getShortValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -96,8 +96,8 @@
public void testGetValue() {
try {
Assert.assertEquals( new Double( DoubleClassFieldExtractorTest.VALUE ),
- this.extractor.getValue( this.bean ) );
- Assert.assertTrue( this.extractor.getValue( this.bean ) instanceof Double );
+ this.extractor.getValue( null, this.bean ) );
+ Assert.assertTrue( this.extractor.getValue( null, this.bean ) instanceof Double );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -105,7 +105,7 @@
public void testIsNullValue() {
try {
- Assert.assertFalse( this.extractor.isNullValue( this.bean ) );
+ Assert.assertFalse( this.extractor.isNullValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/FloatClassFieldExtractorTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/FloatClassFieldExtractorTest.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/FloatClassFieldExtractorTest.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -21,7 +21,7 @@
public void testGetBooleanValue() {
try {
- this.extractor.getBooleanValue( this.bean );
+ this.extractor.getBooleanValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -31,7 +31,7 @@
public void testGetByteValue() {
try {
Assert.assertEquals( (byte) FloatClassFieldExtractorTest.VALUE,
- this.extractor.getByteValue( this.bean ) );
+ this.extractor.getByteValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -39,7 +39,7 @@
public void testGetCharValue() {
try {
- this.extractor.getCharValue( this.bean );
+ this.extractor.getCharValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -49,7 +49,7 @@
public void testGetDoubleValue() {
try {
Assert.assertEquals( FloatClassFieldExtractorTest.VALUE,
- this.extractor.getDoubleValue( this.bean ),
+ this.extractor.getDoubleValue( null, this.bean ),
0.01 );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
@@ -59,7 +59,7 @@
public void testGetFloatValue() {
try {
Assert.assertEquals( FloatClassFieldExtractorTest.VALUE,
- this.extractor.getFloatValue( this.bean ),
+ this.extractor.getFloatValue( null, this.bean ),
0.01 );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
@@ -69,7 +69,7 @@
public void testGetIntValue() {
try {
Assert.assertEquals( (int) FloatClassFieldExtractorTest.VALUE,
- this.extractor.getIntValue( this.bean ) );
+ this.extractor.getIntValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -78,7 +78,7 @@
public void testGetLongValue() {
try {
Assert.assertEquals( (long) FloatClassFieldExtractorTest.VALUE,
- this.extractor.getLongValue( this.bean ) );
+ this.extractor.getLongValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -87,7 +87,7 @@
public void testGetShortValue() {
try {
Assert.assertEquals( (short) FloatClassFieldExtractorTest.VALUE,
- this.extractor.getShortValue( this.bean ) );
+ this.extractor.getShortValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -96,8 +96,8 @@
public void testGetValue() {
try {
Assert.assertEquals( new Float( FloatClassFieldExtractorTest.VALUE ),
- this.extractor.getValue( this.bean ) );
- Assert.assertTrue( this.extractor.getValue( this.bean ) instanceof Float );
+ this.extractor.getValue( null, this.bean ) );
+ Assert.assertTrue( this.extractor.getValue( null, this.bean ) instanceof Float );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -105,7 +105,7 @@
public void testIsNullValue() {
try {
- Assert.assertFalse( this.extractor.isNullValue( this.bean ) );
+ Assert.assertFalse( this.extractor.isNullValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/IntClassFieldExtractorTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/IntClassFieldExtractorTest.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/IntClassFieldExtractorTest.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -3,7 +3,6 @@
import junit.framework.Assert;
import org.drools.base.ClassFieldExtractorCache;
-import org.drools.base.ClassFieldExtractorFactory;
import org.drools.base.TestBean;
import org.drools.spi.Extractor;
@@ -21,7 +20,7 @@
public void testGetBooleanValue() {
try {
- this.extractor.getBooleanValue( this.bean );
+ this.extractor.getBooleanValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -31,7 +30,7 @@
public void testGetByteValue() {
try {
Assert.assertEquals( IntClassFieldExtractorTest.VALUE,
- this.extractor.getByteValue( this.bean ) );
+ this.extractor.getByteValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -39,7 +38,7 @@
public void testGetCharValue() {
try {
- this.extractor.getCharValue( this.bean );
+ this.extractor.getCharValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -49,7 +48,7 @@
public void testGetDoubleValue() {
try {
Assert.assertEquals( IntClassFieldExtractorTest.VALUE,
- this.extractor.getDoubleValue( this.bean ),
+ this.extractor.getDoubleValue( null, this.bean ),
0.01 );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
@@ -59,7 +58,7 @@
public void testGetFloatValue() {
try {
Assert.assertEquals( IntClassFieldExtractorTest.VALUE,
- this.extractor.getFloatValue( this.bean ),
+ this.extractor.getFloatValue( null, this.bean ),
0.01 );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
@@ -69,7 +68,7 @@
public void testGetIntValue() {
try {
Assert.assertEquals( IntClassFieldExtractorTest.VALUE,
- this.extractor.getIntValue( this.bean ) );
+ this.extractor.getIntValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -78,7 +77,7 @@
public void testGetLongValue() {
try {
Assert.assertEquals( IntClassFieldExtractorTest.VALUE,
- this.extractor.getLongValue( this.bean ) );
+ this.extractor.getLongValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -87,7 +86,7 @@
public void testGetShortValue() {
try {
Assert.assertEquals( IntClassFieldExtractorTest.VALUE,
- this.extractor.getShortValue( this.bean ) );
+ this.extractor.getShortValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -96,7 +95,7 @@
public void testGetValue() {
try {
Assert.assertEquals( IntClassFieldExtractorTest.VALUE,
- ((Number) this.extractor.getValue( this.bean )).intValue() );
+ ((Number) this.extractor.getValue( null, this.bean )).intValue() );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -104,7 +103,7 @@
public void testIsNullValue() {
try {
- Assert.assertFalse( this.extractor.isNullValue( this.bean ) );
+ Assert.assertFalse( this.extractor.isNullValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/LongClassFieldExtractorTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/LongClassFieldExtractorTest.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/LongClassFieldExtractorTest.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -3,7 +3,6 @@
import junit.framework.Assert;
import org.drools.base.ClassFieldExtractorCache;
-import org.drools.base.ClassFieldExtractorFactory;
import org.drools.base.TestBean;
import org.drools.spi.Extractor;
@@ -21,7 +20,7 @@
public void testGetBooleanValue() {
try {
- this.extractor.getBooleanValue( this.bean );
+ this.extractor.getBooleanValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -31,7 +30,7 @@
public void testGetByteValue() {
try {
Assert.assertEquals( LongClassFieldExtractorTest.VALUE,
- this.extractor.getByteValue( this.bean ) );
+ this.extractor.getByteValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -39,7 +38,7 @@
public void testGetCharValue() {
try {
- this.extractor.getCharValue( this.bean );
+ this.extractor.getCharValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -49,7 +48,7 @@
public void testGetDoubleValue() {
try {
Assert.assertEquals( LongClassFieldExtractorTest.VALUE,
- this.extractor.getDoubleValue( this.bean ),
+ this.extractor.getDoubleValue( null, this.bean ),
0.01 );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
@@ -59,7 +58,7 @@
public void testGetFloatValue() {
try {
Assert.assertEquals( LongClassFieldExtractorTest.VALUE,
- this.extractor.getFloatValue( this.bean ),
+ this.extractor.getFloatValue( null, this.bean ),
0.01 );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
@@ -69,7 +68,7 @@
public void testGetIntValue() {
try {
Assert.assertEquals( LongClassFieldExtractorTest.VALUE,
- this.extractor.getIntValue( this.bean ) );
+ this.extractor.getIntValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -78,7 +77,7 @@
public void testGetLongValue() {
try {
Assert.assertEquals( LongClassFieldExtractorTest.VALUE,
- this.extractor.getLongValue( this.bean ) );
+ this.extractor.getLongValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -87,7 +86,7 @@
public void testGetShortValue() {
try {
Assert.assertEquals( LongClassFieldExtractorTest.VALUE,
- this.extractor.getShortValue( this.bean ) );
+ this.extractor.getShortValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -96,8 +95,8 @@
public void testGetValue() {
try {
Assert.assertEquals( new Long( (short) LongClassFieldExtractorTest.VALUE ),
- this.extractor.getValue( this.bean ) );
- Assert.assertTrue( this.extractor.getValue( this.bean ) instanceof Long );
+ this.extractor.getValue( null, this.bean ) );
+ Assert.assertTrue( this.extractor.getValue( null, this.bean ) instanceof Long );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -105,7 +104,7 @@
public void testIsNullValue() {
try {
- Assert.assertFalse( this.extractor.isNullValue( this.bean ) );
+ Assert.assertFalse( this.extractor.isNullValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/MVELClassFieldExtractorTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/MVELClassFieldExtractorTest.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/MVELClassFieldExtractorTest.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -6,7 +6,6 @@
import org.drools.Address;
import org.drools.Person;
import org.drools.base.ClassFieldExtractorCache;
-import org.drools.base.ClassFieldExtractorFactory;
import org.drools.spi.Extractor;
public class MVELClassFieldExtractorTest extends TestCase {
@@ -27,7 +26,7 @@
public void testGetBooleanValue() {
try {
- this.extractor.getBooleanValue( this.person );
+ this.extractor.getBooleanValue( null, this.person );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -36,7 +35,7 @@
public void testGetByteValue() {
try {
- this.extractor.getByteValue( this.person );
+ this.extractor.getByteValue( null, this.person );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -45,7 +44,7 @@
public void testGetCharValue() {
try {
- this.extractor.getCharValue( this.person );
+ this.extractor.getCharValue( null, this.person );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -54,7 +53,7 @@
public void testGetDoubleValue() {
try {
- this.extractor.getDoubleValue( this.person );
+ this.extractor.getDoubleValue( null, this.person );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -63,7 +62,7 @@
public void testGetFloatValue() {
try {
- this.extractor.getFloatValue( this.person );
+ this.extractor.getFloatValue( null, this.person );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -72,7 +71,7 @@
public void testGetIntValue() {
try {
- this.extractor.getIntValue( this.person );
+ this.extractor.getIntValue( null, this.person );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -81,7 +80,7 @@
public void testGetLongValue() {
try {
- this.extractor.getLongValue( this.person );
+ this.extractor.getLongValue( null, this.person );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -90,7 +89,7 @@
public void testGetShortValue() {
try {
- this.extractor.getShortValue( this.person );
+ this.extractor.getShortValue( null, this.person );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -100,8 +99,8 @@
public void testGetValue() {
try {
Assert.assertEquals( "Home Street",
- this.extractor.getValue( this.person ) );
- Assert.assertTrue( this.extractor.getValue( this.person ) instanceof String );
+ this.extractor.getValue( null, this.person ) );
+ Assert.assertTrue( this.extractor.getValue( null, this.person ) instanceof String );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -109,12 +108,12 @@
public void testIsNullValue() {
try {
- Assert.assertFalse( this.extractor.isNullValue( this.person ) );
+ Assert.assertFalse( this.extractor.isNullValue( null, this.person ) );
Extractor nullExtractor = ClassFieldExtractorCache.getExtractor( Person.class,
"addresses['business'].phone",
getClass().getClassLoader() );
- Assert.assertTrue( nullExtractor.isNullValue( this.person ) );
+ Assert.assertTrue( nullExtractor.isNullValue( null, this.person ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/ObjectClassFieldExtractorTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/ObjectClassFieldExtractorTest.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/ObjectClassFieldExtractorTest.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -6,7 +6,6 @@
import junit.framework.Assert;
import org.drools.base.ClassFieldExtractorCache;
-import org.drools.base.ClassFieldExtractorFactory;
import org.drools.base.TestBean;
import org.drools.spi.Extractor;
@@ -23,7 +22,7 @@
public void testGetBooleanValue() {
try {
- this.extractor.getBooleanValue( this.bean );
+ this.extractor.getBooleanValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -32,7 +31,7 @@
public void testGetByteValue() {
try {
- this.extractor.getByteValue( this.bean );
+ this.extractor.getByteValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -41,7 +40,7 @@
public void testGetCharValue() {
try {
- this.extractor.getCharValue( this.bean );
+ this.extractor.getCharValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -50,7 +49,7 @@
public void testGetDoubleValue() {
try {
- this.extractor.getDoubleValue( this.bean );
+ this.extractor.getDoubleValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -59,7 +58,7 @@
public void testGetFloatValue() {
try {
- this.extractor.getFloatValue( this.bean );
+ this.extractor.getFloatValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -68,7 +67,7 @@
public void testGetIntValue() {
try {
- this.extractor.getIntValue( this.bean );
+ this.extractor.getIntValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -77,7 +76,7 @@
public void testGetLongValue() {
try {
- this.extractor.getLongValue( this.bean );
+ this.extractor.getLongValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -86,7 +85,7 @@
public void testGetShortValue() {
try {
- this.extractor.getShortValue( this.bean );
+ this.extractor.getShortValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -96,8 +95,8 @@
public void testGetValue() {
try {
Assert.assertEquals( Collections.EMPTY_LIST,
- this.extractor.getValue( this.bean ) );
- Assert.assertTrue( this.extractor.getValue( this.bean ) instanceof List );
+ this.extractor.getValue( null, this.bean ) );
+ Assert.assertTrue( this.extractor.getValue( null, this.bean ) instanceof List );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -105,12 +104,12 @@
public void testIsNullValue() {
try {
- Assert.assertFalse( this.extractor.isNullValue( this.bean ) );
+ Assert.assertFalse( this.extractor.isNullValue( null, this.bean ) );
Extractor nullExtractor = ClassFieldExtractorCache.getExtractor( TestBean.class,
"nullAttr",
getClass().getClassLoader() );
- Assert.assertTrue( nullExtractor.isNullValue( this.bean ) );
+ Assert.assertTrue( nullExtractor.isNullValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/ShortClassFieldExtractorTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/ShortClassFieldExtractorTest.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/base/extractors/ShortClassFieldExtractorTest.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -3,7 +3,6 @@
import junit.framework.Assert;
import org.drools.base.ClassFieldExtractorCache;
-import org.drools.base.ClassFieldExtractorFactory;
import org.drools.base.TestBean;
import org.drools.spi.Extractor;
@@ -21,7 +20,7 @@
public void testGetBooleanValue() {
try {
- this.extractor.getBooleanValue( this.bean );
+ this.extractor.getBooleanValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -31,7 +30,7 @@
public void testGetByteValue() {
try {
Assert.assertEquals( ShortClassFieldExtractorTest.VALUE,
- this.extractor.getByteValue( this.bean ) );
+ this.extractor.getByteValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -39,7 +38,7 @@
public void testGetCharValue() {
try {
- this.extractor.getCharValue( this.bean );
+ this.extractor.getCharValue( null, this.bean );
fail( "Should have throw an exception" );
} catch ( final Exception e ) {
// success
@@ -49,7 +48,7 @@
public void testGetDoubleValue() {
try {
Assert.assertEquals( ShortClassFieldExtractorTest.VALUE,
- this.extractor.getDoubleValue( this.bean ),
+ this.extractor.getDoubleValue( null, this.bean ),
0.01 );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
@@ -59,7 +58,7 @@
public void testGetFloatValue() {
try {
Assert.assertEquals( ShortClassFieldExtractorTest.VALUE,
- this.extractor.getFloatValue( this.bean ),
+ this.extractor.getFloatValue( null, this.bean ),
0.01 );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
@@ -69,7 +68,7 @@
public void testGetIntValue() {
try {
Assert.assertEquals( ShortClassFieldExtractorTest.VALUE,
- this.extractor.getIntValue( this.bean ) );
+ this.extractor.getIntValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -78,7 +77,7 @@
public void testGetLongValue() {
try {
Assert.assertEquals( ShortClassFieldExtractorTest.VALUE,
- this.extractor.getLongValue( this.bean ) );
+ this.extractor.getLongValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -87,7 +86,7 @@
public void testGetShortValue() {
try {
Assert.assertEquals( ShortClassFieldExtractorTest.VALUE,
- this.extractor.getShortValue( this.bean ) );
+ this.extractor.getShortValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -96,7 +95,7 @@
public void testGetValue() {
try {
Assert.assertEquals( ShortClassFieldExtractorTest.VALUE,
- ((Number) this.extractor.getValue( this.bean )).shortValue() );
+ ((Number) this.extractor.getValue( null, this.bean )).shortValue() );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
@@ -104,7 +103,7 @@
public void testIsNullValue() {
try {
- Assert.assertFalse( this.extractor.isNullValue( this.bean ) );
+ Assert.assertFalse( this.extractor.isNullValue( null, this.bean ) );
} catch ( final Exception e ) {
fail( "Should not throw an exception" );
}
Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/BaseMannersTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/BaseMannersTest.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/BaseMannersTest.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -41,6 +41,7 @@
import org.drools.base.evaluators.Operator;
import org.drools.base.field.BooleanFieldImpl;
import org.drools.base.field.LongFieldImpl;
+import org.drools.common.InternalWorkingMemory;
import org.drools.rule.Pattern;
import org.drools.rule.Declaration;
import org.drools.rule.GroupElement;
@@ -477,8 +478,8 @@
Context context = (Context) drools.get( contextDeclaration );
Count count = (Count) drools.get( countDeclaration );
- int seatId = seatingIdDeclaration.getExtractor().getIntValue( tuple.get( seatingIdDeclaration ).getObject() );
- int seatingRightSeat = seatingRightSeatDeclaration.getExtractor().getIntValue( tuple.get( seatingRightSeatDeclaration ).getObject() );
+ int seatId = seatingIdDeclaration.getExtractor().getIntValue( (InternalWorkingMemory) workingMemory, tuple.get( seatingIdDeclaration ).getObject() );
+ int seatingRightSeat = seatingRightSeatDeclaration.getExtractor().getIntValue( (InternalWorkingMemory) workingMemory, tuple.get( seatingRightSeatDeclaration ).getObject() );
String leftGuestName = (String) drools.get( leftGuestNameDeclaration );
String rightGuestName = (String) drools.get( seatingRightGuestNameDeclaration );
@@ -653,8 +654,8 @@
Rule rule = drools.getRule();
Tuple tuple = drools.getTuple();
- int id = seatingIdDeclaration.getExtractor().getIntValue( tuple.get( seatingIdDeclaration ).getObject() );
- int seat = pathSeatDeclaration.getExtractor().getIntValue( tuple.get( pathSeatDeclaration ).getObject() );
+ int id = seatingIdDeclaration.getExtractor().getIntValue( (InternalWorkingMemory) workingMemory, tuple.get( seatingIdDeclaration ).getObject() );
+ int seat = pathSeatDeclaration.getExtractor().getIntValue( (InternalWorkingMemory) workingMemory, tuple.get( pathSeatDeclaration ).getObject() );
String guestName = (String) drools.get( pathGuestNameDeclaration );
Path path = new Path( id,
Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/facttemplates/FactTemplateFieldExtractorTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/facttemplates/FactTemplateFieldExtractorTest.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/facttemplates/FactTemplateFieldExtractorTest.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -34,18 +34,18 @@
new Integer( 200 ) );
assertEquals( "stilton",
- extractName.getValue( stilton ) );
+ extractName.getValue( null, stilton ) );
assertEquals( new Integer( 200 ),
- extractPrice.getValue( stilton ) );
+ extractPrice.getValue( null, stilton ) );
- assertFalse( extractName.isNullValue( stilton ) );
+ assertFalse( extractName.isNullValue( null, stilton ) );
stilton.setFieldValue( "name",
null );
- assertTrue( extractName.isNullValue( stilton ) );
- assertFalse( extractPrice.isNullValue( stilton ) );
+ assertTrue( extractName.isNullValue( null, stilton ) );
+ assertFalse( extractPrice.isNullValue( null, stilton ) );
final Fact brie = cheese.createFact( 12 );
brie.setFieldValue( "name",
@@ -54,18 +54,18 @@
new Integer( 55 ) );
assertEquals( "brie",
- extractName.getValue( brie ) );
+ extractName.getValue( null, brie ) );
assertEquals( new Integer( 55 ),
- extractPrice.getValue( brie ) );
+ extractPrice.getValue( null, brie ) );
- assertFalse( extractName.isNullValue( brie ) );
+ assertFalse( extractName.isNullValue( null, brie ) );
brie.setFieldValue( "name",
null );
- assertTrue( extractName.isNullValue( brie ) );
- assertFalse( extractPrice.isNullValue( stilton ) );
+ assertTrue( extractName.isNullValue( null, brie ) );
+ assertFalse( extractPrice.isNullValue( null, stilton ) );
}
public void testDeclaration() {
@@ -100,6 +100,6 @@
// Check we can extract Declarations correctly
assertEquals( "brie",
- declaration.getValue( brie ) );
+ declaration.getValue( null, brie ) );
}
}
Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/reteoo/CompositeObjectSinkAdapterTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/reteoo/CompositeObjectSinkAdapterTest.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/reteoo/CompositeObjectSinkAdapterTest.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -226,22 +226,22 @@
return 0;
}
- public boolean getBooleanValue(final Object object) {
+ public boolean getBooleanValue(InternalWorkingMemory workingMemory, final Object object) {
// Auto-generated method stub
return false;
}
- public byte getByteValue(final Object object) {
+ public byte getByteValue(InternalWorkingMemory workingMemory, final Object object) {
// Auto-generated method stub
return 0;
}
- public char getCharValue(final Object object) {
+ public char getCharValue(InternalWorkingMemory workingMemory, final Object object) {
// Auto-generated method stub
return 0;
}
- public double getDoubleValue(final Object object) {
+ public double getDoubleValue(InternalWorkingMemory workingMemory, final Object object) {
// Auto-generated method stub
return 0;
}
@@ -251,17 +251,17 @@
return null;
}
- public float getFloatValue(final Object object) {
+ public float getFloatValue(InternalWorkingMemory workingMemory, final Object object) {
// Auto-generated method stub
return 0;
}
- public int getIntValue(final Object object) {
+ public int getIntValue(InternalWorkingMemory workingMemory, final Object object) {
// Auto-generated method stub
return 0;
}
- public long getLongValue(final Object object) {
+ public long getLongValue(InternalWorkingMemory workingMemory, final Object object) {
// Auto-generated method stub
return 0;
}
@@ -271,17 +271,17 @@
return null;
}
- public short getShortValue(final Object object) {
+ public short getShortValue(InternalWorkingMemory workingMemory, final Object object) {
// Auto-generated method stub
return 0;
}
- public Object getValue(final Object object) {
+ public Object getValue(InternalWorkingMemory workingMemory, final Object object) {
// Auto-generated method stub
return null;
}
- public boolean isNullValue(final Object object) {
+ public boolean isNullValue(final Object object, InternalWorkingMemory workingMemory) {
return false;
}
@@ -290,10 +290,21 @@
return null;
}
- public int getHashCode(final Object object) {
+ public int getHashCode(InternalWorkingMemory workingMemory, final Object object) {
return 0;
}
+ public boolean isGlobal() {
+ // TODO Auto-generated method stub
+ return false;
+ }
+
+ public boolean isNullValue(InternalWorkingMemory workingMemory,
+ Object object) {
+ // TODO Auto-generated method stub
+ return false;
+ }
+
}
static class MockBetaNode extends BetaNode {
Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/rule/DeclarationTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/rule/DeclarationTest.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/rule/DeclarationTest.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -78,7 +78,7 @@
// Check we can extract Declarations correctly
assertEquals( "cheddar",
- declaration.getValue( cheddar ) );
+ declaration.getValue( null, cheddar ) );
}
public static int getIndex(final Class clazz,
Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/rule/FieldConstraintTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/rule/FieldConstraintTest.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/rule/FieldConstraintTest.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -194,8 +194,8 @@
Declaration[] previousDeclarations,
Declaration[] localDeclarations,
WorkingMemory workingMemory) {
- int price1 = previousDeclarations[0].getIntValue( workingMemory.getObject( tuple.get( previousDeclarations[0] ) ) );
- int price2 = localDeclarations[0].getIntValue( object );
+ int price1 = previousDeclarations[0].getIntValue( (InternalWorkingMemory) workingMemory, workingMemory.getObject( tuple.get( previousDeclarations[0] ) ) );
+ int price2 = localDeclarations[0].getIntValue( (InternalWorkingMemory) workingMemory, object );
return (price2 == (price1 * 2));
@@ -267,7 +267,7 @@
Declaration[] previousDeclarations,
Declaration[] localDeclarations,
WorkingMemory workingMemory) {
- int price = ((Number) previousDeclarations[0].getValue( workingMemory.getObject( tuple.get( previousDeclarations[0] ) ) )).intValue();
+ int price = ((Number) previousDeclarations[0].getValue( (InternalWorkingMemory) workingMemory, workingMemory.getObject( tuple.get( previousDeclarations[0] ) ) )).intValue();
return FieldFactory.getFieldValue( 2 * price );
}
Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/rule/PatternTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/rule/PatternTest.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/rule/PatternTest.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -29,7 +29,7 @@
42 );
assertEquals( stilton,
- dec.getValue( stilton ) );
+ dec.getValue( null, stilton ) );
}
@@ -64,7 +64,7 @@
new Integer( 200 ) );
assertEquals( stilton,
- dec.getValue( stilton ) );
+ dec.getValue( null, stilton ) );
}
}
Modified: labs/jbossrules/trunk/drools-decisiontables/src/test/java/org/drools/decisiontable/parser/ExternalSheetListenerTest.java
===================================================================
--- labs/jbossrules/trunk/drools-decisiontables/src/test/java/org/drools/decisiontable/parser/ExternalSheetListenerTest.java 2007-06-28 21:46:54 UTC (rev 12939)
+++ labs/jbossrules/trunk/drools-decisiontables/src/test/java/org/drools/decisiontable/parser/ExternalSheetListenerTest.java 2007-06-28 22:27:18 UTC (rev 12940)
@@ -17,8 +17,6 @@
import org.drools.QueryResults;
import org.drools.RuleBase;
import org.drools.StatefulSession;
-import org.drools.StatelessSession;
-import org.drools.WorkingMemory;
import org.drools.concurrent.Future;
import org.drools.event.AgendaEventListener;
import org.drools.event.RuleFlowEventListener;
More information about the jboss-svn-commits
mailing list