[jboss-svn-commits] JBL Code SVN: r21632 - in labs/jbossrules/trunk/drools-core/src/main/java/org/drools: reteoo and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed Aug 20 02:47:02 EDT 2008


Author: michael.neale at jboss.com
Date: 2008-08-20 02:47:02 -0400 (Wed, 20 Aug 2008)
New Revision: 21632

Modified:
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/RuleBase.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/StatefulSession.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooStatefulSession.java
Log:
javadoc update to reflect importance of dispose() (also added finalise)

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/RuleBase.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/RuleBase.java	2008-08-20 02:21:58 UTC (rev 21631)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/RuleBase.java	2008-08-20 06:47:02 UTC (rev 21632)
@@ -59,6 +59,8 @@
      * @see org.drools.conflict.DefaultConflictResolver
      *
      * @return A newly initialized <code>WorkingMemory</code>.
+     *
+     * IMPORTANT: when using the stateful session REMEMBER TO CALL <code>dispose()</code> when you are done with the session.
      */
     StatefulSession newStatefulSession();
 
@@ -108,7 +110,7 @@
     Package[] getPackages();
 
     Package getPackage(String name);
-    
+
     void addPackages(Package[] pkgs );
 
     void addPackage(Package pkg);

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/StatefulSession.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/StatefulSession.java	2008-08-20 02:21:58 UTC (rev 21631)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/StatefulSession.java	2008-08-20 06:47:02 UTC (rev 21632)
@@ -11,14 +11,15 @@
  * between invocations (accumulating facts/knowledge).
  *
  * Caution should be used when using the async methods (take note of the javadocs for specific methods).
+ *
+ * IMPORTANT: Remember to call dispose() when finished with this session.
  */
 public interface StatefulSession
     extends
     WorkingMemory {
 
     /**
-     * Forces the workingMemory to be derefenced from
-     *
+     * Forces the workingMemory to be disconnected from the rulebase (not calling this may cause resource leaks).
      */
     void dispose();
 

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooStatefulSession.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooStatefulSession.java	2008-08-20 02:21:58 UTC (rev 21631)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooStatefulSession.java	2008-08-20 06:47:02 UTC (rev 21632)
@@ -120,6 +120,11 @@
         this.executor.shutDown();
     }
 
+    @Override
+    protected void finalize() throws Throwable {
+    	dispose();
+    }
+
     public List getRuleBaseUpdateListeners() {
         if ( this.ruleBaseListeners == null || this.ruleBaseListeners == Collections.EMPTY_LIST ) {
             String listenerName = this.ruleBase.getConfiguration().getRuleBaseUpdateHandler();
@@ -134,11 +139,11 @@
         return this.ruleBaseListeners;
     }
 
-    //    public StatefulSession getEntryPoint(String id) {        
+    //    public StatefulSession getEntryPoint(String id) {
     //        EntryPoint ep = new EntryPoint( id );
     //        return new EntryPointInterfaceImpl( ep,
     //                                            this );
-    //    }    
+    //    }
 
     public ExecutorService getExecutorService() {
         return executor;




More information about the jboss-svn-commits mailing list