[jboss-svn-commits] JBL Code SVN: r25313 - in labs/jbossesb/branches/JBESB_4_4_GA_FP/product: samples/quickstarts/bpm_orchestration4 and 5 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Tue Feb 17 17:56:22 EST 2009


Author: tfennelly
Date: 2009-02-17 17:56:22 -0500 (Tue, 17 Feb 2009)
New Revision: 25313

Added:
   labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/test/java/org/jboss/soa/esb/services/jbpm/cmd/
   labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/test/java/org/jboss/soa/esb/services/jbpm/cmd/ConfigUtilTest.java
   labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/test/java/org/jboss/soa/esb/services/jbpm/cmd/mappingconfig-01.xml
Modified:
   labs/jbossesb/branches/JBESB_4_4_GA_FP/product/docs/ServicesGuide.odt
   labs/jbossesb/branches/JBESB_4_4_GA_FP/product/samples/quickstarts/bpm_orchestration4/build.xml
   labs/jbossesb/branches/JBESB_4_4_GA_FP/product/samples/quickstarts/bpm_orchestration4/docs/Readme.odt
   labs/jbossesb/branches/JBESB_4_4_GA_FP/product/samples/quickstarts/bpm_orchestration4/jbm-queue-service.xml
   labs/jbossesb/branches/JBESB_4_4_GA_FP/product/samples/quickstarts/bpm_orchestration4/jbmq-queue-service.xml
   labs/jbossesb/branches/JBESB_4_4_GA_FP/product/samples/quickstarts/bpm_orchestration4/jboss-esb.xml
   labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/Constants.java
   labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/cmd/CommandExecutor.java
   labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/cmd/ConfigUtil.java
   labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/cmd/MessageFacade.java
   labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/cmd/NewProcessInstanceFacade.java
Log:
https://jira.jboss.org/jira/browse/JBESB-2418

Modified: labs/jbossesb/branches/JBESB_4_4_GA_FP/product/docs/ServicesGuide.odt
===================================================================
(Binary files differ)

Modified: labs/jbossesb/branches/JBESB_4_4_GA_FP/product/samples/quickstarts/bpm_orchestration4/build.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_4_GA_FP/product/samples/quickstarts/bpm_orchestration4/build.xml	2009-02-17 22:50:56 UTC (rev 25312)
+++ labs/jbossesb/branches/JBESB_4_4_GA_FP/product/samples/quickstarts/bpm_orchestration4/build.xml	2009-02-17 22:56:22 UTC (rev 25313)
@@ -39,7 +39,6 @@
 	</deployToServer>
   </target>
 	
-  
   <target name="startProcess" depends="compile" description="Sends a message to start the process instance">
   	<echo>Sends a message to start the process instance</echo>
     <java fork="yes" classname="org.jboss.soa.esb.samples.quickstarts.bpm_orchestration4.test.SendJMSMessageStart" failonerror="true">      
@@ -48,6 +47,22 @@
     </java>  
   </target>	 
 
+    <target name="startProcessSync" depends="compile" description="Sends a message to start the process instance.">
+        <echo>Sends a message to start the process instance</echo>
+      <java fork="yes" classname="org.jboss.soa.esb.samples.quickstarts.bpm_orchestration4.test.SendEsbStartMessage" failonerror="true">
+          <arg value="SampleOrder.xml"/>
+          <classpath refid="exec-classpath"/>
+      </java>
+    </target>
+
+    <target name="queryProcessSync" depends="compile" description="Sends a message to query a process instance.">
+      <input addproperty="processId" message="Please enter the Process Instance ID of the process to be queried > " />
+      <java fork="yes" classname="org.jboss.soa.esb.samples.quickstarts.bpm_orchestration4.test.SendEsbQueryMessage" failonerror="true">
+          <arg value="${processId}"/>
+          <classpath refid="exec-classpath"/>
+      </java>
+    </target>
+
   <target name="startProcessPets" depends="compile" description="Sends a message to start the process instance">
   	<echo>Sends a message to start the process instance</echo>
     <java fork="yes" classname="org.jboss.soa.esb.samples.quickstarts.bpm_orchestration4.test.SendJMSMessageStart" failonerror="true">

