[jbpm-commits] JBoss JBPM SVN: r4051 - in jbpm4/branches/ainze/modules/spring: src and 21 other directories.

do-not-reply at jboss.org do-not-reply at jboss.org
Thu Feb 26 09:30:35 EST 2009


Author: ainze
Date: 2009-02-26 09:30:35 -0500 (Thu, 26 Feb 2009)
New Revision: 4051

Added:
   jbpm4/branches/ainze/modules/spring/src/
   jbpm4/branches/ainze/modules/spring/src/main/
   jbpm4/branches/ainze/modules/spring/src/main/java/
   jbpm4/branches/ainze/modules/spring/src/main/java/org/
   jbpm4/branches/ainze/modules/spring/src/main/java/org/jbpm/
   jbpm4/branches/ainze/modules/spring/src/main/java/org/jbpm/spring/
   jbpm4/branches/ainze/modules/spring/src/main/java/org/jbpm/spring/cfg/
   jbpm4/branches/ainze/modules/spring/src/main/java/org/jbpm/spring/cfg/SpringConfigurationFactoryBean.java
   jbpm4/branches/ainze/modules/spring/src/main/java/org/jbpm/spring/test/
   jbpm4/branches/ainze/modules/spring/src/main/java/org/jbpm/spring/test/AbstractTransactionalSpringJbpmTestCase.java
   jbpm4/branches/ainze/modules/spring/src/main/java/org/jbpm/test/
   jbpm4/branches/ainze/modules/spring/src/main/resources/
   jbpm4/branches/ainze/modules/spring/src/test/
   jbpm4/branches/ainze/modules/spring/src/test/java/
   jbpm4/branches/ainze/modules/spring/src/test/java/org/
   jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/
   jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/spring/
   jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/spring/test/
   jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/spring/test/activities/
   jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/spring/test/activities/ExclusiveTest.java
   jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/spring/test/activities/StateTest.java
   jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/spring/test/beans/
   jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/spring/test/beans/InvokeTestBean.java
   jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/spring/test/beans/SpringBeanTest.java
   jbpm4/branches/ainze/modules/spring/src/test/resources/
   jbpm4/branches/ainze/modules/spring/src/test/resources/org/
   jbpm4/branches/ainze/modules/spring/src/test/resources/org/jbpm/
   jbpm4/branches/ainze/modules/spring/src/test/resources/org/jbpm/spring/
   jbpm4/branches/ainze/modules/spring/src/test/resources/org/jbpm/spring/test/
   jbpm4/branches/ainze/modules/spring/src/test/resources/org/jbpm/spring/test/applicationContext.xml
   jbpm4/branches/ainze/modules/spring/src/test/resources/org/jbpm/spring/test/beans/
   jbpm4/branches/ainze/modules/spring/src/test/resources/org/jbpm/spring/test/beans/process.jpdl.xml
   jbpm4/branches/ainze/modules/spring/src/test/resources/org/jbpm/spring/test/jbpm.cfg.xml
Log:
initial spring integration

