[jboss-svn-commits] JBL Code SVN: r20247 - labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sat May 31 15:20:38 EDT 2008


Author: mark.proctor at jboss.com
Date: 2008-05-31 15:20:38 -0400 (Sat, 31 May 2008)
New Revision: 20247

Modified:
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/EqualityEvaluatorsDefinition.java
Log:
JBRULES-1627 Remove Shadow Proxies
-Remove ShadowProxy checks from evaluators.
-Also removed redundant null checks, as they are always done in the comparator, do not need to be done twice.

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/EqualityEvaluatorsDefinition.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/EqualityEvaluatorsDefinition.java	2008-05-31 17:54:23 UTC (rev 20246)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/evaluators/EqualityEvaluatorsDefinition.java	2008-05-31 19:20:38 UTC (rev 20247)
@@ -47,7 +47,7 @@
 
     private static final String[] SUPPORTED_IDS = { Operator.EQUAL.getOperatorString(), Operator.NOT_EQUAL.getOperatorString() };
     private EvaluatorCache evaluators = new EvaluatorCache() {
-        private static final long serialVersionUID = 4782368623L;
+        private static final long serialVersionUID = 400L;
         {
             addEvaluator( ValueType.ARRAY_TYPE,         Operator.EQUAL,         ArrayEqualEvaluator.INSTANCE );
             addEvaluator( ValueType.ARRAY_TYPE,         Operator.NOT_EQUAL,     ArrayNotEqualEvaluator.INSTANCE );
@@ -1707,36 +1707,18 @@
                                 final Object object1, final FieldValue object2) {
             final Object value1 = extractor.getValue( workingMemory, object1 );
             final Object value2 = object2.getValue();
-            if ( value1 == null ) {
-                return value2 == null;
-            }
-            if( value2 != null && value2 instanceof ShadowProxy ) {
-                return comparator.equals( value2, value1 );
-            }
             return comparator.equals( value1, value2 );
         }
 
         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;
-            }
-            if( ((ObjectVariableContextEntry) context).right != null && ((ObjectVariableContextEntry) context).right instanceof ShadowProxy ) {
-                return comparator.equals( ((ObjectVariableContextEntry) context).right,  value );
-            }
             return comparator.equals( ((ObjectVariableContextEntry) context).right, value );
         }
 
         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;
-            }
-            if( value != null && value instanceof ShadowProxy ) {
-                return comparator.equals( value, ((ObjectVariableContextEntry) context).left );
-            }
             return comparator.equals( value, ((ObjectVariableContextEntry) context).left );
         }
 
@@ -1746,12 +1728,6 @@
                                 final InternalReadAccessor extractor2, final Object object2) {
             final Object value1 = extractor1.getValue( workingMemory, object1 );
             final Object value2 = extractor2.getValue( workingMemory, object2 );
-            if ( value1 == null ) {
-                return value2 == null;
-            }
-            if( value2 != null && value2 instanceof ShadowProxy ) {
-                return comparator.equals( value2, value1 );
-            }
             return comparator.equals( value1, value2 );
         }
 
@@ -1779,36 +1755,18 @@
                                 final Object object1, final FieldValue object2) {
             final Object value1 = extractor.getValue( workingMemory, object1 );
             final Object value2 = object2.getValue();
-            if ( value1 == null ) {
-                return value2 != null;
-            }
-            if( value2 != null && value2 instanceof ShadowProxy ) {
-                return !comparator.equals( value2, value1 );
-            }
             return !comparator.equals( value1, value2 );
         }
 
         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;
-            }
-            if( ((ObjectVariableContextEntry) context).right != null && ((ObjectVariableContextEntry) context).right instanceof ShadowProxy ) {
-                return !comparator.equals( ((ObjectVariableContextEntry) context).right, value );
-            }
             return !comparator.equals( ((ObjectVariableContextEntry) context).right, value );
         }
 
         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;
-            }
-            if( value != null && value instanceof ShadowProxy ) {
-                return !comparator.equals( value, ((ObjectVariableContextEntry) context).left );
-            }
             return !comparator.equals( value, ((ObjectVariableContextEntry) context).left );
         }
 
@@ -1817,13 +1775,7 @@
                                 final Object object1,
                                 final InternalReadAccessor extractor2, final Object object2) {
             final Object value1 = extractor1.getValue( workingMemory, object1 );
-            final Object value2 = extractor2.getValue( workingMemory, object2 );
-            if ( value1 == null ) {
-                return value2 != null;
-            }
-            if( value2 != null && value2 instanceof ShadowProxy ) {
-                return !comparator.equals( value2, value1 );
-            }
+            final Object value2 = extractor2.getValue( workingMemory, object2 );           
             return !comparator.equals( value1, value2 );
         }
 
@@ -2084,9 +2036,6 @@
             if ( arg0 == null || arg1 == null ) {
                 return arg0 == arg1;
             }
-            if( arg1 != null && arg1 instanceof ShadowProxy ) {
-                return arg1.equals( arg0 );
-            }
             if( arg0 instanceof Number ){
                 double val0 = ((Number) arg0).doubleValue();
                 double val1 = 0;




More information about the jboss-svn-commits mailing list