Author: cwiklik
Date: Fri Oct 15 15:45:05 2010
New Revision: 1022970
URL: http://svn.apache.org/viewvc?rev=1022970&view=rev
Log:
UIMA-1902 Modify handleServiceInfoReply() to tolerate missing CAS reference id
in MessageContext. The ServiceInfo is now being sent by a service for each
request including GetMeta and CPC which have no associtated Cas Ref Id.
Modified:
uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/input/ProcessResponseHandler.java
Modified:
uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/input/ProcessResponseHandler.java
URL:
http://svn.apache.org/viewvc/uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/input/ProcessResponseHandler.java?rev=1022970&r1=1022969&r2=1022970&view=diff
==============================================================================
---
uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/input/ProcessResponseHandler.java
(original)
+++
uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/input/ProcessResponseHandler.java
Fri Oct 15 15:45:05 2010
@@ -599,6 +599,9 @@ public class ProcessResponseHandler exte
String casReferenceId = null;
try {
casReferenceId =
messageContext.getMessageStringProperty(AsynchAEMessage.CasReference);
+ if ( casReferenceId == null ) {
+ return; // nothing to do
+ }
Endpoint freeCasEndpoint = messageContext.getEndpoint();
CasStateEntry casStateEntry = ((AggregateAnalysisEngineController)
getController())
.getLocalCache().lookupEntry(casReferenceId);
@@ -606,8 +609,7 @@ public class ProcessResponseHandler exte
casStateEntry.setFreeCasNotificationEndpoint(freeCasEndpoint);
}
} catch (Exception e) {
- System.out.println("Controller:" + getController().getComponentName() +
" CAS:"
- + casReferenceId + " Not Found In Cache");
+ return;
}
}
@@ -665,7 +667,7 @@ public class ProcessResponseHandler exte
}
handleCollectionProcessCompleteReply(messageContext, key);
} else if (AsynchAEMessage.None == payload && AsynchAEMessage.ACK ==
command) {
- handleACK(messageContext);
+ handleACK(messageContext, key);
} else if (AsynchAEMessage.None == payload && AsynchAEMessage.Ping ==
command) {
handlePingReply(messageContext);
} else if (AsynchAEMessage.None == payload &&
AsynchAEMessage.ServiceInfo == command) {
@@ -683,10 +685,8 @@ public class ProcessResponseHandler exte
}
- private void handleACK(MessageContext aMessageContext) throws
AsynchAEException {
- if (getController() instanceof PrimitiveAnalysisEngineController) {
- // ((PrimitiveAnalysisEngineController) getController()).throttleNext();
- }
+ private void handleACK(MessageContext aMessageContext, String key) throws
AsynchAEException {
+// System.out.println("+++++++++++++++
Controller:"+getController().getComponentName()+" Received Reply ACK from
Service:"+key);
}
}