Added: jbpm4/branches/ainze/modules/spring/src/main/java/org/jbpm/spring/cfg/SpringConfigurationFactoryBean.java
===================================================================
--- jbpm4/branches/ainze/modules/spring/src/main/java/org/jbpm/spring/cfg/SpringConfigurationFactoryBean.java	                        (rev 0)
+++ jbpm4/branches/ainze/modules/spring/src/main/java/org/jbpm/spring/cfg/SpringConfigurationFactoryBean.java	2009-02-26 14:30:35 UTC (rev 4051)
@@ -0,0 +1,66 @@
+/**
+ * 
+ */
+package org.jbpm.spring.cfg;
+
+import org.hibernate.SessionFactory;
+import org.jbpm.pvm.internal.cfg.SpringConfiguration;
+import org.springframework.beans.BeansException;
+import org.springframework.beans.factory.FactoryBean;
+import org.springframework.context.ApplicationContext;
+import org.springframework.context.ApplicationContextAware;
+
+/**
+ * Factory that creates a singleton SpringConfiguration.
+ * 
+ * @author Andries Inze
+ *
+ */
+public class SpringConfigurationFactoryBean implements FactoryBean, ApplicationContextAware {
+
+	private String jbpmConfigurationLocation;
+	private SessionFactory sessionFactory;
+	
+	private ApplicationContext applicationContext;
+	
+	public Object getObject() throws Exception {
+		SpringConfiguration result = new SpringConfiguration(jbpmConfigurationLocation);
+		result.setApplicationContext(applicationContext);
+		result.setSessionFactory(sessionFactory);
+		return result;
+	}
+
+	/**
+	 * {@inheritDoc)
+	 */
+	@SuppressWarnings("unchecked")
+	public Class getObjectType() {
+		return SpringConfiguration.class;
+	}
+
+	/**
+	 * {@inheritDoc)
+	 */
+	public boolean isSingleton() {
+		return true;
+	}
+
+	/**
+	 * @param jbpmConfigurationLocation the jbpmConfigurationLocation to set
+	 */
+	public void setJbpmConfigurationLocation(String jbpmConfigurationLocation) {
+		this.jbpmConfigurationLocation = jbpmConfigurationLocation;
+	}
+
+	/**
+	 * @param sessionFactory the sessionFactory to set
+	 */
+	public void setSessionFactory(SessionFactory sessionFactory) {
+		this.sessionFactory = sessionFactory;
+	}
+
+	public void setApplicationContext(ApplicationContext applicationContext)
+			throws BeansException {
+		this.applicationContext = applicationContext;
+	}
+}


Property changes on: jbpm4/branches/ainze/modules/spring/src/main/java/org/jbpm/spring/cfg/SpringConfigurationFactoryBean.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: jbpm4/branches/ainze/modules/spring/src/main/java/org/jbpm/spring/test/AbstractTransactionalSpringJbpmTestCase.java
===================================================================
--- jbpm4/branches/ainze/modules/spring/src/main/java/org/jbpm/spring/test/AbstractTransactionalSpringJbpmTestCase.java	                        (rev 0)
+++ jbpm4/branches/ainze/modules/spring/src/main/java/org/jbpm/spring/test/AbstractTransactionalSpringJbpmTestCase.java	2009-02-26 14:30:35 UTC (rev 4051)
@@ -0,0 +1,59 @@
+/**
+ * 
+ */
+package org.jbpm.spring.test;
+
+import java.util.List;
+
+import org.jbpm.Configuration;
+import org.jbpm.ExecutionService;
+import org.jbpm.ManagementService;
+import org.jbpm.ProcessDefinition;
+import org.jbpm.ProcessEngine;
+import org.jbpm.ProcessService;
+import org.jbpm.TaskService;
+import org.springframework.test.AbstractTransactionalDataSourceSpringContextTests;
+
+/**
+ * Abstract test class that - builds the application context - runs in 1
+ * transaction - adds convenience methods: e.g. deploying a process.
+ * 
+ * @author Andries Inze
+ * 
+ */
+public abstract class AbstractTransactionalSpringJbpmTestCase extends
+		AbstractTransactionalDataSourceSpringContextTests {
+
+	private Configuration configuration;
+	private ProcessEngine processEngine;
+
+	protected ExecutionService executionService;
+	protected ProcessService processService;
+	protected TaskService taskService;
+	protected ManagementService managementService;
+	protected List<String> taskIds;
+
+	/**
+	 * {@inheritDoc)
+	 */
+	protected void injectDependencies() throws Exception {
+		super.injectDependencies();
+		configuration = (Configuration) applicationContext
+				.getBean("configuration");
+		processEngine = configuration.buildProcessEngine();
+		executionService = processEngine.getExecutionService();
+		processService = processEngine.getProcessService();
+		taskService = processEngine.getTaskService();
+		managementService = processEngine.getManagementService();
+	}
+
+	public void deployJpdlXmlString(String jpdlXmlString) {
+		processService.createDeployment().addString("xmlstring.jpdl.xml",
+				jpdlXmlString).deploy().getProcessDefinitions();
+	}
+
+	public void deployJpdlResource(String resource) {
+		processService.createDeployment().addResource(resource).deploy()
+				.getProcessDefinitions();
+	}
+}


