You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by sc...@apache.org on 2008/10/10 00:30:58 UTC

svn commit: r703280 - in /incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main: java/org/apache/uima/aae/ java/org/apache/uima/aae/client/ java/org/apache/uima/aae/controller/ java/org/apache/uima/aae/handler/ java/org/apache/uima/aae/handler/in...

Author: schor
Date: Thu Oct  9 15:30:58 2008
New Revision: 703280

URL: http://svn.apache.org/viewvc?rev=703280&view=rev
Log:
[UIMA-1196] apply patch supporting binary serialization

Modified:
    incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/UimaSerializer.java
    incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/client/UimaAsynchronousEngine.java
    incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/BaseAnalysisEngineController.java
    incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/Endpoint.java
    incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/Endpoint_impl.java
    incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/HandlerBase.java
    incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/input/ProcessRequestHandler_impl.java
    incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/input/ProcessResponseHandler.java
    incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/message/AsynchAEMessage.java
    incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/message/UimaMessageValidator.java
    incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/resources/uimaee_messages.properties

Modified: incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/UimaSerializer.java
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/UimaSerializer.java?rev=703280&r1=703279&r2=703280&view=diff
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/UimaSerializer.java (original)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/UimaSerializer.java Thu Oct  9 15:30:58 2008
@@ -196,6 +196,50 @@
 	    xmlReader.setContentHandler(handler); 
 	    xmlReader.parse(new InputSource(reader));
 	}
+  /** Utility method for deserializing a CAS from a binary */
+  public static void deserializeCasFromBinary(byte[] binarySource, CAS aCAS) throws Exception
+  {
+    ByteArrayInputStream fis = null;
+    try
+    {
+      fis =  new ByteArrayInputStream(binarySource);
+      Serialization.deserializeCAS(aCAS, fis);
+    }
+    catch( Exception e)
+    {
+      throw e;
+    }
+    finally
+    {
+      if ( fis != null )
+      {
+        fis.close();
+      }
+    }
+  }
+
+  public static byte[] serializeCasToBinary(CAS aCAS) throws Exception
+  {
+    ByteArrayOutputStream fos = null;
+    try
+    {
+      fos = new ByteArrayOutputStream();
+      Serialization.serializeCAS(aCAS, fos);
+      return fos.toByteArray();
+    }
+    catch( Exception e)
+    {
+      throw e;
+    }
+    finally
+    {
+      if ( fos != null)
+      {
+        fos.close();
+      }
+    }
+  }
+
 
 	
 }	

Modified: incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/client/UimaAsynchronousEngine.java
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/client/UimaAsynchronousEngine.java?rev=703280&r1=703279&r2=703280&view=diff
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/client/UimaAsynchronousEngine.java (original)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/client/UimaAsynchronousEngine.java Thu Oct  9 15:30:58 2008
@@ -81,9 +81,10 @@
 	public static final String GetMetaTimeout = "GetMetaTimeout";
 	public static final String DD2SpringXsltFilePath = "DD2SpringXsltFilePath";
 	public static final String SaxonClasspath = "SaxonClasspath";
-	public static final String UimaEeDebug = "-uimaEeDebug";
+  public static final String UimaEeDebug = "-uimaEeDebug";
+  public static final String SerializationStrategy = "SerializationStrategy";
 
-	
+		
 	/**
 	 * Initializes UIMA asynchronous client using configuration parameters provided in a Map object. It creates a
 	 * connection to a service queue managed by a Broker as specified in the parameters. A temporary reply 
@@ -254,5 +255,13 @@
 	   */
 	  public void undeploy( String aSpringContainerId ) throws Exception;
 
+	  /**
+	   * Returns serialization strategy for the remote service. All CASes will
+	   * be serialized according to the specified serialization. Either xmi or binary
+	   * 
+	   *   
+	   * @return String type of serialization for CASes
+	   */
+	  public String getSerializationStrategy() ;
 }
 

Modified: incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/BaseAnalysisEngineController.java
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/BaseAnalysisEngineController.java?rev=703280&r1=703279&r2=703280&view=diff
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/BaseAnalysisEngineController.java (original)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/BaseAnalysisEngineController.java Thu Oct  9 15:30:58 2008
@@ -359,6 +359,29 @@
 		}
 		initializeServiceStats();
 
