[jboss-svn-commits] JBL Code SVN: r11416 - in labs/jbossesb/trunk/product/samples/quickstarts/jbpm_simple1: src/quickstart/jbpm_simple1/test and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Fri Apr 27 11:21:38 EDT 2007


Author: estebanschifman
Date: 2007-04-27 11:21:37 -0400 (Fri, 27 Apr 2007)
New Revision: 11416

Added:
   labs/jbossesb/trunk/product/samples/quickstarts/jbpm_simple1/src/quickstart/jbpm_simple1/test/MyActionHandler.java
Modified:
   labs/jbossesb/trunk/product/samples/quickstarts/jbpm_simple1/build.xml
   labs/jbossesb/trunk/product/samples/quickstarts/jbpm_simple1/jboss-esb.xml
   labs/jbossesb/trunk/product/samples/quickstarts/jbpm_simple1/simpleProcessDefinition.xml
   labs/jbossesb/trunk/product/samples/quickstarts/jbpm_simple1/src/quickstart/jbpm_simple1/test/TestBpmProcessor.java
Log:
Work on jbpm_simple1

Modified: labs/jbossesb/trunk/product/samples/quickstarts/jbpm_simple1/build.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/jbpm_simple1/build.xml	2007-04-27 13:37:40 UTC (rev 11415)
+++ labs/jbossesb/trunk/product/samples/quickstarts/jbpm_simple1/build.xml	2007-04-27 15:21:37 UTC (rev 11416)
@@ -33,9 +33,12 @@
 		<mkdir dir="build/classes" />
 	</target>
 	
-    <target name="esb" depends="prepare">
+    <target name="esb" depends="prepare,compile">
 	    <copy overwrite="true" file="jboss-esb.xml" todir="build/${esb.archive.name}.esb/META-INF" />
 	    <copy file="simpleProcessDefinition.xml" todir="build/${esb.archive.name}.esb" />
+		<copy todir="build/${esb.archive.name}.esb">
+			<fileset dir="build/classes" includes="**/*" />
+		</copy>
     </target>
 
 	<target name="runtest" depends="compile"

Modified: labs/jbossesb/trunk/product/samples/quickstarts/jbpm_simple1/jboss-esb.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/jbpm_simple1/jboss-esb.xml	2007-04-27 13:37:40 UTC (rev 11415)
+++ labs/jbossesb/trunk/product/samples/quickstarts/jbpm_simple1/jboss-esb.xml	2007-04-27 15:21:37 UTC (rev 11416)
@@ -21,6 +21,15 @@
           		/>
           	</fs-bus>
 
+          	<fs-bus busid="jbpmSignalChannel" >
+          		<fs-message-filter
+          			directory="/tmp"
+          			input-suffix=".signalProcess"
+          			post-delete="true"
+          			error-delete="true"
+          		/>
+          	</fs-bus>
+
           	<fs-bus busid="jbpmProcessGetterChannel" >
           		<fs-message-filter
           			directory="/tmp"
@@ -76,8 +85,7 @@
 						<property name="actor" value="FrankSinatra"/>
 						<property name="esb-to-jbpm">
 						  <variables>
-							<variable esb-name="eVar1" jbpm-name="orderNumber"  value="111-223344-5" />
-							<variable esb-name="eVar2" jbpm-name="orderDate"  value="2007/04/26" />
+							<variable esb-name="eVar1" jbpm-name="counter"  value="45" />
 						  </variables>
 						</property>
 				</action>
@@ -88,6 +96,29 @@
 
         <service 
 			category="jbpmQsCat3"
+			name="signalCommand"
+        	description="Signal a token or process" >
+            <listeners>
+            	<fs-listener name="Advancer"
+            		busidref="jbpmSignalChannel"
+            		maxThreads="1"
+            		poll-frequency-seconds="3"
+            	/>
+            </listeners>
+
+            <actions>
+				<action	name="aSignal" 
+						class="org.jboss.soa.esb.services.jbpm.actions.BpmProcessor"
+				>
+						<property name="command" value="SignalCommand" />
+				</action>
+			
+            </actions>
+
+        </service>
+
+        <service 
+			category="jbpmQsCat4"
 			name="retriever"
         	description="Retrieve process instance" >
             <listeners>
