[jboss-svn-commits] JBL Code SVN: r9581 - labs/jbossesb/trunk/product/core/listeners/src/org/jboss/soa/esb/actions.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sun Feb 18 15:23:40 EST 2007


Author: estebanschifman
Date: 2007-02-18 15:23:40 -0500 (Sun, 18 Feb 2007)
New Revision: 9581

Modified:
   labs/jbossesb/trunk/product/core/listeners/src/org/jboss/soa/esb/actions/JbpmCommandInterpreter.java
Log:
More operation codes and bug fix

Modified: labs/jbossesb/trunk/product/core/listeners/src/org/jboss/soa/esb/actions/JbpmCommandInterpreter.java
===================================================================
--- labs/jbossesb/trunk/product/core/listeners/src/org/jboss/soa/esb/actions/JbpmCommandInterpreter.java	2007-02-18 20:22:59 UTC (rev 9580)
+++ labs/jbossesb/trunk/product/core/listeners/src/org/jboss/soa/esb/actions/JbpmCommandInterpreter.java	2007-02-18 20:23:40 UTC (rev 9581)
@@ -32,6 +32,7 @@
 import org.jboss.soa.esb.util.JbpmCommandVehicle;
 import org.jbpm.JbpmConfiguration;
 import org.jbpm.JbpmContext;
+import org.jbpm.graph.def.ProcessDefinition;
 import org.jbpm.graph.exe.ProcessInstance;
 import org.jbpm.graph.exe.Token;
 
@@ -62,15 +63,23 @@
 		_command = new JbpmCommandVehicle(message);
 		Enum operator = _command.getOperator();
 		
-		if (operator.equals(JbpmCommandVehicle.Operation.newProcessInstance))	newProcessInstance();
-		if (operator.equals(JbpmCommandVehicle.Operation.signalProcess))		signalProcess();
-		if (operator.equals(JbpmCommandVehicle.Operation.signalToken))			signalToken();
-		if (operator.equals(JbpmCommandVehicle.Operation.getProcessInstanceVariables))
+		
+		if 		(operator.equals(JbpmCommandVehicle.Operation.signalToken))			
+			signalToken();
+		else if (operator.equals(JbpmCommandVehicle.Operation.signalProcess))		
+			signalProcess();
+		else if (operator.equals(JbpmCommandVehicle.Operation.getProcessInstanceVariables))
 			getProcessInstanceVariabes();
-		if (operator.equals(JbpmCommandVehicle.Operation.setProcessInstanceVariables))
+		else if (operator.equals(JbpmCommandVehicle.Operation.setProcessInstanceVariables))
 			setProcessInstanceVariables();
-		if (operator.equals(JbpmCommandVehicle.Operation.getTokenVariables))	getTokenVariabes();
-		if (operator.equals(JbpmCommandVehicle.Operation.setTokenVariables))	setTokenVariables();
+		else if (operator.equals(JbpmCommandVehicle.Operation.getTokenVariables))	
+			getTokenVariabes();
+		else if (operator.equals(JbpmCommandVehicle.Operation.setTokenVariables))	
+			setTokenVariables();
+		else if (operator.equals(JbpmCommandVehicle.Operation.newProcessInstance))	
+			newProcessInstance();
+		else if (operator.equals(JbpmCommandVehicle.Operation.deployProcessDefinition))
+			deployProcessDefinition();
 		else
 		{
 			_logger.error("Unknown operator: "+operator.toString()+" - Returning message unchanged");
@@ -82,6 +91,25 @@
 		return retMsg;
 	} // ________________________________
 	
+	public void deployProcessDefinition()
+	{
+		try
+		{
+			prepareJbpm();
+			_jbpmCtx.getSession().beginTransaction();
+			ProcessDefinition def = _command.getProcessDefinition();
+			_jbpmCtx.deployProcessDefinition(def);
+			_command.setProcessDefinitionName	(def.getName());
+			_command.setProcessVersion			(def.getVersion());
+			_command.setReturnCode(JbpmCommandVehicle.RETCODE_OK);
+		}
+		catch (Exception e)
+		{
+			_command.setReturnCode(JbpmCommandVehicle.RETCODE_EXCEPTION);
+			_command.setException(e);
+		}
+		finally	{ cleanupJbpm(); } 
+	} //________________________________
 	public void newProcessInstance()
 	{
 		try




More information about the jboss-svn-commits mailing list