[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