@@ -105,8 +136,7 @@
 						<property name="command" value="GetProcessInstanceCommand" />
 						<property name="jbpm-to-esb">
 						  <variables>
-							<variable name="orderNumber" />
-							<variable name="orderDate"   />
+							<variable name="counter" />
 						  </variables>
 						</property>
 				</action>

Modified: labs/jbossesb/trunk/product/samples/quickstarts/jbpm_simple1/simpleProcessDefinition.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/jbpm_simple1/simpleProcessDefinition.xml	2007-04-27 13:37:40 UTC (rev 11415)
+++ labs/jbossesb/trunk/product/samples/quickstarts/jbpm_simple1/simpleProcessDefinition.xml	2007-04-27 15:21:37 UTC (rev 11416)
@@ -4,10 +4,17 @@
   xmlns="urn:jbpm.org:jpdl-3.1"
   name="simple">
    <start-state name="start">
-      <transition name="to_state" to="first" />
+      <transition name="to_state" to="first">
+      	<action name="n1" class="quickstart.jbpm_simple1.test.MyActionHandler"
+      	>
+      		<startFrom>22</startFrom>
+      	</action>
+      </transition>
    </start-state>
    <state name="first">
-      <transition name="to_end" to="end" />
+      <transition name="to_end" to="end">
+      	<action name="n2" class="quickstart.jbpm_simple1.test.MyActionHandler" />
+      </transition>
    </state>
    <end-state name="end"></end-state>
 </process-definition>
\ No newline at end of file

Added: labs/jbossesb/trunk/product/samples/quickstarts/jbpm_simple1/src/quickstart/jbpm_simple1/test/MyActionHandler.java
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/jbpm_simple1/src/quickstart/jbpm_simple1/test/MyActionHandler.java	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/jbpm_simple1/src/quickstart/jbpm_simple1/test/MyActionHandler.java	2007-04-27 15:21:37 UTC (rev 11416)
@@ -0,0 +1,30 @@
+package quickstart.jbpm_simple1.test;
+
+import org.jbpm.context.exe.ContextInstance;
+import org.jbpm.graph.def.ActionHandler;
+import org.jbpm.graph.exe.ExecutionContext;
+import org.jbpm.graph.exe.Token;
+
+public class MyActionHandler implements ActionHandler 
+{
+	private static final long serialVersionUID = 1L;
+
+	Long startFrom;
+	
+	public void execute(ExecutionContext exCtx) throws Exception 
+	{
+		Token token = exCtx.getToken();
+		ContextInstance context = token.getProcessInstance().getContextInstance();
+		Object obj	= context.getVariable("counter",token);
+		if (null==obj)
+		{
+			if (null==startFrom)
+				startFrom = new Long(1);
+			context.createVariable("counter", new Long(startFrom), token);
+			return;
+		}
+		Long counter = 1+Long.parseLong(obj.toString());
+		context.setVariable("counter", counter , token);
+	}
+
+}


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/jbpm_simple1/src/quickstart/jbpm_simple1/test/MyActionHandler.java
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: labs/jbossesb/trunk/product/samples/quickstarts/jbpm_simple1/src/quickstart/jbpm_simple1/test/TestBpmProcessor.java
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/jbpm_simple1/src/quickstart/jbpm_simple1/test/TestBpmProcessor.java	2007-04-27 13:37:40 UTC (rev 11415)
+++ labs/jbossesb/trunk/product/samples/quickstarts/jbpm_simple1/src/quickstart/jbpm_simple1/test/TestBpmProcessor.java	2007-04-27 15:21:37 UTC (rev 11416)
@@ -25,6 +25,7 @@
 import static org.junit.Assert.assertTrue;
 
 import java.io.ByteArrayOutputStream;