+		
+		//  Show Serialization Strategy of each remote delegate
+    if ( this instanceof AggregateAnalysisEngineController )
+    {
+      Set set = aDestinationMap.entrySet();
+      for( Iterator it = set.iterator(); it.hasNext();)
+      {
+        Map.Entry entry = (Map.Entry)it.next();
+        Endpoint endpoint = (Endpoint)entry.getValue();
+        if ( endpoint != null && endpoint.isRemote() )
+        {
+          String key = ((AggregateAnalysisEngineController)this).lookUpDelegateKey(endpoint.getEndpoint());
+          System.out.println(">>> Controller:"+getComponentName()+" Configured To Serialize CASes To Remote Delegate:"+key+" Using "+endpoint.getSerializer()+" Serialization");
+          if ( UIMAFramework.getLogger(CLASS_NAME).isLoggable(Level.INFO) ) {
+            UIMAFramework.getLogger(CLASS_NAME).logrb(Level.INFO, CLASS_NAME.getName(),
+                    "C'tor", UIMAEE_Constants.JMS_LOG_RESOURCE_BUNDLE, "UIMAEE_show_remote_delegate_serialization_INFO",
+                    new Object[] { getComponentName(), key, endpoint.getSerializer()});
+          }
+        }
+      }
+    }
+		
+		
 	}
   public UimaTransport getTransport(String aKey) throws Exception
   {

Modified: incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/Endpoint.java
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/Endpoint.java?rev=703280&r1=703279&r2=703280&view=diff
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/Endpoint.java (original)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/Endpoint.java Thu Oct  9 15:30:58 2008
@@ -148,4 +148,7 @@
   public void setConcurrentReplyConsumers(int aConsumerCount);
   
   public int getConcurrentReplyConsumers();
+  
+  public void setSerializer( String aSerializer );
+ 
 }

Modified: incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/Endpoint_impl.java
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/Endpoint_impl.java?rev=703280&r1=703279&r2=703280&view=diff
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/Endpoint_impl.java (original)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/Endpoint_impl.java Thu Oct  9 15:30:58 2008
@@ -61,7 +61,7 @@
 
 	private String descriptor;
 
-	private String serializer;
+	private String serializer="xmi";
 
 	private boolean finalEndpoint;
 	
@@ -232,7 +232,9 @@
 	}
 	public void setSerializer(String serializer)
 	{
-		this.serializer = serializer;
+	  if ( serializer != null && serializer.trim().length() > 0 ) {
+      this.serializer = serializer;
+	  }
 	}
 
 	public int getMetadataRequestTimeout()

Modified: incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/HandlerBase.java
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/HandlerBase.java?rev=703280&r1=703279&r2=703280&view=diff
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/HandlerBase.java (original)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/HandlerBase.java Thu Oct  9 15:30:58 2008
@@ -21,6 +21,7 @@
 
 import org.apache.uima.UIMAFramework;
 import org.apache.uima.aae.UIMAEE_Constants;
+import org.apache.uima.aae.UimaSerializer;
 import org.apache.uima.aae.InProcessCache.CacheEntry;
 import org.apache.uima.aae.controller.AggregateAnalysisEngineController;
 import org.apache.uima.aae.controller.AnalysisEngineController;
@@ -374,6 +375,11 @@
 				aggregateDelegateStats( aMessageContext, aCasReferenceId );
 			}			
 	}
+  protected void deserialize( byte[] data, CAS cas ) 
+  throws Exception
+  {
+    UimaSerializer.deserializeCasFromBinary(data, cas);
+  }
 
 
 }

Modified: incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/input/ProcessRequestHandler_impl.java
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/input/ProcessRequestHandler_impl.java?rev=703280&r1=703279&r2=703280&view=diff
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/input/ProcessRequestHandler_impl.java (original)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/input/ProcessRequestHandler_impl.java Thu Oct  9 15:30:58 2008
@@ -132,8 +132,6 @@
 		long inTime = System.nanoTime();
 		boolean casRegistered = false;
 
-		//	Fetch serialized CAS from the message
-		String xmi = aMessageContext.getStringMessage();
 		
 		//	Time how long we wait on Cas Pool to fetch a new CAS
 		long t1 = getController().getCpuTime();