Modified: labs/jbossesb/branches/JBESB_4_4_GA_FP/product/samples/quickstarts/bpm_orchestration4/docs/Readme.odt
===================================================================
(Binary files differ)

Modified: labs/jbossesb/branches/JBESB_4_4_GA_FP/product/samples/quickstarts/bpm_orchestration4/jbm-queue-service.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_4_GA_FP/product/samples/quickstarts/bpm_orchestration4/jbm-queue-service.xml	2009-02-17 22:50:56 UTC (rev 25312)
+++ labs/jbossesb/branches/JBESB_4_4_GA_FP/product/samples/quickstarts/bpm_orchestration4/jbm-queue-service.xml	2009-02-17 22:56:22 UTC (rev 25313)
@@ -10,7 +10,28 @@
     xmbean-dd="xmdesc/Queue-xmbean.xml">
     <depends optional-attribute-name="ServerPeer">jboss.messaging:service=ServerPeer</depends>
   </mbean>
-  
+
+    <mbean code="org.jboss.jms.server.destination.QueueService"
+       name="jboss.messaging.destination:service=Queue,name=quickstart_bpm_orchestration4_start_sync_esb"
+       xmbean-dd="xmdesc/Queue-xmbean.xml">
+       <depends optional-attribute-name="ServerPeer">jboss.messaging:service=ServerPeer</depends>
+     </mbean>
+    <mbean code="org.jboss.jms.server.destination.QueueService"
+       name="jboss.messaging.destination:service=Queue,name=quickstart_bpm_orchestration4_start_sync_esb_reply"
+       xmbean-dd="xmdesc/Queue-xmbean.xml">
+       <depends optional-attribute-name="ServerPeer">jboss.messaging:service=ServerPeer</depends>
+     </mbean>
+    <mbean code="org.jboss.jms.server.destination.QueueService"
+       name="jboss.messaging.destination:service=Queue,name=quickstart_bpm_orchestration4_query_sync_esb"
+       xmbean-dd="xmdesc/Queue-xmbean.xml">
+       <depends optional-attribute-name="ServerPeer">jboss.messaging:service=ServerPeer</depends>
+     </mbean>
+    <mbean code="org.jboss.jms.server.destination.QueueService"
+       name="jboss.messaging.destination:service=Queue,name=quickstart_bpm_orchestration4_query_sync_esb_reply"
+       xmbean-dd="xmdesc/Queue-xmbean.xml">
+       <depends optional-attribute-name="ServerPeer">jboss.messaging:service=ServerPeer</depends>
+     </mbean>
+
   <mbean code="org.jboss.jms.server.destination.QueueService"
     name="jboss.messaging.destination:service=Queue,name=quickstart_bpm_orchestration4_intake_service_esb"
     xmbean-dd="xmdesc/Queue-xmbean.xml">

Modified: labs/jbossesb/branches/JBESB_4_4_GA_FP/product/samples/quickstarts/bpm_orchestration4/jbmq-queue-service.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_4_GA_FP/product/samples/quickstarts/bpm_orchestration4/jbmq-queue-service.xml	2009-02-17 22:50:56 UTC (rev 25312)
+++ labs/jbossesb/branches/JBESB_4_4_GA_FP/product/samples/quickstarts/bpm_orchestration4/jbmq-queue-service.xml	2009-02-17 22:56:22 UTC (rev 25313)
@@ -13,6 +13,33 @@
 		jboss.mq:service=DestinationManager
 	  </depends>
 	</mbean>	
+
+    <mbean code="org.jboss.mq.server.jmx.Queue"
+         name="jboss.mq.destination:service=Queue,name=quickstart_bpm_orchestration4_start_sync_esb">
+      <depends optional-attribute-name="DestinationManager">
+        jboss.mq:service=DestinationManager
+      </depends>
+    </mbean>
+    <mbean code="org.jboss.mq.server.jmx.Queue"
+         name="jboss.mq.destination:service=Queue,name=quickstart_bpm_orchestration4_start_sync_esb_reply">
+      <depends optional-attribute-name="DestinationManager">
+        jboss.mq:service=DestinationManager
+      </depends>
+    </mbean>
+
+    <mbean code="org.jboss.mq.server.jmx.Queue"
+         name="jboss.mq.destination:service=Queue,name=quickstart_bpm_orchestration4_query_sync_esb">
+      <depends optional-attribute-name="DestinationManager">
+        jboss.mq:service=DestinationManager
+      </depends>
+    </mbean>
+    <mbean code="org.jboss.mq.server.jmx.Queue"
+         name="jboss.mq.destination:service=Queue,name=quickstart_bpm_orchestration4_query_sync_esb_reply">
+      <depends optional-attribute-name="DestinationManager">
+        jboss.mq:service=DestinationManager
+      </depends>
+    </mbean>
+
 	<mbean code="org.jboss.mq.server.jmx.Queue"
 		 name="jboss.mq.destination:service=Queue,name=quickstart_bpm_orchestration4_intake_service_esb">
 	  <depends optional-attribute-name="DestinationManager">