Property changes on: jbpm4/branches/ainze/modules/spring/src/main/java/org/jbpm/spring/test/AbstractTransactionalSpringJbpmTestCase.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/spring/test/activities/ExclusiveTest.java
===================================================================
--- jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/spring/test/activities/ExclusiveTest.java	                        (rev 0)
+++ jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/spring/test/activities/ExclusiveTest.java	2009-02-26 14:30:35 UTC (rev 4051)
@@ -0,0 +1,102 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY 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 along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jbpm.spring.test.activities;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.jbpm.Execution;
+import org.jbpm.spring.test.AbstractTransactionalSpringJbpmTestCase;
+
+
+/**
+ * @author Tom Baeyens
+ */
+public class ExclusiveTest extends AbstractTransactionalSpringJbpmTestCase {
+
+	
+	@Override
+	protected String[] getConfigLocations() {
+		return new String[]{"org/jbpm/spring/test/applicationContext.xml"};
+	}
+
+  public void testExclusiveExpression() {
+    deployJpdlXmlString(
+      "<process name='Poolcar'>" +
+      "  <start>" +
+      "    <transition to='How far?' />" +
+      "  </start>" +
+      "  <exclusive name='How far?' expr='#{distance}'>" +
+      "    <transition name='far'    to='Big car' />" +
+      "    <transition name='nearby' to='Small car' />" +
+      "  </exclusive>" +
+      "  <state name='Big car' />" +
+      "  <state name='Small car' />" +
+      "</process>"
+    );
+
+    Map<String, Object> variables = new HashMap<String, Object>();
+    variables.put("distance", "far");
+    Execution execution = executionService.startProcessInstanceByKey("Poolcar", variables);
+    assertEquals("Big car", execution.getActivityName());
+
+    variables.put("distance", "nearby");
+    execution = executionService.startProcessInstanceByKey("Poolcar", variables);
+    assertEquals("Small car", execution.getActivityName());
+  }
+
+  public void testExclusiveWithConditions() {
+    deployJpdlXmlString(
+      "<process name='Poolcar'>" +
+      "  <start>" +
+      "    <transition to='How far?' />" +
+      "  </start>" +
+      "  <exclusive name='How far?'>" +
+      "    <transition to='Big car'>" +
+      "      <condition expr='#{distance &gt; 10}' />" +
+      "    </transition>" +
+      "    <transition to='Small car'>" +
+      "      <condition expr='#{distance &gt;= 3}' />" +
+      "    </transition>" +
+      "    <transition to='No car' />" +
+      "  </exclusive>" +
+      "  <state name='Big car' />" +
+      "  <state name='Small car' />" +
+      "  <state name='No car' />" +
+      "</process>"
+    );
+
+    Map<String, Object> variables = new HashMap<String, Object>();
+    variables.put("distance", new Integer(69));
+    Execution execution = executionService.startProcessInstanceByKey("Poolcar", variables);
+    assertEquals("Big car", execution.getActivityName());
+
+    variables.put("distance", new Integer(6));
+    execution = executionService.startProcessInstanceByKey("Poolcar", variables);
+    assertEquals("Small car", execution.getActivityName());
+
+    variables.put("distance", new Integer(2));
+    execution = executionService.startProcessInstanceByKey("Poolcar", variables);
+    assertEquals("No car", execution.getActivityName());
+  }
+
+}


