[jboss-svn-commits] JBL Code SVN: r25841 - in labs/jbossrules/branches/salaboy_streams/drools-core/src/main/java/org/drools: marshalling/impl and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Thu Mar 26 11:31:41 EDT 2009


Author: salaboy21
Date: 2009-03-26 11:31:41 -0400 (Thu, 26 Mar 2009)
New Revision: 25841

Modified:
   labs/jbossrules/branches/salaboy_streams/drools-core/src/main/java/org/drools/base/DefaultKnowledgeHelper.java
   labs/jbossrules/branches/salaboy_streams/drools-core/src/main/java/org/drools/marshalling/impl/InputMarshaller.java
   labs/jbossrules/branches/salaboy_streams/drools-core/src/main/java/org/drools/marshalling/impl/OutputMarshaller.java
Log:
fixes in default knowledge helper and serialization for null pointers


Modified: labs/jbossrules/branches/salaboy_streams/drools-core/src/main/java/org/drools/base/DefaultKnowledgeHelper.java
===================================================================
--- labs/jbossrules/branches/salaboy_streams/drools-core/src/main/java/org/drools/base/DefaultKnowledgeHelper.java	2009-03-26 15:30:23 UTC (rev 25840)
+++ labs/jbossrules/branches/salaboy_streams/drools-core/src/main/java/org/drools/base/DefaultKnowledgeHelper.java	2009-03-26 15:31:41 UTC (rev 25841)
@@ -283,13 +283,14 @@
 //                                     tuple.get(declaration));
         InternalWorkingMemoryEntryPoint wmTmp = ((InternalWorkingMemoryEntryPoint)(this.tuple.get(declaration)).getEntryPoint());
        
-
+        if(wmTmp != null){
         Object object = declaration.getValue( wmTmp.getInternalWorkingMemory() ,
                                      this.tuple.get( declaration ).getObject() );
-        if(wmTmp != null){
+        
                 getIdentityMap().put(object, wmTmp.getFactHandleByIdentity(object));
+                return object;
         }
-        return object;
+        return null;
     }
 
     public Declaration getDeclaration(final String identifier) {
@@ -297,7 +298,7 @@
         Object object = get(declaration);
         InternalWorkingMemoryEntryPoint wmTmp = ((InternalWorkingMemoryEntryPoint)(this.tuple.get(declaration)).getEntryPoint());
         
-        if(wmTmp != null){
+        if(wmTmp != null && object != null){
             getIdentityMap().put(object, wmTmp.getFactHandleByIdentity(object));
         }
         //((InternalWorkingMemoryActions)(this.tuple.get(declaration)).getEntryPoint()).getFactHandleByIdentity(declaration.getValue( ((InternalWorkingMemoryActions)(this.tuple.get(declaration)).getEntryPoint()),this.tuple.get( declaration ).getObject() ))

Modified: labs/jbossrules/branches/salaboy_streams/drools-core/src/main/java/org/drools/marshalling/impl/InputMarshaller.java
===================================================================
--- labs/jbossrules/branches/salaboy_streams/drools-core/src/main/java/org/drools/marshalling/impl/InputMarshaller.java	2009-03-26 15:30:23 UTC (rev 25840)
+++ labs/jbossrules/branches/salaboy_streams/drools-core/src/main/java/org/drools/marshalling/impl/InputMarshaller.java	2009-03-26 15:31:41 UTC (rev 25841)
@@ -366,8 +366,12 @@
         InternalFactHandle handle = new DefaultFactHandle( id,
                                                            object,
                                                            recency );
-        String  entryPoint = context.readUTF();
-        handle.setEntryPoint(context.wm.getEntryPoints().get(entryPoint));
+        if(context.readBoolean()){
+            String  entryPoint = context.readUTF();
+            if(entryPoint != null && !entryPoint.equals("")){
+                handle.setEntryPoint(context.wm.getEntryPoints().get(entryPoint));
+            }
+        }
         return handle;
     }
 

Modified: labs/jbossrules/branches/salaboy_streams/drools-core/src/main/java/org/drools/marshalling/impl/OutputMarshaller.java
===================================================================
--- labs/jbossrules/branches/salaboy_streams/drools-core/src/main/java/org/drools/marshalling/impl/OutputMarshaller.java	2009-03-26 15:30:23 UTC (rev 25840)
+++ labs/jbossrules/branches/salaboy_streams/drools-core/src/main/java/org/drools/marshalling/impl/OutputMarshaller.java	2009-03-26 15:31:41 UTC (rev 25841)
@@ -296,8 +296,18 @@
         strategy.write( stream,
                         object );
         if( handle.getEntryPoint() instanceof InternalWorkingMemoryEntryPoint ){
-            stream.writeUTF(((InternalWorkingMemoryEntryPoint)handle.getEntryPoint()).getEntryPoint().getEntryPointId());
+            String entryPoint = ((InternalWorkingMemoryEntryPoint)handle.getEntryPoint()).getEntryPoint().getEntryPointId();
+            if(entryPoint!=null && !entryPoint.equals("")){
+                stream.writeBoolean(true);
+                stream.writeUTF(entryPoint);
+            }
+            else{
+                stream.writeBoolean(false);
+            }
+        }else{
+            stream.writeBoolean(false);
         }
+        
     }
 
     public static InternalFactHandle[] orderFacts(ObjectStore objectStore) {




More information about the jboss-svn-commits mailing list