@@ -142,8 +140,9 @@
 		//	fetch the CAS from a shadow CAS pool. Otherwise, fetch the CAS
 		//	from the service CAS Pool.
 		// ************************************************************************* 
+    Endpoint endpoint = aMessageContext.getEndpoint();
 
-		CAS cas = getCAS(aMessageContext.propertyExists(AsynchAEMessage.CasSequence), shadowCasPoolKey, aMessageContext.getEndpoint().getEndpoint());
+		CAS cas = getCAS(aMessageContext.propertyExists(AsynchAEMessage.CasSequence), shadowCasPoolKey,endpoint.getEndpoint());
 		long timeWaitingForCAS = getController().getCpuTime() - t1;
 		//	Check if we are still running
 		if ( getController().isStopped() )
@@ -153,11 +152,45 @@
 			return null;
 		}
 		// ************************************************************************* 
-		//	Deserialize the CAS from the message
+		//	Deserialize CAS from the message
 		// ************************************************************************* 
-	    t1 = getController().getCpuTime();
-		XmiSerializationSharedData deserSharedData = new XmiSerializationSharedData();
-		UimaSerializer.deserializeCasFromXmi(xmi, cas, deserSharedData, true, -1);
+	  t1 = getController().getCpuTime();
+	  String serializationStrategy = endpoint.getSerializer();
+	  XmiSerializationSharedData deserSharedData = null;
+	  CacheEntry entry = null;
+	  if ( serializationStrategy.equals("xmi"))
+	  {
+	    //  Fetch serialized CAS from the message
+	    String xmi = aMessageContext.getStringMessage();
+	    deserSharedData = new XmiSerializationSharedData();
+	    UimaSerializer.deserializeCasFromXmi(xmi, cas, deserSharedData, true, -1);
+	    // *************************************************************************
+	    // Check and set up for Delta CAS reply
+	    // *************************************************************************
+	    boolean acceptsDeltaCas = false;
+	    Marker marker = null;
+	    if (aMessageContext.propertyExists(AsynchAEMessage.AcceptsDeltaCas)) {
+	        acceptsDeltaCas = aMessageContext.getMessageBooleanProperty(AsynchAEMessage.AcceptsDeltaCas);
+	        if (acceptsDeltaCas ) {
+	         marker = cas.createMarker();
+	        }
+	    }
+	    // ************************************************************************* 
+	    //  Register the CAS with a local cache
+	    // ************************************************************************* 
+	    //CacheEntry entry = getController().getInProcessCache().register(cas, aMessageContext, deserSharedData, casReferenceId);
+	    entry = getController().getInProcessCache().register(cas, aMessageContext, deserSharedData, casReferenceId, marker, acceptsDeltaCas);
+	  }
+	  else if ( serializationStrategy.equals("binary"))
+	  {
+	    // ************************************************************************* 
+	    //  Register the CAS with a local cache
+	    // ************************************************************************* 
+	    //CacheEntry entry = getController().getInProcessCache().register(cas, aMessageContext, deserSharedData, casReferenceId);
+	    byte[] binarySource = aMessageContext.getByteMessage();
+	    UimaSerializer.deserializeCasFromBinary(binarySource, cas);
+	    entry = getController().getInProcessCache().register(cas, aMessageContext, deserSharedData, casReferenceId );
+	  }
 		long timeToDeserializeCAS = getController().getCpuTime() - t1;
 		getController().incrementDeserializationTime(timeToDeserializeCAS);
 		LongNumericStatistic statistic;
@@ -169,23 +202,6 @@
 				"handleProcessRequestWithXMI", UIMAEE_Constants.JMS_LOG_RESOURCE_BUNDLE, "UIMAEE_deserialize_cas_time_FINE",
 				new Object[] { timeToDeserializeCAS / 1000 });
 		
