[jboss-svn-commits] JBL Code SVN: r26019 - labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse.task/src/main/java/org/drools/eclipse/task/views.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sat Apr 11 21:43:44 EDT 2009


Author: stampy88
Date: 2009-04-11 21:43:44 -0400 (Sat, 11 Apr 2009)
New Revision: 26019

Removed:
   labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse.task/src/main/java/org/drools/eclipse/task/views/AbstractBlockingResponseHandler.java
Modified:
   labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse.task/src/main/java/org/drools/eclipse/task/views/BlockingTaskOperationResponseHandler.java
   labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse.task/src/main/java/org/drools/eclipse/task/views/BlockingTaskSummaryResponseHandler.java
Log:
Propagated exceptions back to client

Deleted: labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse.task/src/main/java/org/drools/eclipse/task/views/AbstractBlockingResponseHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse.task/src/main/java/org/drools/eclipse/task/views/AbstractBlockingResponseHandler.java	2009-04-12 01:00:16 UTC (rev 26018)
+++ labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse.task/src/main/java/org/drools/eclipse/task/views/AbstractBlockingResponseHandler.java	2009-04-12 01:43:44 UTC (rev 26019)
@@ -1,53 +0,0 @@
-/**
- * 
- */
-package org.drools.eclipse.task.views;
-
-import org.drools.task.service.BaseMinaHandler.ResponseHandler;
-
-public abstract class AbstractBlockingResponseHandler
-    implements
-    ResponseHandler {
-    protected volatile Boolean done = Boolean.FALSE;
-    private String error;
-    
-    public boolean hasError() {
-        return error != null;
-    }
-
-    public String getError() {
-        return error;
-    }
-
-    public void setError(String error) {
-        this.error = error;
-    }
-
-    public boolean isDone() {
-        synchronized ( done ) {
-            return done;
-        }
-    }
-
-    public boolean waitTillDone(long time) {
-        long totalWaitTime = 0;
-        try {
-            while ( true ) {
-                synchronized ( done ) {
-                    if ( done ) {
-                        return true;
-                    }
-                }
-                if ( totalWaitTime >= time ) {
-                    break;
-                }
-                Thread.sleep( 250 );
-                totalWaitTime += 250;
-            }
-        } catch ( Exception e ) {
-            // swallow, as we are either true or false
-        }
-        return false;
-    }
-
-}
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse.task/src/main/java/org/drools/eclipse/task/views/BlockingTaskOperationResponseHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse.task/src/main/java/org/drools/eclipse/task/views/BlockingTaskOperationResponseHandler.java	2009-04-12 01:00:16 UTC (rev 26018)
+++ labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse.task/src/main/java/org/drools/eclipse/task/views/BlockingTaskOperationResponseHandler.java	2009-04-12 01:43:44 UTC (rev 26019)
@@ -4,11 +4,10 @@
 package org.drools.eclipse.task.views;
 
 import org.drools.task.service.TaskClientHandler.TaskOperationResponseHandler;
+import org.drools.task.service.responsehandlers.AbstractBlockingResponseHandler;
 
 public class BlockingTaskOperationResponseHandler extends AbstractBlockingResponseHandler implements TaskOperationResponseHandler {
       public void setIsDone(boolean done) {
-          synchronized ( this.done ) {
-            this.done = done;
-        }
+          setDone(done);
       }
 }
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse.task/src/main/java/org/drools/eclipse/task/views/BlockingTaskSummaryResponseHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse.task/src/main/java/org/drools/eclipse/task/views/BlockingTaskSummaryResponseHandler.java	2009-04-12 01:00:16 UTC (rev 26018)
+++ labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse.task/src/main/java/org/drools/eclipse/task/views/BlockingTaskSummaryResponseHandler.java	2009-04-12 01:43:44 UTC (rev 26019)
@@ -4,40 +4,28 @@
 
 import org.drools.task.query.TaskSummary;
 import org.drools.task.service.TaskClientHandler.TaskSummaryResponseHandler;
+import org.drools.task.service.responsehandlers.AbstractBlockingResponseHandler;
 
 public class BlockingTaskSummaryResponseHandler extends AbstractBlockingResponseHandler implements TaskSummaryResponseHandler {
-	
-	private volatile List<TaskSummary> results;
+	private static final int DEFAULT_WAIT_TIME = 10000;
 
-	public synchronized void execute(List<TaskSummary> results) {
-        synchronized ( this.done ) {        
-    		this.results = results;
-            this.done = true;
-            notifyAll(); 
-        }
+    private volatile List<TaskSummary> results;
+
+    public synchronized void execute(List<TaskSummary> results) {
+        this.results = results;
+        setDone(true);
 	}
 
 	public synchronized List<TaskSummary> getResults() {
-        boolean isDone;
-        synchronized ( done ) {
-            isDone = this.done;
-        }
-        if ( !isDone ) {                  
-            try {
-                wait( 10000 );
-            } catch ( InterruptedException e ) {
-                // swallow as this is just a notification
-            }
-        }        
-        synchronized ( done ) {
-            isDone = this.done;
-        }        
-        if ( !isDone ) {
+         // note that this method doesn't need to be synced because if waitTillDone returns true,
+        // it means attachmentId is available
+        boolean done = waitTillDone(DEFAULT_WAIT_TIME);
+
+        if ( !done ) {
             throw new TimeoutException();
         }
         
         return results;
 	}
+}
 
-};
-




More information about the jboss-svn-commits mailing list