[jboss-svn-commits] JBL Code SVN: r15248 - in labs/jbossesb/trunk/product/services/jbpm/src: main/java/org/jboss/soa/esb/services/jbpm/actions/impl and 2 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed Sep 19 21:27:25 EDT 2007


Author: kurt.stam at jboss.com
Date: 2007-09-19 21:27:24 -0400 (Wed, 19 Sep 2007)
New Revision: 15248

Modified:
   labs/jbossesb/trunk/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/Constants.java
   labs/jbossesb/trunk/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/actions/impl/DefaultCommandExecutorFactoryImpl.java
   labs/jbossesb/trunk/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/actions/impl/facades/NewProcessInstanceFacade.java
   labs/jbossesb/trunk/product/services/jbpm/src/test/java/org/jboss/soa/esb/services/jbpm/actions/CommandInterpreterUnitTest.java
   labs/jbossesb/trunk/product/services/jbpm/src/test/java/org/jboss/soa/esb/services/jbpm/actions/testSingleCommands.xml
Log:
JBESB-733, adding business key

Modified: labs/jbossesb/trunk/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/Constants.java
===================================================================
--- labs/jbossesb/trunk/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/Constants.java	2007-09-20 01:11:55 UTC (rev 15247)
+++ labs/jbossesb/trunk/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/Constants.java	2007-09-20 01:27:24 UTC (rev 15248)
@@ -52,6 +52,7 @@
 	public static final String ACTOR_ID						="jbpmActorId";
 	public static final String ACTOR_NAMES_ARRAY			="jbpmActorNamesArray";
 	public static final String OVERWRITE_SWIMLANE			="jbpmOverwriteSwim";
+    public static final String KEYPATH                      ="pathTojbpmKey";
 
 	public static final String TRANSITION_NAME				="jbpmTransitionName";
 	public static final String CURRENT_NODE_NAME			="jbpmCurrentNodeName";

Modified: labs/jbossesb/trunk/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/actions/impl/DefaultCommandExecutorFactoryImpl.java
===================================================================
--- labs/jbossesb/trunk/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/actions/impl/DefaultCommandExecutorFactoryImpl.java	2007-09-20 01:11:55 UTC (rev 15247)
+++ labs/jbossesb/trunk/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/actions/impl/DefaultCommandExecutorFactoryImpl.java	2007-09-20 01:27:24 UTC (rev 15248)
@@ -28,6 +28,7 @@
 import org.apache.log4j.Logger;
 import org.jboss.soa.esb.message.Body;
 import org.jboss.soa.esb.message.Message;
+import org.jboss.soa.esb.message.mapping.ObjectMapper;
 import org.jboss.soa.esb.services.jbpm.CommandExecutorFactory;
 import org.jboss.soa.esb.services.jbpm.Constants;
 import org.jboss.soa.esb.services.jbpm.actions.CommandInterpreter;
@@ -406,6 +407,7 @@
 		
 		private Message perform(Message request, boolean start) throws Exception
 		{
+            ObjectMapper objectMapper = new ObjectMapper();
 			String processName  = Helper.getStringValue(request,Constants.PROCESS_DEFINITION_NAME);
 			Long   processDefId = Helper.getLongValue  (request,Constants.PROCESS_DEFINITION_ID);
 			if (null==processName && null==processDefId)
@@ -429,6 +431,11 @@
 			if (null!=processName)
 				command.setProcessName(processName);
 			
+            String keyPath = Helper.getStringValue(request, Constants.KEYPATH);
+            if (null!=keyPath) {
+                String key = String.valueOf(objectMapper.getObjectFromMessage(request, keyPath));
+                command.setKey(key);
+            }
 			String actorId	= Helper.getStringValue(request, Constants.ACTOR_ID);
 			if (null!=actorId)
 				command.setActorId(actorId);

Modified: labs/jbossesb/trunk/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/actions/impl/facades/NewProcessInstanceFacade.java
===================================================================
--- labs/jbossesb/trunk/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/actions/impl/facades/NewProcessInstanceFacade.java	2007-09-20 01:11:55 UTC (rev 15247)
+++ labs/jbossesb/trunk/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/actions/impl/facades/NewProcessInstanceFacade.java	2007-09-20 01:27:24 UTC (rev 15248)
@@ -67,6 +67,8 @@
 	public void preFormat(Message message) 
 	{
 		Body body = message.getBody();
+        if (null!=_keyPath)
+            body.add(Constants.KEYPATH, _keyPath);
 		if (null!=_actor)
 			body.add(Constants.ACTOR_ID	,_actor);
 		if (null!=_processName)
@@ -86,6 +88,7 @@
 	} // ________________________________
 
 	boolean			_start;
+    String          _keyPath;
 	String			_actor;
 	String			_processName;
 	String			_transitionName;

Modified: labs/jbossesb/trunk/product/services/jbpm/src/test/java/org/jboss/soa/esb/services/jbpm/actions/CommandInterpreterUnitTest.java
===================================================================
--- labs/jbossesb/trunk/product/services/jbpm/src/test/java/org/jboss/soa/esb/services/jbpm/actions/CommandInterpreterUnitTest.java	2007-09-20 01:11:55 UTC (rev 15247)
+++ labs/jbossesb/trunk/product/services/jbpm/src/test/java/org/jboss/soa/esb/services/jbpm/actions/CommandInterpreterUnitTest.java	2007-09-20 01:27:24 UTC (rev 15248)
@@ -110,8 +110,10 @@
         	
         	opCode	= Constants.OpCode.NewProcessInstanceCommand;
         	request = Helper.commandMessageTemplate();
+            request.getBody().add("key","some-order-id-key");
         	Helper.setStringValue(request, Constants.COMMAND_CODE, opCode);
         	Helper.setStringValue(request, Constants.PROCESS_DEFINITION_NAME, TEST_PROCESS_NAME);
+            Helper.setStringValue(request, Constants.KEYPATH, "body.key");
         	response = invokeJbpm(request);
     		_logger.info(JbpmTestUtil.dumpResponse(response, opCode));
     		assertTrue(Constants.RETCODE_OK.equals(Helper.getStringValue(response, Constants.RETURN_CODE)));	    	

Modified: labs/jbossesb/trunk/product/services/jbpm/src/test/java/org/jboss/soa/esb/services/jbpm/actions/testSingleCommands.xml
===================================================================
--- labs/jbossesb/trunk/product/services/jbpm/src/test/java/org/jboss/soa/esb/services/jbpm/actions/testSingleCommands.xml	2007-09-20 01:11:55 UTC (rev 15247)
+++ labs/jbossesb/trunk/product/services/jbpm/src/test/java/org/jboss/soa/esb/services/jbpm/actions/testSingleCommands.xml	2007-09-20 01:27:24 UTC (rev 15248)
@@ -27,6 +27,7 @@
 			command="NewProcessInstanceCommand"
 			process-definition-name="simple"
 			actor="FrankSinatra"
+			key="body.key"
 			>
 				<object-path esb="BODY_CONTENT" bpm="theBody" value="DEF DEF DEF"/>
 				<object-path esb="body.eVar1" bpm="j1"  value="AAAbbb111" />




More information about the jboss-svn-commits mailing list