]> git.argeo.org Git - gpl/argeo-slc.git/blobdiff - runtime/org.argeo.slc.support.activemq/src/main/java/org/argeo/slc/jms/JmsAgentProxy.java
Introduce SLC RCP
[gpl/argeo-slc.git] / runtime / org.argeo.slc.support.activemq / src / main / java / org / argeo / slc / jms / JmsAgentProxy.java
index 7982bcd7aff7d7a06f10cc2ed99bb536cee84533..2230cb876583e58cf6d8a53125205b8c9e0895f7 100644 (file)
@@ -53,6 +53,10 @@ public class JmsAgentProxy implements SlcAgent {
                this.jmsTemplate = jmsTemplate;
        }
 
+       public String getAgentUuid() {
+               return agentUuid;
+       }
+
        public ExecutionModuleDescriptor getExecutionModuleDescriptor(
                        final String moduleName, final String version) {
                return (ExecutionModuleDescriptor) sendReceive(new AgentMC(
@@ -84,7 +88,18 @@ public class JmsAgentProxy implements SlcAgent {
        }
 
        protected Object sendReceive(AgentMC messageCreator) {
-               return sendReceive(messageCreator, true);
+               long begin = System.currentTimeMillis();
+               Object res;
+               try {
+                       res = sendReceive(messageCreator, true);
+               } finally {
+                       if (log.isTraceEnabled())
+                               log.trace("To agent #" + agentUuid + " in "
+                                               + (System.currentTimeMillis() - begin) + " ms, query '"
+                                               + messageCreator.getQuery() + "', correlationId "
+                                               + messageCreator.getCorrelationId());
+               }
+               return res;
        }
 
        /**
@@ -116,11 +131,6 @@ public class JmsAgentProxy implements SlcAgent {
 
        protected void send(AgentMC messageCreator) {
                jmsTemplate.send(requestDestination, messageCreator);
-               if (log.isTraceEnabled())
-                       log.debug("Sent query '" + messageCreator.getQuery()
-                                       + "' with correlationId "
-                                       + messageCreator.getCorrelationId() + " to agent "
-                                       + agentUuid);
        }
 
        protected Object processResponse(AgentMC messageCreator,
@@ -145,10 +155,6 @@ public class JmsAgentProxy implements SlcAgent {
                        else
                                return null;
                }
-               if (log.isTraceEnabled())
-                       log.debug("Received response for query '" + query
-                                       + "' with correlationId " + correlationId + " from agent "
-                                       + agentUuid);
 
                try {
                        return fromMessage(responseMsg);
@@ -192,7 +198,9 @@ public class JmsAgentProxy implements SlcAgent {
                                msg = session.createTextMessage();
                        else
                                msg = toMessage(body, session);
-                       msg.setStringProperty(MsgConstants.PROPERTY_SLC_AGENT_ID, agentUuid);
+                       msg
+                                       .setStringProperty(MsgConstants.PROPERTY_SLC_AGENT_ID,
+                                                       agentUuid);
                        msg.setStringProperty(JmsAgent.PROPERTY_QUERY, query);
                        msg.setJMSCorrelationID(correlationId);
                        setArguments(msg);