[jboss-svn-commits] JBL Code SVN: r32930 - in labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src: main/java/org/drools/task/service/hornetq and 4 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Mon May 17 22:38:50 EDT 2010
Author: lucazamador
Date: 2010-05-17 22:38:49 -0400 (Mon, 17 May 2010)
New Revision: 32930
Added:
labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/TaskServiceBaseTest.java
labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/TaskServiceCommentsAndAttachmentsBaseTest.java
labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/hornetq/
labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/hornetq/TaskServiceCommentsAndAttachmentsHornetQTest.java
labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/hornetq/TaskServiceHornetQTest.java
labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/mina/
labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/mina/TaskServiceCommentsAndAttachmentsMinaTest.java
labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/mina/TaskServiceMinaTest.java
Removed:
labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/TaskServiceCommentsAndAttachmentsTest.java
labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/TaskServiceTest.java
Modified:
labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/TaskServerHandler.java
labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/hornetq/BaseHornetQTaskServer.java
labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/hornetq/HornetQSessionWriter.java
labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/hornetq/HornetQTaskClientConnector.java
labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/hornetq/HornetQTaskServerHandler.java
labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/hornetq/TaskHornetQClientHandler.java
labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/mina/MinaTaskClientConnector.java
Log:
added hornetq tests
Modified: labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/TaskServerHandler.java
===================================================================
--- labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/TaskServerHandler.java 2010-05-17 22:15:51 UTC (rev 32929)
+++ labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/TaskServerHandler.java 2010-05-18 02:38:49 UTC (rev 32930)
@@ -14,7 +14,6 @@
import org.drools.task.Content;
import org.drools.task.Task;
import org.drools.task.query.TaskSummary;
-import org.drools.task.service.mina.MinaEventTransport;
public class TaskServerHandler {
Modified: labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/hornetq/BaseHornetQTaskServer.java
===================================================================
--- labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/hornetq/BaseHornetQTaskServer.java 2010-05-17 22:15:51 UTC (rev 32929)
+++ labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/hornetq/BaseHornetQTaskServer.java 2010-05-18 02:38:49 UTC (rev 32930)
@@ -1,12 +1,14 @@
package org.drools.task.service.hornetq;
import java.io.ByteArrayInputStream;
+import java.io.IOException;
import java.io.ObjectInputStream;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import org.drools.task.service.TaskServer;
+import org.hornetq.api.core.HornetQException;
import org.hornetq.api.core.TransportConfiguration;
import org.hornetq.api.core.client.ClientConsumer;
import org.hornetq.api.core.client.ClientMessage;
@@ -49,21 +51,34 @@
try {
start();
while (running) {
+ System.out.println("server: waiting messages...");
ClientMessage msgReceived = consumer.receive();
- int bodySize = msgReceived.getBodySize();
- byte[] message = new byte[bodySize];
- msgReceived.getBodyBuffer().readBytes(message);
- ByteArrayInputStream bais = new ByteArrayInputStream(message);
- ObjectInputStream ois = new ObjectInputStream(bais);
- Object object = ois.readObject();
- String clientId = msgReceived.getStringProperty("producerId");
- handler.messageReceived(session, object, clientId);
+ if (msgReceived!=null) {
+ Object object = readMessage(msgReceived);
+ String clientId = msgReceived.getStringProperty("producerId");
+ System.out.println("server: received message from " + clientId + " type " + object);
+ handler.messageReceived(session, object, clientId);
+ }
}
- } catch (Exception e) {
+ }
+ catch (HornetQException e) {
+ // TODO: handle exception, connection closed is a very common exception
+ e.printStackTrace();
+ }
+ catch (Exception e) {
throw new RuntimeException("Server Exception with class " + getClass() + " using port " + port, e);
}
}
+ private Object readMessage(ClientMessage msgReceived) throws IOException, ClassNotFoundException {
+ int bodySize = msgReceived.getBodySize();
+ byte[] message = new byte[bodySize];
+ msgReceived.getBodyBuffer().readBytes(message);
+ ByteArrayInputStream bais = new ByteArrayInputStream(message);
+ ObjectInputStream ois = new ObjectInputStream(bais);
+ return ois.readObject();
+ }
+
public void start() throws Exception {
if (configuration==null) {
configuration = new ConfigurationImpl();
@@ -91,6 +106,7 @@
consumer = session.createConsumer(SERVER_TASK_COMMANDS_QUEUE);
session.start();
System.out.println("QUEUE '" + SERVER_TASK_COMMANDS_QUEUE + "' CREATED::");
+ running = true;
}
public void stop() throws Exception {
Modified: labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/hornetq/HornetQSessionWriter.java
===================================================================
--- labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/hornetq/HornetQSessionWriter.java 2010-05-17 22:15:51 UTC (rev 32929)
+++ labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/hornetq/HornetQSessionWriter.java 2010-05-18 02:38:49 UTC (rev 32930)
@@ -6,7 +6,6 @@
import org.drools.task.service.SessionWriter;
import org.hornetq.api.core.HornetQException;
-import org.hornetq.api.core.Message;
import org.hornetq.api.core.client.ClientMessage;
import org.hornetq.api.core.client.ClientProducer;
import org.hornetq.api.core.client.ClientSession;
@@ -29,7 +28,8 @@
oout.writeObject(message);
ClientMessage clientMessage = session.createMessage(true);
clientMessage.getBodyBuffer().writeBytes(baos.toByteArray());
- producer.send((Message) message);
+ producer.send(clientMessage);
+ System.out.println("server handler: message sended " + message);
} catch (IOException e) {
e.printStackTrace();
} catch (HornetQException e) {
Modified: labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/hornetq/HornetQTaskClientConnector.java
===================================================================
--- labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/hornetq/HornetQTaskClientConnector.java 2010-05-17 22:15:51 UTC (rev 32929)
+++ labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/hornetq/HornetQTaskClientConnector.java 2010-05-18 02:38:49 UTC (rev 32930)
@@ -1,7 +1,9 @@
package org.drools.task.service.hornetq;
+import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
+import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.util.HashMap;
import java.util.Map;
@@ -11,6 +13,7 @@
import org.drools.task.service.TaskClientConnector;
import org.hornetq.api.core.HornetQException;
import org.hornetq.api.core.TransportConfiguration;
+import org.hornetq.api.core.client.ClientConsumer;
import org.hornetq.api.core.client.ClientMessage;
import org.hornetq.api.core.client.ClientProducer;
import org.hornetq.api.core.client.ClientSession;
@@ -66,6 +69,34 @@
ClientSessionFactory factory = HornetQClient.createClientSessionFactory(transportConfiguration);
session = factory.createSession();
producer = session.createProducer(HornetQTaskServer.SERVER_TASK_COMMANDS_QUEUE);
+
+ Thread responsesThread = new Thread(new Runnable() {
+ public void run() {
+ try {
+ System.out.println("queue " + name + " created");
+ session.createQueue(name, name, true);
+ ClientConsumer consumer = session.createConsumer(name);
+ while (true) {
+ System.out.println("client: waiting message");
+ ClientMessage serverMessage = consumer.receive();
+ System.out.println("client: received message from server! " + serverMessage);
+ if (serverMessage!=null) {
+ ((TaskHornetQClientHandler)handler).messageReceived(session, readMessage(serverMessage), BaseHornetQTaskServer.SERVER_TASK_COMMANDS_QUEUE);
+ }
+ }
+ } catch (HornetQException e) {
+ if (e.getCode()!=HornetQException.OBJECT_CLOSED) {
+ e.printStackTrace();
+ }
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+ }
+ });
+ responsesThread.start();
+
return true;
} catch (Exception e) {
e.printStackTrace();
@@ -73,6 +104,15 @@
}
}
+ private Object readMessage(ClientMessage serverMessage) throws IOException, ClassNotFoundException {
+ int bodySize = serverMessage.getBodySize();
+ byte[] message = new byte[bodySize];
+ serverMessage.getBodyBuffer().readBytes(message);
+ ByteArrayInputStream bais = new ByteArrayInputStream(message);
+ ObjectInputStream ois = new ObjectInputStream(bais);
+ return ois.readObject();
+ }
+
public void disconnect() {
if (session!= null && !session.isClosed()) {
try {
@@ -93,6 +133,7 @@
ClientMessage message = session.createMessage(true);
message.getBodyBuffer().writeBytes(baos.toByteArray());
message.putStringProperty("producerId", name);
+ System.out.println("sending message to server\nproducerId:" + name);
producer.send(message);
} catch (IOException e) {
e.printStackTrace();
Modified: labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/hornetq/HornetQTaskServerHandler.java
===================================================================
--- labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/hornetq/HornetQTaskServerHandler.java 2010-05-17 22:15:51 UTC (rev 32929)
+++ labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/hornetq/HornetQTaskServerHandler.java 2010-05-18 02:38:49 UTC (rev 32930)
@@ -4,7 +4,6 @@
import java.util.Map;
import org.drools.SystemEventListener;
-import org.drools.task.service.Command;
import org.drools.task.service.TaskServerHandler;
import org.drools.task.service.TaskService;
import org.hornetq.api.core.client.ClientProducer;
@@ -29,6 +28,7 @@
if (producer==null) {
producer = session.createProducer(destination);
producers.put(destination, producer);
+ System.out.println("created destination " + destination);
}
handler.messageReceived(new HornetQSessionWriter(session, producer), message);
}
Modified: labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/hornetq/TaskHornetQClientHandler.java
===================================================================
--- labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/hornetq/TaskHornetQClientHandler.java 2010-05-17 22:15:51 UTC (rev 32929)
+++ labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/hornetq/TaskHornetQClientHandler.java 2010-05-18 02:38:49 UTC (rev 32930)
@@ -1,15 +1,9 @@
package org.drools.task.service.hornetq;
import java.util.HashMap;
-import java.util.List;
import java.util.Map;
import org.drools.SystemEventListener;
-import org.drools.task.Content;
-import org.drools.task.Task;
-import org.drools.task.query.TaskSummary;
-import org.drools.task.service.Command;
-import org.drools.task.service.ResponseHandler;
import org.drools.task.service.TaskClient;
import org.drools.task.service.TaskClientHandler;
import org.hornetq.api.core.client.ClientProducer;
Modified: labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/mina/MinaTaskClientConnector.java
===================================================================
--- labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/mina/MinaTaskClientConnector.java 2010-05-17 22:15:51 UTC (rev 32929)
+++ labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/main/java/org/drools/task/service/mina/MinaTaskClientConnector.java 2010-05-18 02:38:49 UTC (rev 32930)
@@ -36,14 +36,14 @@
public boolean connect(SocketConnector connector, SocketAddress address) {
this.connector = connector;
this.address = address;
- connector.setHandler( this.handler );
+ this.connector.setHandler( this.handler );
return connect();
}
public boolean connect(String address, int port) {
this.connector = new NioSocketConnector();
this.address = new InetSocketAddress( address, port );
- connector.setHandler( this.handler );
+ this.connector.setHandler( this.handler );
return connect();
}
Added: labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/TaskServiceBaseTest.java
===================================================================
--- labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/TaskServiceBaseTest.java (rev 0)
+++ labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/TaskServiceBaseTest.java 2010-05-18 02:38:49 UTC (rev 32930)
@@ -0,0 +1,226 @@
+package org.drools.task.service;
+
+import java.io.InputStreamReader;
+import java.io.Reader;
+import java.util.List;
+import java.util.Map;
+
+import org.apache.commons.collections.map.HashedMap;
+import org.drools.task.BaseTest;
+import org.drools.task.Task;
+import org.drools.task.query.TaskSummary;
+import org.drools.task.service.TaskClientHandler.TaskSummaryResponseHandler;
+import org.drools.task.service.responsehandlers.BlockingAddTaskResponseHandler;
+import org.drools.task.utils.CollectionUtils;
+
+public abstract class TaskServiceBaseTest extends BaseTest {
+
+ protected TaskClient client;
+
+ @Override
+ protected void setUp() throws Exception {
+ super.setUp();
+ }
+
+ protected void tearDown() throws Exception {
+ super.tearDown();
+ }
+
+ @SuppressWarnings("unchecked")
+ public void testTasksOwnedQueryWithI18N() throws Exception {
+ Map<String, Object> vars = new HashedMap();
+ vars.put( "users", users );
+ vars.put( "groups", groups );
+
+ //Reader reader;
+ Reader reader = new InputStreamReader( getClass().getResourceAsStream( "QueryData_TasksOwned.mvel" ) );
+ List<Task> tasks = (List<Task>) eval( reader,
+ vars );
+ for ( Task task : tasks ) {
+ BlockingAddTaskResponseHandler responseHandler = new BlockingAddTaskResponseHandler();
+ client.addTask( task, null, responseHandler );
+ }
+
+ // Test UK I18N
+ reader = new InputStreamReader( getClass().getResourceAsStream( "QueryResults_TasksOwnedInEnglish.mvel" ) );
+ Map<String, List<TaskSummary>> expected = (Map<String, List<TaskSummary>>) eval( reader,
+ vars );
+
+ BlockingAllOpenTasksForUseResponseHandler responseHandler = new BlockingAllOpenTasksForUseResponseHandler();
+ client.getTasksOwned( users.get( "peter" ).getId(),
+ "en-UK",
+ responseHandler );
+ List<TaskSummary> actual = responseHandler.getResults();
+ assertEquals( 3,
+ actual.size() );
+ assertTrue( CollectionUtils.equals( expected.get( "peter" ),
+ actual ) );
+
+ responseHandler = new BlockingAllOpenTasksForUseResponseHandler();
+ client.getTasksOwned( users.get( "steve" ).getId(),
+ "en-UK",
+ responseHandler );
+ actual = responseHandler.getResults();
+ assertEquals( 2,
+ actual.size() );
+ assertTrue( CollectionUtils.equals( expected.get( "steve" ),
+ actual ) );
+
+ responseHandler = new BlockingAllOpenTasksForUseResponseHandler();
+ client.getTasksOwned( users.get( "darth" ).getId(),
+ "en-UK",
+ responseHandler );
+ actual = responseHandler.getResults();
+ assertEquals( 1,
+ actual.size() );
+ assertTrue( CollectionUtils.equals( expected.get( "darth" ),
+ actual ) );
+
+ // Test DK I18N
+ reader = new InputStreamReader( getClass().getResourceAsStream( "QueryResults_TasksOwnedInGerman.mvel" ) );
+ expected = (Map<String, List<TaskSummary>>) eval( reader,
+ vars );
+
+ responseHandler = new BlockingAllOpenTasksForUseResponseHandler();
+ client.getTasksOwned( users.get( "peter" ).getId(),
+ "en-DK",
+ responseHandler );
+ actual = responseHandler.getResults();
+ assertEquals( 3,
+ actual.size() );
+ assertTrue( CollectionUtils.equals( expected.get( "peter" ),
+ actual ) );
+
+ responseHandler = new BlockingAllOpenTasksForUseResponseHandler();
+ client.getTasksOwned( users.get( "steve" ).getId(),
+ "en-DK",
+ responseHandler );
+ actual = responseHandler.getResults();
+ assertEquals( 2,
+ actual.size() );
+ assertTrue( CollectionUtils.equals( expected.get( "steve" ),
+ actual ) );
+
+ responseHandler = new BlockingAllOpenTasksForUseResponseHandler();
+ client.getTasksOwned( users.get( "darth" ).getId(),
+ "en-DK",
+ responseHandler );
+ actual = responseHandler.getResults();
+ assertEquals( 1,
+ actual.size() );
+ assertTrue( CollectionUtils.equals( expected.get( "darth" ),
+ actual ) );
+ }
+
+ public void testPeopleAssignmentQueries() {
+ Map vars = new HashedMap();
+ vars.put( "users",
+ users );
+ vars.put( "groups",
+ groups );
+
+ Reader reader = new InputStreamReader( getClass().getResourceAsStream( "QueryData_TasksOwned.mvel" ) );
+ List<Task> tasks = (List<Task>) eval( reader,
+ vars );
+ for ( Task task : tasks ) {
+ taskSession.addTask( task, null );
+ }
+
+ reader = new InputStreamReader( getClass().getResourceAsStream( "QueryResults_PeopleAssignmentQuerries.mvel" ) );
+ Map<String, List<TaskSummary>> expected = (Map<String, List<TaskSummary>>) eval( reader,
+ vars );
+
+ BlockingAllOpenTasksForUseResponseHandler responseHandler = new BlockingAllOpenTasksForUseResponseHandler();
+ client.getTasksAssignedAsTaskInitiator( users.get( "darth" ).getId(),
+ "en-UK",
+ responseHandler );
+ List<TaskSummary> actual = responseHandler.getResults();
+ assertEquals( 1,
+ actual.size() );
+ assertTrue( CollectionUtils.equals( expected.get( "darth" ),
+ actual ) );
+
+ responseHandler = new BlockingAllOpenTasksForUseResponseHandler();
+ client.getTasksAssignedAsBusinessAdministrator( users.get( "steve" ).getId(),
+ "en-UK",
+ responseHandler );
+ actual = responseHandler.getResults();
+ assertTrue( CollectionUtils.equals( expected.get( "steve" ),
+ actual ) );
+
+ responseHandler = new BlockingAllOpenTasksForUseResponseHandler();
+ client.getTasksAssignedAsExcludedOwner( users.get( "liz" ).getId(),
+ "en-UK",
+ responseHandler );
+ actual = responseHandler.getResults();
+ assertEquals( 2,
+ actual.size() );
+ assertTrue( CollectionUtils.equals( expected.get( "liz" ),
+ actual ) );
+
+ responseHandler = new BlockingAllOpenTasksForUseResponseHandler();
+ client.getTasksAssignedAsPotentialOwner( users.get( "bobba" ).getId(),
+ "en-UK",
+ responseHandler );
+ actual = responseHandler.getResults();
+ assertEquals( 3,
+ actual.size() );
+ assertTrue( CollectionUtils.equals( expected.get( "bobba" ),
+ actual ) );
+
+ responseHandler = new BlockingAllOpenTasksForUseResponseHandler();
+ client.getTasksAssignedAsRecipient( users.get( "sly" ).getId(),
+ "en-UK",
+ responseHandler );
+ actual = responseHandler.getResults();
+ assertEquals( 1,
+ actual.size() );
+ assertTrue( CollectionUtils.equals( expected.get( "sly" ),
+ actual ) );
+ }
+
+ public static class BlockingAllOpenTasksForUseResponseHandler
+ implements
+ TaskSummaryResponseHandler {
+ private volatile List<TaskSummary> results;
+ private volatile RuntimeException error;
+
+ public synchronized void execute(List<TaskSummary> results) {
+ this.results = results;
+ notifyAll();
+ }
+
+ public synchronized List<TaskSummary> getResults() {
+ if ( results == null ) {
+ try {
+ wait( 3000 );
+ } catch ( InterruptedException e ) {
+ e.printStackTrace();
+ }
+ }
+
+ if ( results == null ) {
+ throw new RuntimeException( "Timeout : unable to retrieve results" );
+ }
+
+ return results;
+
+ }
+
+ public boolean isDone() {
+ synchronized ( results ) {
+ return results != null;
+ }
+ }
+
+ public void setError(RuntimeException error) {
+ this.error = error;
+ }
+
+ public RuntimeException getError() {
+ return error;
+ }
+
+ }
+
+}
Property changes on: labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/TaskServiceBaseTest.java
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:eol-style
+ native
Added: labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/TaskServiceCommentsAndAttachmentsBaseTest.java
===================================================================
--- labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/TaskServiceCommentsAndAttachmentsBaseTest.java (rev 0)
+++ labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/TaskServiceCommentsAndAttachmentsBaseTest.java 2010-05-18 02:38:49 UTC (rev 32930)
@@ -0,0 +1,235 @@
+package org.drools.task.service;
+
+import java.io.StringReader;
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+
+import org.apache.commons.collections.map.HashedMap;
+import org.drools.task.AccessType;
+import org.drools.task.Attachment;
+import org.drools.task.BaseTest;
+import org.drools.task.Comment;
+import org.drools.task.Content;
+import org.drools.task.Status;
+import org.drools.task.Task;
+import org.drools.task.service.responsehandlers.BlockingAddAttachmentResponseHandler;
+import org.drools.task.service.responsehandlers.BlockingAddCommentResponseHandler;
+import org.drools.task.service.responsehandlers.BlockingAddTaskResponseHandler;
+import org.drools.task.service.responsehandlers.BlockingDeleteAttachmentResponseHandler;
+import org.drools.task.service.responsehandlers.BlockingDeleteCommentResponseHandler;
+import org.drools.task.service.responsehandlers.BlockingGetContentResponseHandler;
+import org.drools.task.service.responsehandlers.BlockingGetTaskResponseHandler;
+import org.drools.task.utils.CollectionUtils;
+
+public abstract class TaskServiceCommentsAndAttachmentsBaseTest extends BaseTest {
+
+ protected TaskClient client;
+
+ @Override
+ protected void setUp() throws Exception {
+ super.setUp();
+ }
+
+ protected void tearDown() throws Exception {
+ super.tearDown();
+ client.disconnect();
+ }
+
+ public void testAddRemoveComment() {
+ Map vars = new HashedMap();
+ vars.put( "users", users );
+ vars.put( "groups", groups );
+ vars.put( "now", new Date() );
+
+ String str = "(with (new Task()) { priority = 55, taskData = (with( new TaskData()) { createdOn = now, activationTime = now}), ";
+ str += "deadlines = new Deadlines(),";
+ str += "delegation = new Delegation(),";
+ str += "peopleAssignments = new PeopleAssignments(),";
+ str += "names = [ new I18NText( 'en-UK', 'This is my task name')] })";
+
+ BlockingAddTaskResponseHandler addTaskResponseHandler = new BlockingAddTaskResponseHandler();
+ Task task = ( Task ) eval( new StringReader( str ), vars );
+ client.addTask( task, null, addTaskResponseHandler );
+
+ long taskId = addTaskResponseHandler.getTaskId();
+
+ Comment comment = new Comment();
+ Date addedAt = new Date( System.currentTimeMillis() );
+ comment.setAddedAt( addedAt );
+ comment.setAddedBy( users.get( "luke" ) );
+ comment.setText( "This is my comment1!!!!!" );
+
+ BlockingAddCommentResponseHandler addCommentResponseHandler = new BlockingAddCommentResponseHandler();
+ client.addComment( taskId, comment,addCommentResponseHandler );
+ assertTrue( addCommentResponseHandler.getCommentId() != comment.getId() );
+
+ BlockingGetTaskResponseHandler getTaskResponseHandler = new BlockingGetTaskResponseHandler();
+ client.getTask( taskId, getTaskResponseHandler );
+ Task task1 = getTaskResponseHandler.getTask();
+ assertNotSame(task, task1);
+ assertFalse( task.equals( task1) );
+
+ List<Comment> comments1 = task1.getTaskData().getComments();
+ assertEquals(1, comments1.size() );
+ Comment returnedComment = comments1.get( 0 );
+ assertEquals( "This is my comment1!!!!!", returnedComment.getText() );
+ assertEquals( addedAt, returnedComment.getAddedAt() );
+ assertEquals( users.get( "luke" ), returnedComment.getAddedBy() );
+
+ assertEquals( (long)addCommentResponseHandler.getCommentId(), (long) returnedComment.getId() );
+
+ // Make the same as the returned tasks, so we can test equals
+ task.getTaskData().setComments( comments1 );
+ task.getTaskData().setStatus( Status.Created );
+ assertEquals(task, task1);
+
+ // test we can have multiple comments
+ comment = new Comment();
+ addedAt = new Date( System.currentTimeMillis() );
+ comment.setAddedAt( addedAt );
+ comment.setAddedBy( users.get( "tony" ) );
+ comment.setText( "This is my comment2!!!!!" );
+
+ addCommentResponseHandler = new BlockingAddCommentResponseHandler();
+ client.addComment( taskId, comment, addCommentResponseHandler );
+
+ getTaskResponseHandler = new BlockingGetTaskResponseHandler();
+ client.getTask( taskId, getTaskResponseHandler );
+ task1 = getTaskResponseHandler.getTask();
+ List<Comment> comments2 = task1.getTaskData().getComments();
+ assertEquals(2, comments2.size() );
+
+ // make two collections the same and compare
+ comments1.add( comment );
+ assertTrue( CollectionUtils.equals( comments1, comments2 ) );
+
+ BlockingDeleteCommentResponseHandler deleteCommentResponseHandler = new BlockingDeleteCommentResponseHandler();
+ client.deleteComment( taskId, addCommentResponseHandler.getCommentId(), deleteCommentResponseHandler );
+ deleteCommentResponseHandler.waitTillDone( 3000 );
+
+ getTaskResponseHandler = new BlockingGetTaskResponseHandler();
+ client.getTask( taskId, getTaskResponseHandler );
+ task1 = getTaskResponseHandler.getTask();
+ comments2 = task1.getTaskData().getComments();
+ assertEquals(1, comments2.size() );
+
+ assertEquals( "This is my comment1!!!!!", comments2.get( 0 ).getText() );
+ }
+
+ public void testAddRemoveAttachment() throws Exception {
+ Map vars = new HashedMap();
+ vars.put( "users", users );
+ vars.put( "groups", groups );
+ vars.put( "now", new Date() );
+
+ String str = "(with (new Task()) { priority = 55, taskData = (with( new TaskData()) { createdOn = now, activationTime = now}), ";
+ str += "deadlines = new Deadlines(),";
+ str += "delegation = new Delegation(),";
+ str += "peopleAssignments = new PeopleAssignments(),";
+ str += "names = [ new I18NText( 'en-UK', 'This is my task name')] })";
+
+ BlockingAddTaskResponseHandler addTaskResponseHandler = new BlockingAddTaskResponseHandler();
+ Task task = ( Task ) eval( new StringReader( str ), vars );
+ client.addTask( task, null, addTaskResponseHandler );
+
+ long taskId = addTaskResponseHandler.getTaskId();
+
+ Attachment attachment = new Attachment();
+ Date attachedAt = new Date( System.currentTimeMillis() );
+ attachment.setAttachedAt( attachedAt);
+ attachment.setAttachedBy( users.get( "luke" ) );
+ attachment.setName( "file1.txt" );
+ attachment.setAccessType( AccessType.Inline );
+ attachment.setContentType( "txt" );
+
+ byte[] bytes = "Ths is my attachment text1".getBytes();
+ Content content = new Content();
+ content.setContent( bytes );
+
+ BlockingAddAttachmentResponseHandler addAttachmentResponseHandler = new BlockingAddAttachmentResponseHandler();
+ client.addAttachment( taskId, attachment, content, addAttachmentResponseHandler);
+ assertTrue( addAttachmentResponseHandler.getAttachmentId() != attachment.getId() );
+ assertTrue( addAttachmentResponseHandler.getContentId() != attachment.getAttachmentContentId() );
+
+ BlockingGetTaskResponseHandler getTaskResponseHandler = new BlockingGetTaskResponseHandler();
+ client.getTask( taskId, getTaskResponseHandler );
+ Task task1 = getTaskResponseHandler.getTask();
+ assertNotSame(task, task1);
+ assertFalse( task.equals( task1) );
+
+ List<Attachment> attachments1 = task1.getTaskData().getAttachments();
+ assertEquals(1, attachments1.size() );
+ Attachment returnedAttachment = attachments1.get( 0 );
+ assertEquals( attachedAt, returnedAttachment.getAttachedAt() );
+ assertEquals( users.get( "luke" ), returnedAttachment.getAttachedBy() );
+ assertEquals( AccessType.Inline, returnedAttachment.getAccessType() );
+ assertEquals( "txt", returnedAttachment.getContentType() );
+ assertEquals( "file1.txt", returnedAttachment.getName() );
+ assertEquals( bytes.length, returnedAttachment.getSize() );
+
+ assertEquals( (long) addAttachmentResponseHandler.getAttachmentId(), (long) returnedAttachment.getId() );
+ assertEquals( (long) addAttachmentResponseHandler.getContentId(), (long) returnedAttachment.getAttachmentContentId() );
+
+ // Make the same as the returned tasks, so we can test equals
+ task.getTaskData().setAttachments( attachments1 );
+ task.getTaskData().setStatus( Status.Created );
+ assertEquals(task, task1);
+
+ BlockingGetContentResponseHandler getResponseHandler = new BlockingGetContentResponseHandler();
+ client.getContent( returnedAttachment.getAttachmentContentId(), getResponseHandler );
+ content = getResponseHandler.getContent();
+ assertEquals( "Ths is my attachment text1", new String( content.getContent() ) );
+
+ // test we can have multiple attachments
+
+ attachment = new Attachment();
+ attachedAt = new Date( System.currentTimeMillis() );
+ attachment.setAttachedAt( attachedAt);
+ attachment.setAttachedBy( users.get( "tony" ) );
+ attachment.setName( "file2.txt" );
+ attachment.setAccessType( AccessType.Inline );
+ attachment.setContentType( "txt" );
+
+ bytes = "Ths is my attachment text2".getBytes();
+ content = new Content();
+ content.setContent( bytes );
+
+ addAttachmentResponseHandler = new BlockingAddAttachmentResponseHandler();
+ client.addAttachment( taskId, attachment, content, addAttachmentResponseHandler);
+
+ getTaskResponseHandler = new BlockingGetTaskResponseHandler();
+ client.getTask( taskId, getTaskResponseHandler );
+ task1 = getTaskResponseHandler.getTask();
+ assertNotSame(task, task1);
+ assertFalse( task.equals( task1) );
+
+ List<Attachment> attachments2 = task1.getTaskData().getAttachments();
+ assertEquals(2, attachments2.size() );
+
+ getResponseHandler = new BlockingGetContentResponseHandler();
+ client.getContent( addAttachmentResponseHandler.getContentId(), getResponseHandler );
+ content = getResponseHandler.getContent();
+ assertEquals( "Ths is my attachment text2", new String( content.getContent() ) );
+
+ // make two collections the same and compare
+ attachment.setSize( 26 );
+ attachment.setAttachmentContentId( addAttachmentResponseHandler.getContentId() );
+ attachments1.add( attachment );
+ assertTrue( CollectionUtils.equals( attachments2, attachments1 ) );
+
+ BlockingDeleteAttachmentResponseHandler deleteCommentResponseHandler = new BlockingDeleteAttachmentResponseHandler();
+ client.deleteAttachment( taskId, addAttachmentResponseHandler.getAttachmentId(), addAttachmentResponseHandler.getContentId(), deleteCommentResponseHandler );
+ deleteCommentResponseHandler.waitTillDone( 3000 );
+
+ Thread.sleep( 3000 );
+
+ getTaskResponseHandler = new BlockingGetTaskResponseHandler();
+ client.getTask( taskId, getTaskResponseHandler );
+ task1 = getTaskResponseHandler.getTask();
+ attachments2 = task1.getTaskData().getAttachments();
+ assertEquals(1, attachments2.size() );
+
+ assertEquals( "file1.txt", attachments2.get( 0 ).getName());
+ }
+}
Property changes on: labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/TaskServiceCommentsAndAttachmentsBaseTest.java
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:eol-style
+ native
Deleted: labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/TaskServiceCommentsAndAttachmentsTest.java
===================================================================
--- labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/TaskServiceCommentsAndAttachmentsTest.java 2010-05-17 22:15:51 UTC (rev 32929)
+++ labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/TaskServiceCommentsAndAttachmentsTest.java 2010-05-18 02:38:49 UTC (rev 32930)
@@ -1,248 +0,0 @@
-package org.drools.task.service;
-
-import java.io.StringReader;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.commons.collections.map.HashedMap;
-import org.drools.SystemEventListenerFactory;
-import org.drools.task.AccessType;
-import org.drools.task.Attachment;
-import org.drools.task.BaseTest;
-import org.drools.task.Comment;
-import org.drools.task.Content;
-import org.drools.task.Status;
-import org.drools.task.Task;
-import org.drools.task.service.mina.MinaTaskClientConnector;
-import org.drools.task.service.mina.MinaTaskServer;
-import org.drools.task.service.mina.TaskMinaClientHandler;
-import org.drools.task.service.responsehandlers.BlockingAddAttachmentResponseHandler;
-import org.drools.task.service.responsehandlers.BlockingAddCommentResponseHandler;
-import org.drools.task.service.responsehandlers.BlockingAddTaskResponseHandler;
-import org.drools.task.service.responsehandlers.BlockingDeleteAttachmentResponseHandler;
-import org.drools.task.service.responsehandlers.BlockingDeleteCommentResponseHandler;
-import org.drools.task.service.responsehandlers.BlockingGetContentResponseHandler;
-import org.drools.task.service.responsehandlers.BlockingGetTaskResponseHandler;
-import org.drools.task.utils.CollectionUtils;
-
-public class TaskServiceCommentsAndAttachmentsTest extends BaseTest {
- MinaTaskServer server;
- TaskClient client;
-
- @Override
- protected void setUp() throws Exception {
- super.setUp();
- server = new MinaTaskServer( taskService );
- Thread thread = new Thread( server );
- thread.start();
- Thread.sleep( 500 );
-
- client = new TaskClient(new MinaTaskClientConnector("client 1",
- new TaskMinaClientHandler(SystemEventListenerFactory.getSystemEventListener())));
- client.connect("127.0.0.1", 9123);
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- client.disconnect();
- server.stop();
- }
-
- public void testAddRemoveComment() {
- Map vars = new HashedMap();
- vars.put( "users", users );
- vars.put( "groups", groups );
- vars.put( "now", new Date() );
-
- String str = "(with (new Task()) { priority = 55, taskData = (with( new TaskData()) { createdOn = now, activationTime = now}), ";
- str += "deadlines = new Deadlines(),";
- str += "delegation = new Delegation(),";
- str += "peopleAssignments = new PeopleAssignments(),";
- str += "names = [ new I18NText( 'en-UK', 'This is my task name')] })";
-
- BlockingAddTaskResponseHandler addTaskResponseHandler = new BlockingAddTaskResponseHandler();
- Task task = ( Task ) eval( new StringReader( str ), vars );
- client.addTask( task, null, addTaskResponseHandler );
-
- long taskId = addTaskResponseHandler.getTaskId();
-
- Comment comment = new Comment();
- Date addedAt = new Date( System.currentTimeMillis() );
- comment.setAddedAt( addedAt );
- comment.setAddedBy( users.get( "luke" ) );
- comment.setText( "This is my comment1!!!!!" );
-
- BlockingAddCommentResponseHandler addCommentResponseHandler = new BlockingAddCommentResponseHandler();
- client.addComment( taskId, comment,addCommentResponseHandler );
- assertTrue( addCommentResponseHandler.getCommentId() != comment.getId() );
-
- BlockingGetTaskResponseHandler getTaskResponseHandler = new BlockingGetTaskResponseHandler();
- client.getTask( taskId, getTaskResponseHandler );
- Task task1 = getTaskResponseHandler.getTask();
- assertNotSame(task, task1);
- assertFalse( task.equals( task1) );
-
- List<Comment> comments1 = task1.getTaskData().getComments();
- assertEquals(1, comments1.size() );
- Comment returnedComment = comments1.get( 0 );
- assertEquals( "This is my comment1!!!!!", returnedComment.getText() );
- assertEquals( addedAt, returnedComment.getAddedAt() );
- assertEquals( users.get( "luke" ), returnedComment.getAddedBy() );
-
- assertEquals( (long)addCommentResponseHandler.getCommentId(), (long) returnedComment.getId() );
-
- // Make the same as the returned tasks, so we can test equals
- task.getTaskData().setComments( comments1 );
- task.getTaskData().setStatus( Status.Created );
- assertEquals(task, task1);
-
- // test we can have multiple comments
- comment = new Comment();
- addedAt = new Date( System.currentTimeMillis() );
- comment.setAddedAt( addedAt );
- comment.setAddedBy( users.get( "tony" ) );
- comment.setText( "This is my comment2!!!!!" );
-
- addCommentResponseHandler = new BlockingAddCommentResponseHandler();
- client.addComment( taskId, comment, addCommentResponseHandler );
-
- getTaskResponseHandler = new BlockingGetTaskResponseHandler();
- client.getTask( taskId, getTaskResponseHandler );
- task1 = getTaskResponseHandler.getTask();
- List<Comment> comments2 = task1.getTaskData().getComments();
- assertEquals(2, comments2.size() );
-
- // make two collections the same and compare
- comments1.add( comment );
- assertTrue( CollectionUtils.equals( comments1, comments2 ) );
-
- BlockingDeleteCommentResponseHandler deleteCommentResponseHandler = new BlockingDeleteCommentResponseHandler();
- client.deleteComment( taskId, addCommentResponseHandler.getCommentId(), deleteCommentResponseHandler );
- deleteCommentResponseHandler.waitTillDone( 3000 );
-
- getTaskResponseHandler = new BlockingGetTaskResponseHandler();
- client.getTask( taskId, getTaskResponseHandler );
- task1 = getTaskResponseHandler.getTask();
- comments2 = task1.getTaskData().getComments();
- assertEquals(1, comments2.size() );
-
- assertEquals( "This is my comment1!!!!!", comments2.get( 0 ).getText() );
- }
-
- public void testAddRemoveAttachment() throws Exception {
- Map vars = new HashedMap();
- vars.put( "users", users );
- vars.put( "groups", groups );
- vars.put( "now", new Date() );
-
- String str = "(with (new Task()) { priority = 55, taskData = (with( new TaskData()) { createdOn = now, activationTime = now}), ";
- str += "deadlines = new Deadlines(),";
- str += "delegation = new Delegation(),";
- str += "peopleAssignments = new PeopleAssignments(),";
- str += "names = [ new I18NText( 'en-UK', 'This is my task name')] })";
-
- BlockingAddTaskResponseHandler addTaskResponseHandler = new BlockingAddTaskResponseHandler();
- Task task = ( Task ) eval( new StringReader( str ), vars );
- client.addTask( task, null, addTaskResponseHandler );
-
- long taskId = addTaskResponseHandler.getTaskId();
-
- Attachment attachment = new Attachment();
- Date attachedAt = new Date( System.currentTimeMillis() );
- attachment.setAttachedAt( attachedAt);
- attachment.setAttachedBy( users.get( "luke" ) );
- attachment.setName( "file1.txt" );
- attachment.setAccessType( AccessType.Inline );
- attachment.setContentType( "txt" );
-
- byte[] bytes = "Ths is my attachment text1".getBytes();
- Content content = new Content();
- content.setContent( bytes );
-
- BlockingAddAttachmentResponseHandler addAttachmentResponseHandler = new BlockingAddAttachmentResponseHandler();
- client.addAttachment( taskId, attachment, content, addAttachmentResponseHandler);
- assertTrue( addAttachmentResponseHandler.getAttachmentId() != attachment.getId() );
- assertTrue( addAttachmentResponseHandler.getContentId() != attachment.getAttachmentContentId() );
-
- BlockingGetTaskResponseHandler getTaskResponseHandler = new BlockingGetTaskResponseHandler();
- client.getTask( taskId, getTaskResponseHandler );
- Task task1 = getTaskResponseHandler.getTask();
- assertNotSame(task, task1);
- assertFalse( task.equals( task1) );
-
- List<Attachment> attachments1 = task1.getTaskData().getAttachments();
- assertEquals(1, attachments1.size() );
- Attachment returnedAttachment = attachments1.get( 0 );
- assertEquals( attachedAt, returnedAttachment.getAttachedAt() );
- assertEquals( users.get( "luke" ), returnedAttachment.getAttachedBy() );
- assertEquals( AccessType.Inline, returnedAttachment.getAccessType() );
- assertEquals( "txt", returnedAttachment.getContentType() );
- assertEquals( "file1.txt", returnedAttachment.getName() );
- assertEquals( bytes.length, returnedAttachment.getSize() );
-
- assertEquals( (long) addAttachmentResponseHandler.getAttachmentId(), (long) returnedAttachment.getId() );
- assertEquals( (long) addAttachmentResponseHandler.getContentId(), (long) returnedAttachment.getAttachmentContentId() );
-
- // Make the same as the returned tasks, so we can test equals
- task.getTaskData().setAttachments( attachments1 );
- task.getTaskData().setStatus( Status.Created );
- assertEquals(task, task1);
-
- BlockingGetContentResponseHandler getResponseHandler = new BlockingGetContentResponseHandler();
- client.getContent( returnedAttachment.getAttachmentContentId(), getResponseHandler );
- content = getResponseHandler.getContent();
- assertEquals( "Ths is my attachment text1", new String( content.getContent() ) );
-
- // test we can have multiple attachments
-
- attachment = new Attachment();
- attachedAt = new Date( System.currentTimeMillis() );
- attachment.setAttachedAt( attachedAt);
- attachment.setAttachedBy( users.get( "tony" ) );
- attachment.setName( "file2.txt" );
- attachment.setAccessType( AccessType.Inline );
- attachment.setContentType( "txt" );
-
- bytes = "Ths is my attachment text2".getBytes();
- content = new Content();
- content.setContent( bytes );
-
- addAttachmentResponseHandler = new BlockingAddAttachmentResponseHandler();
- client.addAttachment( taskId, attachment, content, addAttachmentResponseHandler);
-
- getTaskResponseHandler = new BlockingGetTaskResponseHandler();
- client.getTask( taskId, getTaskResponseHandler );
- task1 = getTaskResponseHandler.getTask();
- assertNotSame(task, task1);
- assertFalse( task.equals( task1) );
-
- List<Attachment> attachments2 = task1.getTaskData().getAttachments();
- assertEquals(2, attachments2.size() );
-
- getResponseHandler = new BlockingGetContentResponseHandler();
- client.getContent( addAttachmentResponseHandler.getContentId(), getResponseHandler );
- content = getResponseHandler.getContent();
- assertEquals( "Ths is my attachment text2", new String( content.getContent() ) );
-
- // make two collections the same and compare
- attachment.setSize( 26 );
- attachment.setAttachmentContentId( addAttachmentResponseHandler.getContentId() );
- attachments1.add( attachment );
- assertTrue( CollectionUtils.equals( attachments2, attachments1 ) );
-
- BlockingDeleteAttachmentResponseHandler deleteCommentResponseHandler = new BlockingDeleteAttachmentResponseHandler();
- client.deleteAttachment( taskId, addAttachmentResponseHandler.getAttachmentId(), addAttachmentResponseHandler.getContentId(), deleteCommentResponseHandler );
- deleteCommentResponseHandler.waitTillDone( 3000 );
-
- Thread.sleep( 3000 );
-
- getTaskResponseHandler = new BlockingGetTaskResponseHandler();
- client.getTask( taskId, getTaskResponseHandler );
- task1 = getTaskResponseHandler.getTask();
- attachments2 = task1.getTaskData().getAttachments();
- assertEquals(1, attachments2.size() );
-
- assertEquals( "file1.txt", attachments2.get( 0 ).getName());
- }
-}
Deleted: labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/TaskServiceTest.java
===================================================================
--- labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/TaskServiceTest.java 2010-05-17 22:15:51 UTC (rev 32929)
+++ labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/TaskServiceTest.java 2010-05-18 02:38:49 UTC (rev 32930)
@@ -1,239 +0,0 @@
-package org.drools.task.service;
-
-import java.io.InputStreamReader;
-import java.io.Reader;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.commons.collections.map.HashedMap;
-import org.drools.SystemEventListenerFactory;
-import org.drools.task.BaseTest;
-import org.drools.task.Task;
-import org.drools.task.query.TaskSummary;
-import org.drools.task.service.TaskClientHandler.TaskSummaryResponseHandler;
-import org.drools.task.service.mina.MinaTaskClientConnector;
-import org.drools.task.service.mina.MinaTaskServer;
-import org.drools.task.service.mina.TaskMinaClientHandler;
-import org.drools.task.service.responsehandlers.BlockingAddTaskResponseHandler;
-import org.drools.task.utils.CollectionUtils;
-
-public class TaskServiceTest extends BaseTest {
- MinaTaskServer server;
- TaskClient client;
-
- @Override
- protected void setUp() throws Exception {
- super.setUp();
- server = new MinaTaskServer( taskService );
- Thread thread = new Thread( server );
- thread.start();
- Thread.sleep( 500 );
- client = new TaskClient(new MinaTaskClientConnector("client 1",
- new TaskMinaClientHandler(SystemEventListenerFactory.getSystemEventListener())));
- client.connect("127.0.0.1", 9123);
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- client.disconnect();
- server.stop();
- }
-
- @SuppressWarnings("unchecked")
- public void testTasksOwnedQueryWithI18N() throws Exception {
- Map<String, Object> vars = new HashedMap();
- vars.put( "users", users );
- vars.put( "groups", groups );
-
- //Reader reader;
- Reader reader = new InputStreamReader( getClass().getResourceAsStream( "QueryData_TasksOwned.mvel" ) );
- List<Task> tasks = (List<Task>) eval( reader,
- vars );
- for ( Task task : tasks ) {
- BlockingAddTaskResponseHandler responseHandler = new BlockingAddTaskResponseHandler();
- client.addTask( task, null, responseHandler );
- }
-
- // Test UK I18N
- reader = new InputStreamReader( getClass().getResourceAsStream( "QueryResults_TasksOwnedInEnglish.mvel" ) );
- Map<String, List<TaskSummary>> expected = (Map<String, List<TaskSummary>>) eval( reader,
- vars );
-
- BlockingAllOpenTasksForUseResponseHandler responseHandler = new BlockingAllOpenTasksForUseResponseHandler();
- client.getTasksOwned( users.get( "peter" ).getId(),
- "en-UK",
- responseHandler );
- List<TaskSummary> actual = responseHandler.getResults();
- assertEquals( 3,
- actual.size() );
- assertTrue( CollectionUtils.equals( expected.get( "peter" ),
- actual ) );
-
- responseHandler = new BlockingAllOpenTasksForUseResponseHandler();
- client.getTasksOwned( users.get( "steve" ).getId(),
- "en-UK",
- responseHandler );
- actual = responseHandler.getResults();
- assertEquals( 2,
- actual.size() );
- assertTrue( CollectionUtils.equals( expected.get( "steve" ),
- actual ) );
-
- responseHandler = new BlockingAllOpenTasksForUseResponseHandler();
- client.getTasksOwned( users.get( "darth" ).getId(),
- "en-UK",
- responseHandler );
- actual = responseHandler.getResults();
- assertEquals( 1,
- actual.size() );
- assertTrue( CollectionUtils.equals( expected.get( "darth" ),
- actual ) );
-
- // Test DK I18N
- reader = new InputStreamReader( getClass().getResourceAsStream( "QueryResults_TasksOwnedInGerman.mvel" ) );
- expected = (Map<String, List<TaskSummary>>) eval( reader,
- vars );
-
- responseHandler = new BlockingAllOpenTasksForUseResponseHandler();
- client.getTasksOwned( users.get( "peter" ).getId(),
- "en-DK",
- responseHandler );
- actual = responseHandler.getResults();
- assertEquals( 3,
- actual.size() );
- assertTrue( CollectionUtils.equals( expected.get( "peter" ),
- actual ) );
-
- responseHandler = new BlockingAllOpenTasksForUseResponseHandler();
- client.getTasksOwned( users.get( "steve" ).getId(),
- "en-DK",
- responseHandler );
- actual = responseHandler.getResults();
- assertEquals( 2,
- actual.size() );
- assertTrue( CollectionUtils.equals( expected.get( "steve" ),
- actual ) );
-
- responseHandler = new BlockingAllOpenTasksForUseResponseHandler();
- client.getTasksOwned( users.get( "darth" ).getId(),
- "en-DK",
- responseHandler );
- actual = responseHandler.getResults();
- assertEquals( 1,
- actual.size() );
- assertTrue( CollectionUtils.equals( expected.get( "darth" ),
- actual ) );
- }
-
- public void testPeopleAssignmentQueries() {
- Map vars = new HashedMap();
- vars.put( "users",
- users );
- vars.put( "groups",
- groups );
-
- Reader reader = new InputStreamReader( getClass().getResourceAsStream( "QueryData_TasksOwned.mvel" ) );
- List<Task> tasks = (List<Task>) eval( reader,
- vars );
- for ( Task task : tasks ) {
- taskSession.addTask( task, null );
- }
-
- reader = new InputStreamReader( getClass().getResourceAsStream( "QueryResults_PeopleAssignmentQuerries.mvel" ) );
- Map<String, List<TaskSummary>> expected = (Map<String, List<TaskSummary>>) eval( reader,
- vars );
-
- BlockingAllOpenTasksForUseResponseHandler responseHandler = new BlockingAllOpenTasksForUseResponseHandler();
- client.getTasksAssignedAsTaskInitiator( users.get( "darth" ).getId(),
- "en-UK",
- responseHandler );
- List<TaskSummary> actual = responseHandler.getResults();
- assertEquals( 1,
- actual.size() );
- assertTrue( CollectionUtils.equals( expected.get( "darth" ),
- actual ) );
-
- responseHandler = new BlockingAllOpenTasksForUseResponseHandler();
- client.getTasksAssignedAsBusinessAdministrator( users.get( "steve" ).getId(),
- "en-UK",
- responseHandler );
- actual = responseHandler.getResults();
- assertTrue( CollectionUtils.equals( expected.get( "steve" ),
- actual ) );
-
- responseHandler = new BlockingAllOpenTasksForUseResponseHandler();
- client.getTasksAssignedAsExcludedOwner( users.get( "liz" ).getId(),
- "en-UK",
- responseHandler );
- actual = responseHandler.getResults();
- assertEquals( 2,
- actual.size() );
- assertTrue( CollectionUtils.equals( expected.get( "liz" ),
- actual ) );
-
- responseHandler = new BlockingAllOpenTasksForUseResponseHandler();
- client.getTasksAssignedAsPotentialOwner( users.get( "bobba" ).getId(),
- "en-UK",
- responseHandler );
- actual = responseHandler.getResults();
- assertEquals( 3,
- actual.size() );
- assertTrue( CollectionUtils.equals( expected.get( "bobba" ),
- actual ) );
-
- responseHandler = new BlockingAllOpenTasksForUseResponseHandler();
- client.getTasksAssignedAsRecipient( users.get( "sly" ).getId(),
- "en-UK",
- responseHandler );
- actual = responseHandler.getResults();
- assertEquals( 1,
- actual.size() );
- assertTrue( CollectionUtils.equals( expected.get( "sly" ),
- actual ) );
- }
-
- public static class BlockingAllOpenTasksForUseResponseHandler
- implements
- TaskSummaryResponseHandler {
- private volatile List<TaskSummary> results;
- private volatile RuntimeException error;
-
- public synchronized void execute(List<TaskSummary> results) {
- this.results = results;
- notifyAll();
- }
-
- public synchronized List<TaskSummary> getResults() {
- if ( results == null ) {
- try {
- wait( 3000 );
- } catch ( InterruptedException e ) {
- e.printStackTrace();
- }
- }
-
- if ( results == null ) {
- throw new RuntimeException( "Timeout : unable to retrieve results" );
- }
-
- return results;
-
- }
-
- public boolean isDone() {
- synchronized ( results ) {
- return results != null;
- }
- }
-
- public void setError(RuntimeException error) {
- this.error = error;
- }
-
- public RuntimeException getError() {
- return error;
- }
-
- }
-
-}
Added: labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/hornetq/TaskServiceCommentsAndAttachmentsHornetQTest.java
===================================================================
--- labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/hornetq/TaskServiceCommentsAndAttachmentsHornetQTest.java (rev 0)
+++ labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/hornetq/TaskServiceCommentsAndAttachmentsHornetQTest.java 2010-05-18 02:38:49 UTC (rev 32930)
@@ -0,0 +1,29 @@
+package org.drools.task.service.hornetq;
+
+import org.drools.SystemEventListenerFactory;
+import org.drools.task.service.TaskClient;
+import org.drools.task.service.TaskServiceCommentsAndAttachmentsBaseTest;
+
+public class TaskServiceCommentsAndAttachmentsHornetQTest extends TaskServiceCommentsAndAttachmentsBaseTest {
+
+ HornetQTaskServer server;
+
+ @Override
+ protected void setUp() throws Exception {
+ super.setUp();
+ server = new HornetQTaskServer( taskService, 5446);
+ Thread thread = new Thread( server );
+ thread.start();
+ Thread.sleep( 500 );
+ client = new TaskClient(new HornetQTaskClientConnector("client 1",
+ new TaskHornetQClientHandler(SystemEventListenerFactory.getSystemEventListener())));
+ client.connect("127.0.0.1", 5446);
+ }
+
+ protected void tearDown() throws Exception {
+ super.tearDown();
+ client.disconnect();
+ server.stop();
+ }
+
+}
Property changes on: labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/hornetq/TaskServiceCommentsAndAttachmentsHornetQTest.java
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:eol-style
+ native
Added: labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/hornetq/TaskServiceHornetQTest.java
===================================================================
--- labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/hornetq/TaskServiceHornetQTest.java (rev 0)
+++ labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/hornetq/TaskServiceHornetQTest.java 2010-05-18 02:38:49 UTC (rev 32930)
@@ -0,0 +1,29 @@
+package org.drools.task.service.hornetq;
+
+import org.drools.SystemEventListenerFactory;
+import org.drools.task.service.TaskClient;
+import org.drools.task.service.TaskServiceBaseTest;
+
+public class TaskServiceHornetQTest extends TaskServiceBaseTest {
+
+ HornetQTaskServer server;
+
+ @Override
+ protected void setUp() throws Exception {
+ super.setUp();
+ server = new HornetQTaskServer( taskService, 5446);
+ Thread thread = new Thread( server );
+ thread.start();
+ Thread.sleep( 500 );
+ client = new TaskClient(new HornetQTaskClientConnector("client 1",
+ new TaskHornetQClientHandler(SystemEventListenerFactory.getSystemEventListener())));
+ client.connect("127.0.0.1", 5446);
+ }
+
+ protected void tearDown() throws Exception {
+ super.tearDown();
+ client.disconnect();
+ server.stop();
+ }
+
+}
Property changes on: labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/hornetq/TaskServiceHornetQTest.java
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:eol-style
+ native
Added: labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/mina/TaskServiceCommentsAndAttachmentsMinaTest.java
===================================================================
--- labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/mina/TaskServiceCommentsAndAttachmentsMinaTest.java (rev 0)
+++ labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/mina/TaskServiceCommentsAndAttachmentsMinaTest.java 2010-05-18 02:38:49 UTC (rev 32930)
@@ -0,0 +1,30 @@
+package org.drools.task.service.mina;
+
+import org.drools.SystemEventListenerFactory;
+import org.drools.task.service.TaskClient;
+import org.drools.task.service.TaskServiceCommentsAndAttachmentsBaseTest;
+
+public class TaskServiceCommentsAndAttachmentsMinaTest extends TaskServiceCommentsAndAttachmentsBaseTest {
+
+ MinaTaskServer server;
+
+ @Override
+ protected void setUp() throws Exception {
+ super.setUp();
+ server = new MinaTaskServer( taskService );
+ Thread thread = new Thread( server );
+ thread.start();
+ Thread.sleep( 500 );
+
+ client = new TaskClient(new MinaTaskClientConnector("client 1",
+ new TaskMinaClientHandler(SystemEventListenerFactory.getSystemEventListener())));
+ client.connect("127.0.0.1", 9123);
+ }
+
+ protected void tearDown() throws Exception {
+ super.tearDown();
+ client.disconnect();
+ server.stop();
+ }
+
+}
Property changes on: labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/mina/TaskServiceCommentsAndAttachmentsMinaTest.java
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:eol-style
+ native
Added: labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/mina/TaskServiceMinaTest.java
===================================================================
--- labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/mina/TaskServiceMinaTest.java (rev 0)
+++ labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/mina/TaskServiceMinaTest.java 2010-05-18 02:38:49 UTC (rev 32930)
@@ -0,0 +1,32 @@
+package org.drools.task.service.mina;
+
+import org.drools.SystemEventListenerFactory;
+import org.drools.task.service.TaskClient;
+import org.drools.task.service.TaskServiceBaseTest;
+import org.drools.task.service.mina.MinaTaskClientConnector;
+import org.drools.task.service.mina.MinaTaskServer;
+import org.drools.task.service.mina.TaskMinaClientHandler;
+
+public class TaskServiceMinaTest extends TaskServiceBaseTest {
+
+ MinaTaskServer server;
+
+ @Override
+ protected void setUp() throws Exception {
+ super.setUp();
+ server = new MinaTaskServer( taskService );
+ Thread thread = new Thread( server );
+ thread.start();
+ Thread.sleep( 500 );
+ client = new TaskClient(new MinaTaskClientConnector("client 1",
+ new TaskMinaClientHandler(SystemEventListenerFactory.getSystemEventListener())));
+ client.connect("127.0.0.1", 9123);
+ }
+
+ protected void tearDown() throws Exception {
+ super.tearDown();
+ client.disconnect();
+ server.stop();
+ }
+
+}
Property changes on: labs/jbossrules/branches/remote_implementation_using_hornetq-lucaz/drools-process/drools-process-task/src/test/java/org/drools/task/service/mina/TaskServiceMinaTest.java
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:eol-style
+ native
More information about the jboss-svn-commits
mailing list