You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by cw...@apache.org on 2013/03/12 21:41:26 UTC
svn commit: r1455702 -
/uima/uima-as/trunk/uimaj-as-jms/src/main/java/org/apache/uima/adapter/jms/client/BaseUIMAAsynchronousEngineCommon_impl.java
Author: cwiklik
Date: Tue Mar 12 20:41:25 2013
New Revision: 1455702
URL: http://svn.apache.org/r1455702
Log:
UIMA-2736 when running in async mode, dont de-serialize child CASes from the CM and just throw the message away after sending FreeCasRequest to the CM
Modified:
uima/uima-as/trunk/uimaj-as-jms/src/main/java/org/apache/uima/adapter/jms/client/BaseUIMAAsynchronousEngineCommon_impl.java
Modified: uima/uima-as/trunk/uimaj-as-jms/src/main/java/org/apache/uima/adapter/jms/client/BaseUIMAAsynchronousEngineCommon_impl.java
URL: http://svn.apache.org/viewvc/uima/uima-as/trunk/uimaj-as-jms/src/main/java/org/apache/uima/adapter/jms/client/BaseUIMAAsynchronousEngineCommon_impl.java?rev=1455702&r1=1455701&r2=1455702&view=diff
==============================================================================
--- uima/uima-as/trunk/uimaj-as-jms/src/main/java/org/apache/uima/adapter/jms/client/BaseUIMAAsynchronousEngineCommon_impl.java (original)
+++ uima/uima-as/trunk/uimaj-as-jms/src/main/java/org/apache/uima/adapter/jms/client/BaseUIMAAsynchronousEngineCommon_impl.java Tue Mar 12 20:41:25 2013
@@ -1396,7 +1396,10 @@ public abstract class BaseUIMAAsynchrono
deserializeAndCompleteProcessingReply(casReferenceId, message, cachedRequest, pt, doNotify);
}
} else if (message.propertyExists(AsynchAEMessage.InputCasReference)) {
- handleProcessReplyFromCasMultiplier(message, casReferenceId, payload);
+ int command = message.getIntProperty(AsynchAEMessage.Command);
+ if (AsynchAEMessage.ServiceInfo != command) {
+ handleProcessReplyFromCasMultiplier(message, casReferenceId, payload);
+ }
} else {
if (UIMAFramework.getLogger(CLASS_NAME).isLoggable(Level.INFO)) {
// Most likely expired message. Already handled as timeout. Discard the message and move on
@@ -1472,7 +1475,13 @@ public abstract class BaseUIMAAsynchrono
return;
}
if (inputCasCachedRequest.isSynchronousInvocation()) {
- handleProcessReplyFromSynchronousCall(inputCasCachedRequest, message);
+ // with synchronous invocation, child CASes are thrown away. With sync API, the UIMA-AS client
+ // is not using callbacks.
+ if ( casReferenceId.equals(inputCasCachedRequest)) {
+ handleProcessReplyFromSynchronousCall(inputCasCachedRequest, message);
+ } else {
+ return;
+ }
}
CAS cas = null;
if (message instanceof TextMessage) {