Modified: labs/jbossesb/branches/JBESB_4_4_GA_FP/product/samples/quickstarts/bpm_orchestration4/jboss-esb.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_4_GA_FP/product/samples/quickstarts/bpm_orchestration4/jboss-esb.xml	2009-02-17 22:50:56 UTC (rev 25312)
+++ labs/jbossesb/branches/JBESB_4_4_GA_FP/product/samples/quickstarts/bpm_orchestration4/jboss-esb.xml	2009-02-17 22:56:22 UTC (rev 25313)
@@ -17,6 +17,14 @@
 				<jms-message-filter dest-type="QUEUE"
 					dest-name="queue/quickstart_bpm_orchestration4_start_esb" />
 			</jms-bus>
+            <jms-bus busid="startEsbChannel_sync">
+                <jms-message-filter dest-type="QUEUE"
+                    dest-name="queue/quickstart_bpm_orchestration4_start_sync_esb" />
+            </jms-bus>
+            <jms-bus busid="queryEsbChannel_sync">
+                <jms-message-filter dest-type="QUEUE"
+                    dest-name="queue/quickstart_bpm_orchestration4_query_sync_esb" />
+            </jms-bus>
 			<jms-bus busid="intakeServiceEsbChannel">
 				<jms-message-filter dest-type="QUEUE"
 					dest-name="queue/quickstart_bpm_orchestration4_intake_service_esb" />
@@ -81,6 +89,56 @@
 				</action>
 			</actions>
 		</service>
+
+        <service category="BPM_orchestration4_Starter_Service" name="Starter_Service_Sync"
+                 description="BPM Orchestration Sample 4: Use this service to start a process instance" >
+            <listeners>
+                <jms-listener name="ESB-Listener" busidref="startEsbChannel_sync"/>
+            </listeners>
+            <actions mep="RequestResponse">
+                <action name="setup_key" class="org.jboss.soa.esb.actions.scripting.GroovyActionProcessor">
+                        <property name="script"
+                            value="/scripts/setup_key.groovy" />
+                </action>
+                <action name="start_a_new_order_process"
+                    class="org.jboss.soa.esb.services.jbpm.actions.BpmProcessor">
+                    <property name="command"
+                        value="StartProcessInstanceCommand" />
+                    <property name="process-definition-name"
+                        value="bpm4_ESBOrderProcess" />
+                    <property name="key" value="body.businessKey" />
+                    <property name="esbToBpmVars">
+                        <mapping esb="BODY_CONTENT"	bpm="entireOrderAsXML" />
+                    </property>
+
+                </action>
+                <action name="dump2" class="org.jboss.soa.esb.actions.SystemPrintln">
+                    <property name="message" value="After" />
+                    <property name="printfull" value="true"/>
+                </action>
+            </actions>
+        </service>
+
+        <service category="BPM_orchestration4_Starter_Service" name="Get_Service_Vars_Sync"
+                 description="BPM Orchestration Sample 4: Use this service to query the Service Variables" >
+            <listeners>
+                <jms-listener name="ESB-Listener" busidref="queryEsbChannel_sync"/>
+            </listeners>
+            <actions mep="RequestResponse">
+                <action name="GetVariables" class="org.jboss.soa.esb.services.jbpm.actions.BpmProcessor">
+                    <property name="command" value="GetProcessInstanceVariablesCommand"/>
+                    <property name="bpmToEsbVars">
+                        <mapping bpm="entireCustomerAsObject" esb="body.customer" />
+                        <mapping bpm="customer_firstName" esb="body.customer.firstName" />
+                        <mapping bpm="customer_lastName" esb="body.customer.lastName" />
+                        <mapping bpm="customer_status" esb="body.customer.status" />
+                        <mapping bpm="entireOrderAsObject" esb="orderHeader" />
+                        <mapping bpm="entireOrderAsXML" esb="BODY_CONTENT" />
+                    </property>
+                </action>
+            </actions>
+        </service>
+
 		<service category="BPM_Orchestration4" name="IntakeService"
 			description="IntakeService: transforms, massages, calculates priority">
 			<listeners>

