[jboss-svn-commits] JBL Code SVN: r9375 - labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Tue Feb 6 15:03:16 EST 2007
Author: mark.proctor at jboss.com
Date: 2007-02-06 15:03:16 -0500 (Tue, 06 Feb 2007)
New Revision: 9375
Modified:
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/AbstractWorkingMemory.java
Log:
-WorkingMemory.getObject( FactHandle ) now unwraps if its a shadow fact
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/AbstractWorkingMemory.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/AbstractWorkingMemory.java 2007-02-06 19:21:15 UTC (rev 9374)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/AbstractWorkingMemory.java 2007-02-06 20:03:16 UTC (rev 9375)
@@ -424,14 +424,15 @@
public Object getObject(final FactHandle handle) {
try {
this.lock.lock();
- // you must always take the value from the assertMap, incase the handle
- // is not from this WorkingMemory
- final InternalFactHandle factHandle = (InternalFactHandle) this.assertMap.get( handle );
- if ( factHandle != null ) {
- return factHandle.getObject();
+ InternalFactHandle internalHandle = ( InternalFactHandle ) handle;
+
+ Object object = internalHandle.getObject();
+
+ if ( internalHandle.isShadowFact() ) {
+ object = ( (ShadowProxy) object ).getShadowedObject();
}
-
- return null;
+
+ return object;
} finally {
this.lock.unlock();
}
More information about the jboss-svn-commits
mailing list