+import java.io.File;
 import java.io.PrintStream;
 
 import org.apache.log4j.Logger;
@@ -48,6 +49,13 @@
 		new TestBpmProcessor().run();
 	}
 	
+    static File WORKDIR;
+    static
+    {
+    	String os = System.getProperty("os.name","").toLowerCase();
+    	String dflt = (os.indexOf("win")>=0) ? "/temp": "/tmp";
+    	WORKDIR	= new File(System.getProperty("java.io.tmpdir",dflt));
+    };
 
 	public void run() throws Exception 
 	{
@@ -66,18 +74,25 @@
     		 // nothing extra required in message for 'instantiator' service
     		 response	= Invoker.invokeAndAwaitResponse(request,curr[0], curr[1], 5000);
     		 System.out.println(dumpResponse(response));
+    		 Long	tokenId	= Helper.getLongValue(response, Constants.TOKEN_ID);
 
-    		 Long	tokenId	= Helper.getLongValue(response, Constants.TOKEN_ID);
+    		 showVars(tokenId);
+
+    		 curr = new String[]{"jbpmQsCat3"	,"signalCommand"}; 
+    		 request	= Helper.commandMessageTemplate();
+    		 Helper.setLongValue(request, Constants.TOKEN_ID, tokenId);
+    		 response	= Invoker.invokeAndAwaitResponse(request,curr[0], curr[1], 5000);
+    		 System.out.println(dumpResponse(response));
     		 
-    		 curr = new String[]{"jbpmQsCat3"	,"retriever"}; 
+    		 showVars(tokenId);
+
+    		 curr = new String[]{"jbpmQsCat3"	,"signalCommand"}; 
     		 request	= Helper.commandMessageTemplate();
-    		 // we need to specify which token_id we wish to retrieve
-    		 // it was returned in the response received in the previous step
     		 Helper.setLongValue(request, Constants.TOKEN_ID, tokenId);
-    		 
     		 response	= Invoker.invokeAndAwaitResponse(request,curr[0], curr[1], 5000);
     		 System.out.println(dumpResponse(response));
     		 
+    		 showVars(tokenId);
 	     }
 	     catch (Exception _ex)
 	     {
@@ -105,10 +120,22 @@
 		System.setProperty("javax.xml.registry.ConnectionFactoryClass", "org.apache.ws.scout.registry.ConnectionFactoryImpl");
 		
         mgr = ModulePropertyManager.getPropertyManager(ModulePropertyManager.CORE_MODULE) ;
-        mgr.setProperty(Environment.REGISTRY_FILE_HELPER_DIR, "/tmp") ;
+        mgr.setProperty(Environment.REGISTRY_FILE_HELPER_DIR, WORKDIR.toString()) ;
 
 	}
 	
+	private void showVars(long tokenId) throws Exception
+	{
+		 String[] curr = new String[]{"jbpmQsCat4"	,"retriever"}; 
+		 Message request	= Helper.commandMessageTemplate();
+		 Helper.setLongValue(request, Constants.TOKEN_ID, tokenId);
+		 
+		 Message response	= Invoker.invokeAndAwaitResponse(request,curr[0], curr[1], 5000);
+		 System.out.println(dumpResponse(response));
+		 
+		
+	}
+	
 	public static String dumpResponse(Message response)
 	{
 		if (null==response)
@@ -128,8 +155,7 @@
 		sb.append(getObject(response,Constants.TOKEN_ID));
 		sb.append(getObject(response,Constants.HAS_ENDED));
 
-		sb.append(getObject(response,"orderDate"));
-		sb.append(getObject(response,"orderNumber"));
+		sb.append(getObject(response,"counter"));
 		
 		return sb.append("_______________________________________________________________________")
 			.toString();		




More information about the jboss-svn-commits mailing list