-		// *************************************************************************
-		// Check and set up for Delta CAS reply
-		// *************************************************************************
-		boolean acceptsDeltaCas = false;
-		Marker marker = null;
-		if (aMessageContext.propertyExists(AsynchAEMessage.AcceptsDeltaCas)) {
-	      acceptsDeltaCas = aMessageContext.getMessageBooleanProperty(AsynchAEMessage.AcceptsDeltaCas);
-	      if (acceptsDeltaCas ) {
-	    	 marker = cas.createMarker();
-	      }
-		}
-		
-		// ************************************************************************* 
-		//	Register the CAS with a local cache
-		// ************************************************************************* 
-		//CacheEntry entry = getController().getInProcessCache().register(cas, aMessageContext, deserSharedData, casReferenceId);
-		CacheEntry entry = getController().getInProcessCache().register(cas, aMessageContext, deserSharedData, casReferenceId, marker, acceptsDeltaCas);
 
 		//	Update Stats
 		ServicePerformance casStats = getController().getCasStatistics(casReferenceId);
@@ -269,12 +285,12 @@
 	 * @param aMessageContext - contains a message from UIMA-AS Client
 	 * @throws AsynchAEException
 	 */
-	private void handleProcessRequestWithXMI(MessageContext aMessageContext) throws AsynchAEException
+	private void handleProcessRequestFromRemoteDelegate(MessageContext aMessageContext) throws AsynchAEException
 	{
 		CacheEntry entry = null;
 		String casReferenceId = null;
 		//	Check if there is a cargo in the message
-		if ( aMessageContext.getStringMessage() == null )
+		if ( aMessageContext.getMessageIntProperty(AsynchAEMessage.Payload)== AsynchAEMessage.XMIPayload && aMessageContext.getStringMessage() == null )
 		{
 			return; // No XMI just return
 		}
@@ -767,14 +783,14 @@
 
 					handleProcessRequestWithCASReference(messageContext);
 				}
-				else if (AsynchAEMessage.XMIPayload == payload)
+				else if (AsynchAEMessage.XMIPayload == payload || AsynchAEMessage.BinaryPayload == payload)
 				{
 					//	Fetch id of the CAS from the message. 
 					if ( getCasReferenceId(messageContext) == null )
 					{
 						return; // 	Invalid message. Nothing to do
 					}
-					handleProcessRequestWithXMI(messageContext);
+					handleProcessRequestFromRemoteDelegate(messageContext);
 				}
 				else if (AsynchAEMessage.XCASPayload == payload)
 				{

Modified: incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/input/ProcessResponseHandler.java
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/input/ProcessResponseHandler.java?rev=703280&r1=703279&r2=703280&view=diff
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/input/ProcessResponseHandler.java (original)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/input/ProcessResponseHandler.java Thu Oct  9 15:30:58 2008
@@ -146,7 +146,7 @@
 
 	}
 
-	private synchronized void handleProcessResponseWithXMI(MessageContext aMessageContext, String aDelegateKey)
+	private synchronized void handleProcessResponseFromRemoteDelegate(MessageContext aMessageContext, String aDelegateKey)
 	{
 		CAS cas = null;
 		String casReferenceId = null;
@@ -250,12 +250,18 @@
 			}
 			else // general case
 			{
-			  //	Processing a reply from a standard, non-parallel delegate
-			  if (aMessageContext.getMessageBooleanProperty(AsynchAEMessage.SentDeltaCas)) {
-			    int highWaterMark = cacheEntry.getHighWaterMark();
-			    deserialize( xmi, cas, casReferenceId, highWaterMark, AllowPreexistingFS.allow);
-			  } else {
-			    deserialize(xmi, cas, casReferenceId);
+			  String serializationStrategy = endpointWithTimer.getSerializer();
+			  if ( serializationStrategy.equals("binary")) {
+			   byte[] binaryData = aMessageContext.getByteMessage();
+			   UimaSerializer.deserializeCasFromBinary(binaryData, cas);
+			  }  else {
+	        //  Processing a reply from a standard, non-parallel delegate
+	        if (aMessageContext.getMessageBooleanProperty(AsynchAEMessage.SentDeltaCas)) {
+	          int highWaterMark = cacheEntry.getHighWaterMark();
+	          deserialize( xmi, cas, casReferenceId, highWaterMark, AllowPreexistingFS.allow);
+	        } else {
+	          deserialize(xmi, cas, casReferenceId);
+	        }
 			  }
 			}
 			
@@ -327,15 +333,18 @@
 	**/
 	private void deserialize( String xmi, CAS cas, String casReferenceId ) throws Exception
 	{
+	  CacheEntry entry = getController().getInProcessCache().getCacheEntryForCAS(casReferenceId);
 		//	Processing the reply from a standard, non-parallel delegate
 		XmiSerializationSharedData deserSharedData;
-		deserSharedData = getController().getInProcessCache().getCacheEntryForCAS(casReferenceId).getDeserSharedData();
+		deserSharedData = entry.getDeserSharedData();
 		if (deserSharedData == null) {
 			deserSharedData = new XmiSerializationSharedData();
-			getController().getInProcessCache().getCacheEntryForCAS(casReferenceId).setXmiSerializationData(deserSharedData);
+			entry.setXmiSerializationData(deserSharedData);
 		}
 		UimaSerializer.deserializeCasFromXmi(xmi, cas, deserSharedData, true, -1);
 	}
+	
+	
 	private synchronized void handleProcessResponseWithCASReference(MessageContext aMessageContext )
 	{
 		String casReferenceId = null;
@@ -601,9 +610,9 @@
 					resetErrorCounts(key);
 				}
 			}