Property changes on: jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/spring/test/activities/ExclusiveTest.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/spring/test/activities/StateTest.java
===================================================================
--- jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/spring/test/activities/StateTest.java	                        (rev 0)
+++ jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/spring/test/activities/StateTest.java	2009-02-26 14:30:35 UTC (rev 4051)
@@ -0,0 +1,44 @@
+/**
+ * 
+ */
+package org.jbpm.spring.test.activities;
+
+import org.jbpm.Execution;
+import org.jbpm.spring.test.AbstractTransactionalSpringJbpmTestCase;
+
+/**
+ * @author AIEXM45
+ * 
+ */
+public class StateTest extends AbstractTransactionalSpringJbpmTestCase {
+
+	/**
+	 * {@inheritDoc)
+	 */
+	@Override
+	protected String[] getConfigLocations() {
+		return new String[]{"org/jbpm/spring/test/applicationContext.xml"};
+	}
+
+	public void testWaitStatesSequence() {
+		deployJpdlXmlString("<process name='ThreeStates'>"
+				+ "  <start name='a'>" + "    <transition to='b' />" + "  </start>"
+				+ "  <state name='b'>" + "    <transition to='c' />" + "  </state>"
+				+ "  <state name='c'>" + "    <transition to='d' />" + "  </state>"
+				+ "  <end name='d' />" + "</process>");
+
+		Execution execution = executionService
+				.startProcessInstanceById("ThreeStates:1");
+		assertEquals("b", execution.getActivityName());
+
+		String executionId = execution.getId();
+		execution = executionService.signalExecutionById(executionId);
+		assertEquals("c", execution.getActivityName());
+
+		execution = executionService.signalExecutionById(executionId);
+		assertEquals("d", execution.getActivityName());
+		assertTrue(execution.isEnded());
+	}
+
+
+}


Property changes on: jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/spring/test/activities/StateTest.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/spring/test/beans/InvokeTestBean.java
===================================================================
--- jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/spring/test/beans/InvokeTestBean.java	                        (rev 0)
+++ jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/spring/test/beans/InvokeTestBean.java	2009-02-26 14:30:35 UTC (rev 4051)
@@ -0,0 +1,54 @@
+/**
+ * 
+ */
+package org.jbpm.spring.test.beans;
+
+import org.jbpm.jpdl.ExclusiveHandler;
+import org.jbpm.model.OpenExecution;
+
+/**
+ * @author Andries Inze
+ *
+ */
+public class InvokeTestBean implements ExclusiveHandler {
+
+	private boolean testMethodHasRun;
+	private boolean testMethodWithParametersHasRun;
+	private boolean testSelectHasRun;
+	
+	public void testMethod() {
+		testMethodHasRun = true;
+	}
+	
+	public void testMethodWithParameters(String name) {
+		if ("a good test".equals(name)) {
+			testMethodWithParametersHasRun = true;
+		}
+	}
+
+	public String select(OpenExecution execution) {
+		testSelectHasRun = true;
+		return "yes";
+	}
+
+	/**
+	 * @return the testMethodHasRun
+	 */
+	public boolean isTestMethodHasRun() {
+		return testMethodHasRun;
+	}
+
+	/**
+	 * @return the testMethodWithParametersHasRun
+	 */
+	public boolean isTestMethodWithParametersHasRun() {
+		return testMethodWithParametersHasRun;
+	}
+
+	/**
+	 * @return the testSelectHasRun
+	 */
+	public boolean isTestSelectHasRun() {
+		return testSelectHasRun;
+	}
+}


Property changes on: jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/spring/test/beans/InvokeTestBean.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/spring/test/beans/SpringBeanTest.java
===================================================================
--- jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/spring/test/beans/SpringBeanTest.java	                        (rev 0)
+++ jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/spring/test/beans/SpringBeanTest.java	2009-02-26 14:30:35 UTC (rev 4051)
@@ -0,0 +1,35 @@
+/**
+ * 
+ */
+package org.jbpm.spring.test.beans;
+
+import org.jbpm.Execution;
+import org.jbpm.spring.test.AbstractTransactionalSpringJbpmTestCase;
+
+/**
+ * @author AIEXM45
+ * 
+ */
+public class SpringBeanTest extends AbstractTransactionalSpringJbpmTestCase {
+
+	/**
+	 * {@inheritDoc)
+	 */
+	@Override
+	protected String[] getConfigLocations() {
+		return new String[]{"org/jbpm/spring/test/applicationContext.xml"};
+	}
+
+	public void testInvokeSpringBean() {
+		deployJpdlResource("org/jbpm/spring/test/beans/process.jpdl.xml");
+		
+		InvokeTestBean invokeTestBean = (InvokeTestBean) applicationContext.getBean("testBean");
+		
+		Execution execution = executionService
+				.startProcessInstanceByKey("Spring");
+		assertEquals("wait", execution.getActivityName());
+		assertTrue(invokeTestBean.isTestMethodHasRun());
+		assertTrue(invokeTestBean.isTestMethodWithParametersHasRun());
+		assertTrue(invokeTestBean.isTestSelectHasRun());
+	}
+}


