[jboss-svn-commits] JBL Code SVN: r32792 - in labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools: process/workitem/wsht and 2 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Fri May 7 21:23:38 EDT 2010
Author: KrisVerlaenen
Date: 2010-05-07 21:23:37 -0400 (Fri, 07 May 2010)
New Revision: 32792
Modified:
labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/eventmessaging/EventResponseHandler.java
labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/process/workitem/wsht/BlockingEventResponseHandler.java
labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/process/workitem/wsht/CommandBasedWSHumanTaskHandler.java
labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/process/workitem/wsht/WSHumanTaskHandler.java
labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/task/service/TaskClientHandler.java
labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/task/service/responsehandlers/BlockingEventResponseHandler.java
Log:
JBRULES-2471: Human task handler does not support restarting session for already created tasks
- fixed issue where event response handler was removed at client side
Modified: labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/eventmessaging/EventResponseHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/eventmessaging/EventResponseHandler.java 2010-05-07 20:51:57 UTC (rev 32791)
+++ labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/eventmessaging/EventResponseHandler.java 2010-05-08 01:23:37 UTC (rev 32792)
@@ -4,4 +4,5 @@
public interface EventResponseHandler extends ResponseHandler {
public void execute(Payload payload);
+ public boolean isRemove();
}
Modified: labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/process/workitem/wsht/BlockingEventResponseHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/process/workitem/wsht/BlockingEventResponseHandler.java 2010-05-07 20:51:57 UTC (rev 32791)
+++ labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/process/workitem/wsht/BlockingEventResponseHandler.java 2010-05-08 01:23:37 UTC (rev 32792)
@@ -30,4 +30,9 @@
return payload;
}
+
+ public boolean isRemove() {
+ return true;
+ }
+
}
\ No newline at end of file
Modified: labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/process/workitem/wsht/CommandBasedWSHumanTaskHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/process/workitem/wsht/CommandBasedWSHumanTaskHandler.java 2010-05-07 20:51:57 UTC (rev 32791)
+++ labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/process/workitem/wsht/CommandBasedWSHumanTaskHandler.java 2010-05-08 01:23:37 UTC (rev 32792)
@@ -74,11 +74,11 @@
}
TaskEventKey key = new TaskEventKey(TaskCompletedEvent.class, -1);
TaskCompletedHandler eventResponseHandler = new TaskCompletedHandler();
- client.registerForEvent(key, true, eventResponseHandler);
+ client.registerForEvent(key, false, eventResponseHandler);
key = new TaskEventKey(TaskFailedEvent.class, -1);
- client.registerForEvent(key, true, eventResponseHandler);
+ client.registerForEvent(key, false, eventResponseHandler);
key = new TaskEventKey(TaskSkippedEvent.class, -1);
- client.registerForEvent(key, true, eventResponseHandler);
+ client.registerForEvent(key, false, eventResponseHandler);
}
}
@@ -206,6 +206,10 @@
new GetCompletedTaskResponseHandler();
client.getTask(taskId, getTaskResponseHandler);
}
+
+ public boolean isRemove() {
+ return false;
+ }
}
private class GetCompletedTaskResponseHandler extends AbstractBaseResponseHandler implements GetTaskResponseHandler {
Modified: labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/process/workitem/wsht/WSHumanTaskHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/process/workitem/wsht/WSHumanTaskHandler.java 2010-05-07 20:51:57 UTC (rev 32791)
+++ labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/process/workitem/wsht/WSHumanTaskHandler.java 2010-05-08 01:23:37 UTC (rev 32792)
@@ -53,11 +53,11 @@
TaskEventKey key = new TaskEventKey(TaskCompletedEvent.class, -1);
TaskCompletedHandler eventResponseHandler =
new TaskCompletedHandler(manager, client);
- client.registerForEvent(key, true, eventResponseHandler);
+ client.registerForEvent(key, false, eventResponseHandler);
key = new TaskEventKey(TaskFailedEvent.class, -1);
- client.registerForEvent(key, true, eventResponseHandler);
+ client.registerForEvent(key, false, eventResponseHandler);
key = new TaskEventKey(TaskSkippedEvent.class, -1);
- client.registerForEvent(key, true, eventResponseHandler);
+ client.registerForEvent(key, false, eventResponseHandler);
System.out.println("Registered human task listener");
}
}
@@ -207,6 +207,10 @@
new GetCompletedTaskResponseHandler(manager, client);
client.getTask(taskId, getTaskResponseHandler);
}
+
+ public boolean isRemove() {
+ return false;
+ }
}
private static class GetCompletedTaskResponseHandler extends AbstractBaseResponseHandler implements GetTaskResponseHandler {
Modified: labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/task/service/TaskClientHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/task/service/TaskClientHandler.java 2010-05-07 20:51:57 UTC (rev 32791)
+++ labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/task/service/TaskClientHandler.java 2010-05-08 01:23:37 UTC (rev 32792)
@@ -178,8 +178,11 @@
break;
}
case EventTriggerResponse: {
- EventResponseHandler responseHandler = (EventResponseHandler) responseHandlers.remove(cmd.getId());
+ EventResponseHandler responseHandler = (EventResponseHandler) responseHandlers.get(cmd.getId());
if (responseHandler != null) {
+ if (responseHandler.isRemove()) {
+ responseHandlers.remove(cmd.getId());
+ }
if (!cmd.getArguments().isEmpty() && cmd.getArguments().get(0) instanceof RuntimeException) {
responseHandler.setError((RuntimeException) cmd.getArguments().get(0));
} else {
Modified: labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/task/service/responsehandlers/BlockingEventResponseHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/task/service/responsehandlers/BlockingEventResponseHandler.java 2010-05-07 20:51:57 UTC (rev 32791)
+++ labs/jbossrules/trunk/drools-process/drools-process-task/src/main/java/org/drools/task/service/responsehandlers/BlockingEventResponseHandler.java 2010-05-08 01:23:37 UTC (rev 32792)
@@ -27,4 +27,8 @@
return payload;
}
+
+ public boolean isRemove() {
+ return true;
+ }
}
\ No newline at end of file
More information about the jboss-svn-commits
mailing list