-			else if (AsynchAEMessage.XMIPayload == payload)
+			else if (AsynchAEMessage.XMIPayload == payload || AsynchAEMessage.BinaryPayload == payload)
 			{
-				handleProcessResponseWithXMI(messageContext, key);
+			  handleProcessResponseFromRemoteDelegate(messageContext, key);
 				if ( key != null )
 				{
 					resetErrorCounts(key);

Modified: incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/message/AsynchAEMessage.java
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/message/AsynchAEMessage.java?rev=703280&r1=703279&r2=703280&view=diff
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/message/AsynchAEMessage.java (original)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/message/AsynchAEMessage.java Thu Oct  9 15:30:58 2008
@@ -58,7 +58,7 @@
 	public static final int Exception= 1003;
 	public static final int XCASPayload = 1004;
 	public static final int None = 1005;
-	
+	public static final int BinaryPayload = 1006;
 	
 
 	

Modified: incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/message/UimaMessageValidator.java
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/message/UimaMessageValidator.java?rev=703280&r1=703279&r2=703280&view=diff
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/message/UimaMessageValidator.java (original)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/message/UimaMessageValidator.java Thu Oct  9 15:30:58 2008
@@ -127,7 +127,7 @@
     if (aMessage.containsProperty(AsynchAEMessage.Payload)) {
       int payload = aMessage.getIntProperty(AsynchAEMessage.Payload);
       if (payload != AsynchAEMessage.XMIPayload && payload != AsynchAEMessage.CASRefID
-              && payload != AsynchAEMessage.Exception && payload != AsynchAEMessage.Metadata) {
+          && payload != AsynchAEMessage.BinaryPayload  && payload != AsynchAEMessage.Exception && payload != AsynchAEMessage.Metadata) {
         UIMAFramework.getLogger(CLASS_NAME).logrb(Level.INFO, CLASS_NAME.getName(), "validPayload",
                 UIMAEE_Constants.JMS_LOG_RESOURCE_BUNDLE, "UIMAJMS_invalid_payload_in_message__INFO",
                 new Object[] { payload, endpointName });
@@ -224,6 +224,8 @@
       switch (aValueToDecode) {
         case AsynchAEMessage.XMIPayload:
           return "XMIPayload";
+        case AsynchAEMessage.BinaryPayload:
+          return "BinaryPayload";
         case AsynchAEMessage.CASRefID:
           return "CASRefID";
         case AsynchAEMessage.Metadata:

Modified: incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/resources/uimaee_messages.properties
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/resources/uimaee_messages.properties?rev=703280&r1=703279&r2=703280&view=diff
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/resources/uimaee_messages.properties (original)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/resources/uimaee_messages.properties Thu Oct  9 15:30:58 2008
@@ -166,3 +166,4 @@
 UIMAEE_msg_origin_not_found__INFO = Controller: {0} Message Origin For Cas: {1} Not Found.
 UIMAEE_msg_origin_added__FINEST = Controller: {0} Cached Message Origin For Cas: {1}. Message Origin: {2}
 UIMAEE_input_cas_invalid__INFO = Controller: {0} Received Invalid Request from Cas Multiplier {1} Containing Cas Id: {2}. The Parent Cas Id Is Missing. 
+UIMAEE_show_remote_delegate_serialization_INFO = >>> Controller: {0} Configured To Serialize CASes To Remote Delegate: {1} Using {2} Serialization