Property changes on: jbpm4/branches/ainze/modules/spring/src/test/java/org/jbpm/spring/test/beans/SpringBeanTest.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: jbpm4/branches/ainze/modules/spring/src/test/resources/org/jbpm/spring/test/applicationContext.xml
===================================================================
--- jbpm4/branches/ainze/modules/spring/src/test/resources/org/jbpm/spring/test/applicationContext.xml	                        (rev 0)
+++ jbpm4/branches/ainze/modules/spring/src/test/resources/org/jbpm/spring/test/applicationContext.xml	2009-02-26 14:30:35 UTC (rev 4051)
@@ -0,0 +1,105 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<beans xmlns="http://www.springframework.org/schema/beans"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xmlns:aop="http://www.springframework.org/schema/aop"
+	xmlns:context="http://www.springframework.org/schema/context"
+	xmlns:tx="http://www.springframework.org/schema/tx"
+	xsi:schemaLocation="
+        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
+        http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
+        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd
+        http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
+
+	<bean id="configuration" class="org.jbpm.spring.cfg.SpringConfigurationFactoryBean">
+		<property name="jbpmConfigurationLocation" value="org/jbpm/spring/test/jbpm.cfg.xml" />
+		<property name="sessionFactory" ref="sessionFactory" />
+	</bean>
+	
+<!-- 
+	<bean id="configuration" class="org.jbpm.spring.cfg.SpringConfiguration">
+		<constructor-arg value="org/jbpm/spring/test/jbpm.cfg.xml" />
+		<property name="sessionFactory" ref="sessionFactory" />
+		<property name="transactionManager" ref="transactionManager" />
+	</bean>
+ -->
+	<bean id="sessionFactory"
+		class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
+		<property name="dataSource" ref="dataSource" />
+		<property name="mappingResources">
+			<list>
+				<value>jbpm.pvm.typedefs.hbm.xml</value>
+				<value>jbpm.pvm.wire.hbm.xml</value>
+				<value>jbpm.pvm.definition.hbm.xml</value>
+				<value>jbpm.pvm.execution.hbm.xml</value>
+				<value>jbpm.pvm.variable.hbm.xml</value>
+				<value>jbpm.pvm.history.hbm.xml</value>
+				<value>jbpm.pvm.job.hbm.xml</value>
+				<value>jbpm.jpdl.hbm.xml</value>
+				<value>jbpm.task.hbm.xml</value>
+			</list>
+		</property>
+		<property name="hibernateProperties">
+			<props>
+				<prop key="hibernate.dialect">org.hibernate.dialect.HSQLDialect</prop>
+				<prop key="hibernate.cache.provider_class">org.hibernate.cache.HashtableCacheProvider</prop>
+				<prop key="hibernate.cache.use_second_level_cache">true</prop>
+				<prop key="hibernate.hbm2ddl.auto">create-drop</prop>
+				<prop key="hibernate.bytecode.use_reflection_optimizer">false</prop>
+			</props>
+		</property>
+		<property name="entityCacheStrategies">
+			<props>
+				<prop key="org.jbpm.pvm.internal.model.ProcessDefinitionImpl">read-write</prop>
+				<prop key="org.jbpm.pvm.internal.model.ActivityImpl">read-write</prop>
+				<prop key="org.jbpm.pvm.internal.model.TransitionImpl">read-write</prop>
+				<prop key="org.jbpm.pvm.internal.model.EventImpl">read-write</prop>
+				<prop key="org.jbpm.pvm.internal.model.ExceptionHandlerImpl">read-write</prop>
+				<prop key="org.jbpm.pvm.internal.model.ObjectReference">read-write</prop>
+  				<prop key="org.jbpm.pvm.internal.model.VariableDefinitionImpl">read-write</prop>
+  				<prop key="org.jbpm.pvm.internal.model.TimerDefinitionImpl">read-write</prop>
+  				<prop key="org.jbpm.pvm.internal.wire.descriptor.AbstractDescriptor">read-write</prop>
+			</props>
+		</property>
+		<property name="collectionCacheStrategies">
+			<props>
+				<prop key="org.jbpm.pvm.internal.model.ProcessDefinitionImpl.exceptionHandlers">read-write</prop>
+				<prop key="org.jbpm.pvm.internal.model.ProcessDefinitionImpl.events">read-write</prop>
+				<prop key="org.jbpm.pvm.internal.model.ProcessDefinitionImpl.activities">read-write</prop>
+				<prop key="org.jbpm.pvm.internal.model.ProcessDefinitionImpl.variableDefinitions">read-write</prop>
+				<prop key="org.jbpm.pvm.internal.model.ProcessDefinitionImpl.timerDefinitions">read-write</prop>
+				<prop key="org.jbpm.pvm.internal.model.ActivityImpl.exceptionHandlers">read-write</prop>
+				<prop key="org.jbpm.pvm.internal.model.ActivityImpl.events">read-write</prop>
+				<prop key="org.jbpm.pvm.internal.model.ActivityImpl.activities">read-write</prop>
+				<prop key="org.jbpm.pvm.internal.model.ActivityImpl.variableDefinitions">read-write</prop>
+				<prop key="org.jbpm.pvm.internal.model.ActivityImpl.timerDefinitions">read-write</prop>
+				<prop key="org.jbpm.pvm.internal.model.ActivityImpl.incomingTransitions">read-write</prop>
+				<prop key="org.jbpm.pvm.internal.model.ActivityImpl.outgoingTransitions">read-write</prop>
+				<prop key="org.jbpm.pvm.internal.model.TransitionImpl.exceptionHandlers">read-write</prop>
+				<prop key="org.jbpm.pvm.internal.model.TransitionImpl.events">read-write</prop>
+				<prop key="org.jbpm.pvm.internal.model.EventImpl.exceptionHandlers">read-write</prop>
+				<prop key="org.jbpm.pvm.internal.model.EventImpl.listenerReferences">read-write</prop>
+				<prop key="org.jbpm.pvm.internal.model.ExceptionHandlerImpl.eventListenerReferences">read-write</prop>
+				<prop key="org.jbpm.pvm.internal.wire.descriptor.ObjectDescriptor.argDescriptors">read-write</prop>
+			 	<prop key="org.jbpm.pvm.internal.wire.descriptor.ObjectDescriptor.operations">read-write</prop>
+			</props>
+		</property>
+	</bean>
+
+	<bean id="transactionManager"
+		class="org.springframework.orm.hibernate3.HibernateTransactionManager"
+		scope="singleton">
+		<property name="sessionFactory" ref="sessionFactory" />
+	</bean>
+
+	<bean id="dataSource"
+		class="org.springframework.jdbc.datasource.DriverManagerDataSource">
+		<property name="driverClassName" value="org.hsqldb.jdbcDriver" />
+		<property name="url" value="jdbc:hsqldb:mem:." />
+		<property name="username" value="sa" />
+		<property name="password" value="" />
+	</bean>
+	
+	<bean id="testBean" class="org.jbpm.spring.test.beans.InvokeTestBean" />
+	
+</beans>
\ No newline at end of file