Modified: labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/Constants.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/Constants.java	2009-02-17 22:50:56 UTC (rev 25312)
+++ labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/Constants.java	2009-02-17 22:56:22 UTC (rev 25313)
@@ -131,6 +131,7 @@
 //		,StartWorkOnTaskCommand
 //		,TaskInstanceEndCommand
 //		,VariablesCommand
+        ,GetProcessInstanceVariablesCommand
 		;
 	}
 }

Modified: labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/cmd/CommandExecutor.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/cmd/CommandExecutor.java	2009-02-17 22:50:56 UTC (rev 25312)
+++ labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/cmd/CommandExecutor.java	2009-02-17 22:56:22 UTC (rev 25313)
@@ -24,6 +24,7 @@
 
 import java.util.HashMap;
 import java.util.Map;
+import java.util.List;
 
 import org.apache.log4j.Logger;
 import org.jboss.soa.esb.ConfigurationException;
@@ -32,16 +33,12 @@
 import org.jboss.soa.esb.message.mapping.ObjectMapper;
 import org.jboss.soa.esb.message.mapping.ObjectMappingException;
 import org.jboss.soa.esb.services.jbpm.Constants;
+import org.jboss.soa.esb.services.jbpm.Mapping;
 import org.jboss.soa.esb.services.jbpm.JBpmObjectMapper;
-import org.jboss.soa.esb.services.jbpm.Mapping;
 import org.jbpm.JbpmConfiguration;
 import org.jbpm.JbpmContext;
 import org.jbpm.JbpmException;
-import org.jbpm.command.CancelProcessInstanceCommand;
-import org.jbpm.command.CommandService;
-import org.jbpm.command.GetProcessInstanceCommand;
-import org.jbpm.command.NewProcessInstanceCommand;
-import org.jbpm.command.SignalCommand;
+import org.jbpm.command.*;
 import org.jbpm.command.impl.CommandServiceImpl;
 import org.jbpm.graph.exe.ProcessInstance;
 
@@ -159,6 +156,7 @@
 				,new CommandExecutor.NewProcessInstancePerformer(false));
 		_values.put(Constants.OpCode.StartProcessInstanceCommand
 				,new CommandExecutor.NewProcessInstancePerformer(true));
+        _values.put(Constants.OpCode.GetProcessInstanceVariablesCommand, new GetProcessVariablesPerformer());
 	}
 	
 	// this class is used both for NewProcessInstance and for StartProcessInstance
@@ -237,7 +235,51 @@
             }
         }
 	}
-    
+
+    private static class GetProcessVariablesPerformer implements Command {
+        
+        public void execute(Message message) throws JbpmException {
+            Long processInstanceId = MessageHelper.getLongValue(message,Constants.PROCESS_INSTANCE_ID);
+
+            if (processInstanceId == null) {
+                throw new JbpmException("'" + Constants.PROCESS_INSTANCE_ID + "' must be specified in Message body.  Cannot retrieve process variables.");
+            }
+
+            ProcessInstance processInstance = (ProcessInstance)getJbpmCommandService().execute(new GetProcessInstanceCommand(processInstanceId));
+            if(processInstance == null) {
+                throw new JbpmException("Unknown jBPM process instance ID '" + processInstanceId + "'.");
+            }
+
+            VariablesCommand command = new HungryVariablesCommand();
+
+            command.setTokenId(processInstance.getRootToken().getId());
+            Object result = getJbpmCommandService().execute(command);
+            if(result instanceof Map) {
+                Map processVariables = (Map) result;
+                List<Mapping> variableMappings = GetProcessVariablesFacade.getMappings(message);
+
+                for (Mapping mapping : variableMappings) {
+                    Object value = processVariables.get(mapping.getBpm());
+                    ObjectMapper mapper = new ObjectMapper();
+
+                    try {
+                        if(value != null) {
+                            mapper.setObjectOnMessage(message, mapping.getEsb(), value);
+                        } else {
+                            mapper.setObjectOnMessage(message, mapping.getEsb(), mapping.getDefaultValue());
+                        }
+                    } catch (ObjectMappingException e) {
+                        throw new JbpmException("Failed to apply jBPM->ESB mapping for process instance ID '" + processInstanceId + "' (root token ID '" + processInstance.getRootToken().getId() + "'). Mapping: " + mapping);
+                    }
+                }
+            } else if(result == null) {
+                throw new JbpmException("Invalid 'null' jBPM VariablesCommand result for process instance ID '" + processInstanceId + "' (root token ID '" + processInstance.getRootToken().getId() + "').");
+            } else {
+                throw new JbpmException("Invalid jBPM VariablesCommand result type '" + result.getClass().getName() + "' for process instance ID '" + processInstanceId + "' (root token ID '" + processInstance.getRootToken().getId() + "')..  Expected instanceof '" + Map.class.getName() + "'.");
+            }
+        }
+    }
+
     private static Object executeJbpmCommand(org.jbpm.command.Command command)
     {
         if (logger.isDebugEnabled()) {

Modified: labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/cmd/ConfigUtil.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/cmd/ConfigUtil.java	2009-02-17 22:50:56 UTC (rev 25312)
+++ labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/cmd/ConfigUtil.java	2009-02-17 22:56:22 UTC (rev 25313)
@@ -36,9 +36,9 @@
 		throws ConfigurationException
 	{   
         List<Mapping> mappingList = new ArrayList<Mapping>();
-        ConfigTree[] esbToBpm = tree.getChildren(Constants.MAPPING_TAG);
-        if (esbToBpm != null) {
-            for (ConfigTree mappingElement : esbToBpm) {
+        ConfigTree[] mappingElements = tree.getChildren(Constants.MAPPING_TAG);
+        if (mappingElements != null) {
+            for (ConfigTree mappingElement : mappingElements) {
                 Mapping mapping = Mapping.parseMappingElement(mappingElement);
                 mappingList.add(mapping);
             }

Modified: labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/cmd/MessageFacade.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/cmd/MessageFacade.java	2009-02-17 22:50:56 UTC (rev 25312)
+++ labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/cmd/MessageFacade.java	2009-02-17 22:56:22 UTC (rev 25313)
@@ -26,7 +26,7 @@
      * <br/>Some of the Message content will thus come from configuration XML, and some will
      * be the users' responsibility (e.g. processId, tokenId, etc)
      * <br/>Variable name mapping between esb and jBPM is also handled by this interface
-     * @param message Message - Into which the static values will be added
+     * @param request Message - Into which the static values will be added
      */
     public abstract void setJBPMContextParameters(Message request);
     
@@ -51,7 +51,9 @@
             return new SignalFacade(config);
         if (Constants.OpCode.StartProcessInstanceCommand.equals(opCode))
             return new NewProcessInstanceFacade(config, true);
-                  
+        if (Constants.OpCode.GetProcessInstanceVariablesCommand.equals(opCode))
+            return new GetProcessVariablesFacade(config);
+
         throw new UnsupportedOperationException(opCode.toString()+" not implemented");
     }
 }

Modified: labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/cmd/NewProcessInstanceFacade.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/cmd/NewProcessInstanceFacade.java	2009-02-17 22:50:56 UTC (rev 25312)
+++ labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/main/java/org/jboss/soa/esb/services/jbpm/cmd/NewProcessInstanceFacade.java	2009-02-17 22:56:22 UTC (rev 25313)
@@ -78,19 +78,27 @@
 	public void setJBPMContextParameters(Message message) 
 	{
 		Body body = message.getBody();
+
         if (null!=_keyPath)
             body.add(Constants.KEYPATH, _keyPath);
-		if (null!=_actor)
+
+        if (null!=_actor)
 			body.add(Constants.ACTOR_ID	,_actor);
-		if (null!=_processName)
+
+        if (null!=_processName)
 			body.add(Constants.PROCESS_DEFINITION_NAME	,_processName);
-		if (null!=_processId)
+
+        if (null!=_processId)
 			body.add(Constants.PROCESS_DEFINITION_ID	,_processId);
-		if (null!=_transitionName)
+
+        if (null!=_transitionName)
 			body.add(Constants.TRANSITION_NAME, _transitionName);
-		Map<String,Object> variableMap = _mapper.mapFromEsbMessageToJBpmMap(message,_esbToBpm);
+
+        Map<String,Object> variableMap = _mapper.mapFromEsbMessageToJBpmMap(message,_esbToBpm);
+
         if (null!=variableMap)
             body.add(Constants.VARIABLE_VALUES, variableMap);
+
         if (_replyToOriginator) {
             final Call call = message.getHeader().getCall() ;
             setEPR(body, Constants.REPLY_TO, getEPR(call.getReplyTo())) ;

Added: labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/test/java/org/jboss/soa/esb/services/jbpm/cmd/ConfigUtilTest.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/test/java/org/jboss/soa/esb/services/jbpm/cmd/ConfigUtilTest.java	                        (rev 0)
+++ labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/test/java/org/jboss/soa/esb/services/jbpm/cmd/ConfigUtilTest.java	2009-02-17 22:56:22 UTC (rev 25313)
@@ -0,0 +1,47 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ *
+ * (C) 2005-2008, JBoss Inc.
+ */
+package org.jboss.soa.esb.services.jbpm.cmd;
+
+import junit.framework.TestCase;
+import org.jboss.soa.esb.testutils.ESBConfigUtil;
+import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.services.jbpm.Mapping;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.soa.esb.dom.YADOMUtil;
+import org.xml.sax.SAXException;
+
+import javax.xml.transform.stream.StreamResult;
+import java.io.IOException;
+import java.io.StringWriter;
+import java.util.List;
+
+/**
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class ConfigUtilTest extends TestCase {
+
+    public void test_esbToJBPM_Mapping() throws IOException, SAXException, ConfigurationException {
+        ESBConfigUtil configUtil = new ESBConfigUtil(getClass().getResourceAsStream("mappingconfig-01.xml"));
+        ConfigTree actionConfig = configUtil.getActionConfig("InVM-0", "action1");
+
+        List<Mapping> mappingConfig = ConfigUtil.getMappingConfig(actionConfig);
+        assertEquals("[Mapping[ esb=eVar1, bpm=counter, isProcessScope=null, defaultValue=null ], Mapping[ esb=BODY_CONTENT, bpm=theBody, isProcessScope=null, defaultValue=null ]]", mappingConfig.toString());
+    }
+}


Property changes on: labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/test/java/org/jboss/soa/esb/services/jbpm/cmd/ConfigUtilTest.java
___________________________________________________________________
Name: svn:eol-style
   + native

Added: labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/test/java/org/jboss/soa/esb/services/jbpm/cmd/mappingconfig-01.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/test/java/org/jboss/soa/esb/services/jbpm/cmd/mappingconfig-01.xml	                        (rev 0)
+++ labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/test/java/org/jboss/soa/esb/services/jbpm/cmd/mappingconfig-01.xml	2009-02-17 22:56:22 UTC (rev 25313)
@@ -0,0 +1,21 @@
+<?xml version = "1.0" encoding = "UTF-8"?>
+<jbossesb xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd"
+    parameterReloadSecs="5">
+
+      <services>
+        <service category="Cat" name="S1" description="Blah" invmScope="GLOBAL">
+            <actions mep="OneWay">
+                <action name="action1" class="org.jboss.soa.esb.services.jbpm.actions.BpmProcessor">
+                    <property name="command" value="GetProcessVariables" />
+                    <property name="process-definition-name" value="processDefinition2"/>
+                    <property name="actor" value="FrankSinatra"/>
+                    <property name="esbToBpmVars">
+                        <mapping esb="eVar1" bpm="counter" value="45" />
+                        <mapping esb="BODY_CONTENT" bpm="theBody" />
+                    </property>
+                 </action>
+              </actions>
+        </service>
+      </services>
+
+</jbossesb>


Property changes on: labs/jbossesb/branches/JBESB_4_4_GA_FP/product/services/jbpm/src/test/java/org/jboss/soa/esb/services/jbpm/cmd/mappingconfig-01.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native




More information about the jboss-svn-commits mailing list