Property changes on: jbpm4/branches/ainze/modules/spring/src/test/resources/org/jbpm/spring/test/applicationContext.xml
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: jbpm4/branches/ainze/modules/spring/src/test/resources/org/jbpm/spring/test/beans/process.jpdl.xml
===================================================================
--- jbpm4/branches/ainze/modules/spring/src/test/resources/org/jbpm/spring/test/beans/process.jpdl.xml	                        (rev 0)
+++ jbpm4/branches/ainze/modules/spring/src/test/resources/org/jbpm/spring/test/beans/process.jpdl.xml	2009-02-26 14:30:35 UTC (rev 4051)
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<process name="Spring">
+
+	<start>
+		<transition to="test" />
+	</start>
+
+	<spring name="test">
+		<bean>testBean</bean>
+		<method>testMethod</method>
+		<transition to="testWithParameters" />
+	</spring>
+
+	<spring name="testWithParameters">
+		<bean>testBean</bean>
+		<method>testMethodWithParameters</method>
+		<parameters>
+			<string value="a good test" />
+		</parameters>
+		<transition to="exclusive spring test" />
+	</spring>
+	
+	<exclusive name="exclusive spring test"  handler-ref="testBean">
+		<transition name="no" to="wait" />
+		<transition name="yes" to="wait" />
+	</exclusive>
+
+	<state name="wait" />
+
+</process>


Property changes on: jbpm4/branches/ainze/modules/spring/src/test/resources/org/jbpm/spring/test/beans/process.jpdl.xml
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: jbpm4/branches/ainze/modules/spring/src/test/resources/org/jbpm/spring/test/jbpm.cfg.xml
===================================================================
--- jbpm4/branches/ainze/modules/spring/src/test/resources/org/jbpm/spring/test/jbpm.cfg.xml	                        (rev 0)
+++ jbpm4/branches/ainze/modules/spring/src/test/resources/org/jbpm/spring/test/jbpm.cfg.xml	2009-02-26 14:30:35 UTC (rev 4051)
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<jbpm-configuration xmlns="http://jbpm.org/xsd/cfg">
+
+  <process-engine-context>
+  
+    <deployer-manager>
+      <assign-file-type>
+        <file extension=".jpdl.xml" type="jpdl" />
+      </assign-file-type>
+      <parse-jpdl />
+      <check-process />
+      <check-problems />
+      <save />
+    </deployer-manager>
+    
+    <process-service />
+    <execution-service />
+    <history-service />
+    <management-service />
+    <task-service />
+  
+    <command-service>
+      <retry-interceptor />
+      <environment-interceptor />
+      
+      <!-- Spring is doing all the transaction stuff. -->
+      <!-- <standard-transaction-interceptor /> -->
+      
+    </command-service>
+    
+    <script-manager default-expression-language="juel"
+                    default-script-language="juel"
+                    read-contexts="execution, environment, process-engine"
+                    write-context="">
+        <script-language name="juel" factory="com.sun.script.juel.JuelScriptEngineFactory" />
+    </script-manager>
+    
+    <job-executor auto-start="false" />
+    <job-test-helper />
+
+    <id-generator />
+    <types resource="jbpm.pvm.types.xml" />
+
+    <business-calendar>
+      <monday    hours="9:00-12:00 and 12:30-17:00"/>
+      <tuesday   hours="9:00-12:00 and 12:30-17:00"/>
+      <wednesday hours="9:00-12:00 and 12:30-17:00"/>
+      <thursday  hours="9:00-12:00 and 12:30-17:00"/>
+      <friday    hours="9:00-12:00 and 12:30-17:00"/>
+      <holiday period="01/07/2008 - 31/08/2008"/>
+    </business-calendar>
+  
+  </process-engine-context>
+
+  <transaction-context>
+  	<!-- All operations inside a single request will be handled by the spring session -->
+    <hibernate-session current="true" />
+    
+    <transaction />
+    <pvm-db-session />
+    <job-db-session />
+    <task-db-session />
+    <message-session />
+    <timer-session />
+     <history-session />
+  </transaction-context>
+
+
+</jbpm-configuration>


Property changes on: jbpm4/branches/ainze/modules/spring/src/test/resources/org/jbpm/spring/test/jbpm.cfg.xml
___________________________________________________________________
Name: svn:mime-type
   + text/plain




More information about the jbpm-commits mailing list