JBoss JBPM SVN: r6426 - in jbpm4/trunk/modules: pvm/src/main/java/org/jbpm/pvm/internal/id and 2 other directories.
by do-not-reply@jboss.org
Author: alex.guizar(a)jboss.com
Date: 2010-06-19 05:20:36 -0400 (Sat, 19 Jun 2010)
New Revision: 6426
Modified:
jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/hibernate/spring/hsqldb.hibernate.cfg.xml
jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/hibernate/spring/hsqldb.inmem.hibernate.cfg.xml
jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/hibernate/spring/mysql.hibernate.cfg.xml
jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/hibernate/spring/oracle.hibernate.cfg.xml
jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/hibernate/spring/postgresql.hibernate.cfg.xml
jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/hibernate/spring/sybase.hibernate.cfg.xml
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/id/PropertyImpl.java
jbpm4/trunk/modules/test-db/pom.xml
jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/task/AssignmentHandlerTest.java
Log:
JBPM-2758: remove extraneous buildProcessEngine call in AssignmentHandlerTest which caused failure in jbpm4-spring job
trim spring hibernate configuration files
Modified: jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/hibernate/spring/hsqldb.hibernate.cfg.xml
===================================================================
--- jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/hibernate/spring/hsqldb.hibernate.cfg.xml 2010-06-19 07:26:54 UTC (rev 6425)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/hibernate/spring/hsqldb.hibernate.cfg.xml 2010-06-19 09:20:36 UTC (rev 6426)
@@ -1,22 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
- "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
- "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
+ "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
+ "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
- <session-factory>
-
- <property name="hibernate.dialect">org.hibernate.dialect.HSQLDialect</property>
+ <session-factory>
+ <property name="hibernate.dialect">org.hibernate.dialect.HSQLDialect</property>
<property name="hibernate.format_sql">true</property>
- <property name="current_session_context_class">thread</property>
- <!-- property name="hibernate.transaction.factory_class">org.springframework.orm.hibernate3.SpringTransactionFactory</property -->
- <mapping resource="jbpm.repository.hbm.xml" />
- <mapping resource="jbpm.execution.hbm.xml" />
- <mapping resource="jbpm.history.hbm.xml" />
- <mapping resource="jbpm.task.hbm.xml" />
- <mapping resource="jbpm.identity.hbm.xml" />
-
- </session-factory>
+ <mapping resource="jbpm.repository.hbm.xml" />
+ <mapping resource="jbpm.execution.hbm.xml" />
+ <mapping resource="jbpm.history.hbm.xml" />
+ <mapping resource="jbpm.task.hbm.xml" />
+ <mapping resource="jbpm.identity.hbm.xml" />
+ </session-factory>
</hibernate-configuration>
Modified: jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/hibernate/spring/hsqldb.inmem.hibernate.cfg.xml
===================================================================
--- jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/hibernate/spring/hsqldb.inmem.hibernate.cfg.xml 2010-06-19 07:26:54 UTC (rev 6425)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/hibernate/spring/hsqldb.inmem.hibernate.cfg.xml 2010-06-19 09:20:36 UTC (rev 6426)
@@ -1,25 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
- "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
- "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
+ "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
+ "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
- <session-factory>
-
- <property name="hibernate.dialect">org.hibernate.dialect.HSQLDialect</property>
- <property name="current_session_context_class">thread</property>
- <!-- property name="hibernate.transaction.factory_class">org.jbpm.pvm.internal.tx.SpringTransactionFactory</property -->
- <!-- property name="hibernate.transaction.factory_class">org.springframework.orm.hibernate3.SpringTransactionFactory</property -->
+ <session-factory>
+ <property name="hibernate.dialect">org.hibernate.dialect.HSQLDialect</property>
<property name="hibernate.format_sql">true</property>
<property name="hibernate.hbm2ddl.auto">create-drop</property>
- <mapping resource="jbpm.repository.hbm.xml" />
- <mapping resource="jbpm.execution.hbm.xml" />
- <mapping resource="jbpm.history.hbm.xml" />
- <mapping resource="jbpm.task.hbm.xml" />
- <mapping resource="jbpm.identity.hbm.xml" />
-
- </session-factory>
+ <mapping resource="jbpm.repository.hbm.xml" />
+ <mapping resource="jbpm.execution.hbm.xml" />
+ <mapping resource="jbpm.history.hbm.xml" />
+ <mapping resource="jbpm.task.hbm.xml" />
+ <mapping resource="jbpm.identity.hbm.xml" />
+ </session-factory>
</hibernate-configuration>
Modified: jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/hibernate/spring/mysql.hibernate.cfg.xml
===================================================================
--- jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/hibernate/spring/mysql.hibernate.cfg.xml 2010-06-19 07:26:54 UTC (rev 6425)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/hibernate/spring/mysql.hibernate.cfg.xml 2010-06-19 09:20:36 UTC (rev 6426)
@@ -1,22 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
- "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
- "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
+ "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
+ "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
- <session-factory>
-
- <property name="hibernate.dialect">org.hibernate.dialect.MySQLInnoDBDialect</property>
- <property name="current_session_context_class">thread</property>
- <!-- property name="hibernate.transaction.factory_class">org.springframework.orm.hibernate3.SpringTransactionFactory</property -->
+ <session-factory>
+ <property name="hibernate.dialect">org.hibernate.dialect.MySQLInnoDBDialect</property>
<property name="hibernate.format_sql">true</property>
- <mapping resource="jbpm.repository.hbm.xml" />
- <mapping resource="jbpm.execution.hbm.xml" />
- <mapping resource="jbpm.history.hbm.xml" />
- <mapping resource="jbpm.task.hbm.xml" />
- <mapping resource="jbpm.identity.hbm.xml" />
-
- </session-factory>
+ <mapping resource="jbpm.repository.hbm.xml" />
+ <mapping resource="jbpm.execution.hbm.xml" />
+ <mapping resource="jbpm.history.hbm.xml" />
+ <mapping resource="jbpm.task.hbm.xml" />
+ <mapping resource="jbpm.identity.hbm.xml" />
+ </session-factory>
</hibernate-configuration>
Modified: jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/hibernate/spring/oracle.hibernate.cfg.xml
===================================================================
--- jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/hibernate/spring/oracle.hibernate.cfg.xml 2010-06-19 07:26:54 UTC (rev 6425)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/hibernate/spring/oracle.hibernate.cfg.xml 2010-06-19 09:20:36 UTC (rev 6426)
@@ -1,15 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
- "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
- "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
+ "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
+ "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
- <session-factory>
-
+ <session-factory>
<property name="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</property>
- <property name="current_session_context_class">thread</property>
- <!-- property name="hibernate.transaction.factory_class">org.springframework.orm.hibernate3.SpringTransactionFactory</property -->
<property name="hibernate.format_sql">true</property>
<mapping resource="jbpm.repository.hbm.xml" />
@@ -17,6 +14,5 @@
<mapping resource="jbpm.history.hbm.xml" />
<mapping resource="jbpm.task.hbm.xml" />
<mapping resource="jbpm.identity.hbm.xml" />
-
- </session-factory>
+ </session-factory>
</hibernate-configuration>
Modified: jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/hibernate/spring/postgresql.hibernate.cfg.xml
===================================================================
--- jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/hibernate/spring/postgresql.hibernate.cfg.xml 2010-06-19 07:26:54 UTC (rev 6425)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/hibernate/spring/postgresql.hibernate.cfg.xml 2010-06-19 09:20:36 UTC (rev 6426)
@@ -1,22 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
- "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
- "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
+ "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
+ "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
- <session-factory>
-
- <property name="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</property>
- <property name="current_session_context_class">thread</property>
- <!-- property name="hibernate.transaction.factory_class">org.springframework.orm.hibernate3.SpringTransactionFactory</property -->
+ <session-factory>
+ <property name="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</property>
<property name="hibernate.format_sql">true</property>
- <mapping resource="jbpm.repository.hbm.xml" />
- <mapping resource="jbpm.execution.hbm.xml" />
- <mapping resource="jbpm.history.hbm.xml" />
- <mapping resource="jbpm.task.hbm.xml" />
- <mapping resource="jbpm.identity.hbm.xml" />
-
- </session-factory>
+ <mapping resource="jbpm.repository.hbm.xml" />
+ <mapping resource="jbpm.execution.hbm.xml" />
+ <mapping resource="jbpm.history.hbm.xml" />
+ <mapping resource="jbpm.task.hbm.xml" />
+ <mapping resource="jbpm.identity.hbm.xml" />
+ </session-factory>
</hibernate-configuration>
Modified: jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/hibernate/spring/sybase.hibernate.cfg.xml
===================================================================
--- jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/hibernate/spring/sybase.hibernate.cfg.xml 2010-06-19 07:26:54 UTC (rev 6425)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/hibernate/spring/sybase.hibernate.cfg.xml 2010-06-19 09:20:36 UTC (rev 6426)
@@ -1,22 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
- "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
- "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
+ "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
+ "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
- <session-factory>
-
- <property name="hibernate.dialect">org.hibernate.dialect.SybaseDialect</property>
- <property name="current_session_context_class">thread</property>
- <!-- property name="hibernate.transaction.factory_class">org.springframework.orm.hibernate3.SpringTransactionFactory</property -->
+ <session-factory>
+ <property name="hibernate.dialect">org.hibernate.dialect.SybaseDialect</property>
<property name="hibernate.format_sql">true</property>
- <mapping resource="jbpm.repository.hbm.xml" />
- <mapping resource="jbpm.execution.hbm.xml" />
- <mapping resource="jbpm.history.hbm.xml" />
- <mapping resource="jbpm.task.hbm.xml" />
- <mapping resource="jbpm.identity.hbm.xml" />
-
- </session-factory>
+ <mapping resource="jbpm.repository.hbm.xml" />
+ <mapping resource="jbpm.execution.hbm.xml" />
+ <mapping resource="jbpm.history.hbm.xml" />
+ <mapping resource="jbpm.task.hbm.xml" />
+ <mapping resource="jbpm.identity.hbm.xml" />
+ </session-factory>
</hibernate-configuration>
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/id/PropertyImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/id/PropertyImpl.java 2010-06-19 07:26:54 UTC (rev 6425)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/id/PropertyImpl.java 2010-06-19 09:20:36 UTC (rev 6426)
@@ -25,7 +25,7 @@
import java.util.List;
import org.hibernate.Session;
-import org.hibernate.criterion.Restrictions;
+
import org.jbpm.internal.log.Log;
import org.jbpm.pvm.internal.history.model.HistoryActivityInstanceImpl;
import org.jbpm.pvm.internal.history.model.HistoryDetailImpl;
@@ -45,7 +45,6 @@
import org.jbpm.pvm.internal.task.TaskImpl;
import org.jbpm.pvm.internal.type.Variable;
-
/** jbpm installation properties.
*
* currently there are 2 use cases for these properties:
@@ -181,9 +180,7 @@
}
protected static PropertyImpl getProperty(Session session, String key) {
- return (PropertyImpl) session.createCriteria(PropertyImpl.class)
- .add(Restrictions.eq("key", key))
- .uniqueResult();
+ return (PropertyImpl) session.get(PropertyImpl.class, key);
}
public static void setDbVersionTo41(Session session) {
Modified: jbpm4/trunk/modules/test-db/pom.xml
===================================================================
--- jbpm4/trunk/modules/test-db/pom.xml 2010-06-19 07:26:54 UTC (rev 6425)
+++ jbpm4/trunk/modules/test-db/pom.xml 2010-06-19 09:20:36 UTC (rev 6426)
@@ -195,7 +195,6 @@
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<failIfNoTests>false</failIfNoTests>
- <trimStackTrace>false</trimStackTrace>
<redirectTestOutputToFile>true</redirectTestOutputToFile>
<excludes>
<exclude>org/jbpm/test/reporting/SQLStmtTest.java</exclude>
Modified: jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/task/AssignmentHandlerTest.java
===================================================================
--- jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/task/AssignmentHandlerTest.java 2010-06-19 07:26:54 UTC (rev 6425)
+++ jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/task/AssignmentHandlerTest.java 2010-06-19 09:20:36 UTC (rev 6426)
@@ -1,163 +1,111 @@
package org.jbpm.test.task;
-import java.util.HashMap;
import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import org.jbpm.api.Configuration;
-import org.jbpm.api.ProcessEngine;
import org.jbpm.api.ProcessInstance;
-import org.jbpm.api.TaskService;
import org.jbpm.api.model.OpenExecution;
import org.jbpm.api.task.Assignable;
import org.jbpm.api.task.AssignmentHandler;
import org.jbpm.api.task.Participation;
import org.jbpm.api.task.Task;
-import org.jbpm.pvm.internal.env.EnvironmentImpl;
import org.jbpm.test.JbpmTestCase;
public class AssignmentHandlerTest extends JbpmTestCase {
- /** Deployment id. */
- String deploymentId;
+ String deploymentId;
- /**
- * Set up.
- * @throws Exception exception
- */
- protected void setUp() throws Exception {
- super.setUp();
+ protected void setUp() throws Exception {
+ super.setUp();
- // XML definition
- StringBuilder jpdl = new StringBuilder();
- jpdl.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
- jpdl.append("<process key=\"testProcess\" name=\"Test Process\" xmlns=\"http://jbpm.org/4.3/jpdl\">");
- jpdl.append(" <start g=\"67,236,48,48\" name=\"start1\">");
- jpdl.append(" <transition g=\"-43,-18\" name=\"to fork1\" to=\"fork1\"/>");
- jpdl.append(" </start>");
- jpdl.append(" <task g=\"255,144,92,52\" name=\"task1\" candidate-groups=\"firstGroup\">");
- jpdl.append(" <assignment-handler class=\"org.jbpm.test.task.AssignmentHandlerTest$AutoAssignment\"/>");
- jpdl.append(" <transition g=\"-41,-18\" name=\"to join1\" to=\"join1\"/>");
- jpdl.append(" </task>");
- jpdl.append(" <task g=\"258,334,92,52\" name=\"task2\" candidate-groups=\"secondGroup\">");
- jpdl.append(" <assignment-handler class=\"org.jbpm.test.task.AssignmentHandlerTest$AutoAssignment\"/>");
- jpdl.append(" <transition g=\"-41,-18\" name=\"to join1\" to=\"join1\"/>");
- jpdl.append(" </task>");
- jpdl.append(" <task g=\"515,228,92,52\" name=\"task3\" candidate-groups=\"thirdGroup\">");
- jpdl.append(" <assignment-handler class=\"org.jbpm.test.task.AssignmentHandlerTest$AutoAssignment\"/>");
- jpdl.append(" <transition g=\"-42,-18\" name=\"to end1\" to=\"end1\"/>");
- jpdl.append(" </task>");
- jpdl.append(" <end g=\"676,232,48,48\" name=\"end1\"/>");
- jpdl.append(" <fork g=\"172,236,48,48\" name=\"fork1\">");
- jpdl.append(" <transition g=\"-44,-18\" name=\"to task1\" to=\"task1\"/>");
- jpdl.append(" <transition g=\"-44,-18\" name=\"to task2\" to=\"task2\"/>");
- jpdl.append(" </fork>");
- jpdl.append(" <join g=\"385,233,48,48\" name=\"join1\">");
- jpdl.append(" <transition g=\"-44,-18\" name=\"to task3\" to=\"task3\"/>");
- jpdl.append(" </join>");
- jpdl.append("</process>");
+ // XML definition
+ String jpdl = "<?xml version=\"1.0\"?>"
+ + "<process key=\"testProcess\" name=\"Test Process\" xmlns=\"http://jbpm.org/4.3/jpdl\">"
+ + " <start g=\"67,236,48,48\" name=\"start1\">"
+ + " <transition g=\"-43,-18\" name=\"to fork1\" to=\"fork1\"/>" + " </start>"
+ + " <task g=\"255,144,92,52\" name=\"task1\" candidate-groups=\"firstGroup\">"
+ + " <assignment-handler class=\""
+ + AutoAssignment.class.getName()
+ + "\"/>"
+ + " <transition g=\"-41,-18\" name=\"to join1\" to=\"join1\"/>"
+ + " </task>"
+ + " <task g=\"258,334,92,52\" name=\"task2\" candidate-groups=\"secondGroup\">"
+ + " <assignment-handler class=\""
+ + AutoAssignment.class.getName()
+ + "\"/>"
+ + " <transition g=\"-41,-18\" name=\"to join1\" to=\"join1\"/>"
+ + " </task>"
+ + " <task g=\"515,228,92,52\" name=\"task3\" candidate-groups=\"thirdGroup\">"
+ + " <assignment-handler class=\""
+ + AutoAssignment.class.getName()
+ + "\"/>"
+ + " <transition g=\"-42,-18\" name=\"to end1\" to=\"end1\"/>"
+ + " </task>"
+ + " <end g=\"676,232,48,48\" name=\"end1\"/>"
+ + " <fork g=\"172,236,48,48\" name=\"fork1\">"
+ + " <transition g=\"-44,-18\" name=\"to task1\" to=\"task1\"/>"
+ + " <transition g=\"-44,-18\" name=\"to task2\" to=\"task2\"/>"
+ + " </fork>"
+ + " <join g=\"385,233,48,48\" name=\"join1\">"
+ + " <transition g=\"-44,-18\" name=\"to task3\" to=\"task3\"/>"
+ + " </join>"
+ + "</process>";
- // Deploys the process
- deploymentId = repositoryService.createDeployment()
- .addResourceFromString("testProcess.jpdl.xml", jpdl.toString())
- .deploy();
- }
+ // Deploys the process
+ deploymentId = repositoryService.createDeployment()
+ .addResourceFromString("testProcess.jpdl.xml", jpdl.toString())
+ .deploy();
+ }
- /**
- * Tear down.
- * @throws Exception exception
- */
- protected void tearDown() throws Exception {
- repositoryService.deleteDeploymentCascade(deploymentId);
- super.tearDown();
- }
+ protected void tearDown() throws Exception {
+ repositoryService.deleteDeploymentCascade(deploymentId);
+ super.tearDown();
+ }
- /**
- * Tests the process.
- */
- public void testProcess() {
+ /** Tests the process. */
+ public void testProcess() {
+ // Starts a new process instance and gets the instance id
+ ProcessInstance processInstance = executionService.startProcessInstanceByKey("testProcess");
+ String pid = processInstance.getId();
- // Starts a new process instance and gets the instance id
- ProcessInstance processInstance = executionService.startProcessInstanceByKey("testProcess");
- String pid = processInstance.getId();
+ // Gets the tasks auto-assigned for the first user and completes the task
+ List<Task> taskList = taskService.findPersonalTasks("firstUser");
+ assertEquals(1, taskList.size());
+ Task task = taskList.get(0);
+ taskService.completeTask(task.getId());
- // Gets the tasks auto-assigned for the first user and completes the task
- List <Task> taskList = taskService.findPersonalTasks("firstUser");
- assertEquals(1, taskList.size());
- Task task = taskList.get(0);
- taskService.completeTask(task.getId());
+ // Gets the tasks auto-assigned for the second user and completes the task
+ taskList = taskService.findPersonalTasks("secondUser");
+ assertEquals(1, taskList.size());
+ task = taskList.get(0);
+ taskService.completeTask(task.getId());
- // Gets the tasks auto-assigned for the second user and completes the task
- taskList = taskService.findPersonalTasks("secondUser");
- assertEquals(1, taskList.size());
- task = taskList.get(0);
- taskService.completeTask(task.getId());
+ // Gets the tasks auto-assigned for the second user and completes the task
+ taskList = taskService.findPersonalTasks("thirdUser");
+ assertEquals(1, taskList.size());
+ task = taskList.get(0);
+ taskService.completeTask(task.getId());
- // Gets the tasks auto-assigned for the second user and completes the task
- taskList = taskService.findPersonalTasks("thirdUser");
- assertEquals(1, taskList.size());
- task = taskList.get(0);
- taskService.completeTask(task.getId());
+ // Tries to load the instance and checks if it was finished
+ processInstance = executionService.findProcessInstanceById(pid);
+ assertNull(processInstance);
+ }
- // Tries to load the instance and checks if it was finished
- processInstance = executionService.findProcessInstanceById(pid);
- assertNull(processInstance);
- }
+ /** Auto assignment class. */
+ public static class AutoAssignment implements AssignmentHandler {
- /**
- * Auto assignment class.
- */
- public static class AutoAssignment implements AssignmentHandler {
+ private static final long serialVersionUID = 9063679883107908899L;
- /** Serial version ID. */
- private static final long serialVersionUID = 9063679883107908899L;
+ /** Auto-claim the task to the default user. */
+ public void assign(Assignable assignable, OpenExecution execution) throws Exception {
+ // retrieve the participations
+ Task task = (Task) assignable;
+ List<Participation> participations = taskService.getTaskParticipations(task.getId());
- /**
- * Auto-claim the task to the default user.
- * @param assignable assignable object
- * @param execution execution object
- * @throws Exception exception
- */
- public void assign(Assignable assignable, OpenExecution execution) throws Exception {
-
- // Default users (group --> user mapping)
- Map <String, String> defaultUsers = new HashMap <String, String>();
- defaultUsers.put("firstGroup", "firstUser");
- defaultUsers.put("secondGroup", "secondUser");
- defaultUsers.put("thirdGroup", "thirdUser");
-
- // Engine and task service
- TaskService taskService = EnvironmentImpl.getFromCurrent(TaskService.class);
-
- // Loads the active activities
- Set <String> activities = execution.findActiveActivityNames();
-
- // Iterates the activities
- for (String activity : activities) {
-
- // Loads the tasks according to the process instance and activity name
- List <Task> tasks =
- taskService.createTaskQuery().activityName(activity).processInstanceId(
- execution.getProcessInstance().getId()).list();
-
- // Iterates the tasks
- for (Task task : tasks) {
-
- // Compares the task name to the activity name
- // If the task name matches the activity name, loads the candidate-group and assigns the default user
- if (task.getName().equals(activity)) {
-
- // Loads the tasks candidate groups (in our process we have just one group)
- List <Participation> groups = taskService.getTaskParticipations(task.getId());
-
- // If the groups collection is not empty, loads the default user and sets in the task
- if (!groups.isEmpty()) {
- assignable.setAssignee(defaultUsers.get(groups.get(0).getGroupId()));
- }
- }
- }
- }
- }
+ // If the participations list is not empty, assign task to default user
+ if (!participations.isEmpty()) {
+ String groupId = participations.get(0).getGroupId();
+ assignable.setAssignee(groupId.substring(0, groupId.indexOf("Group")) + "User");
+ }
}
+ }
}
13 years, 10 months
JBoss JBPM SVN: r6425 - jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/task.
by do-not-reply@jboss.org
Author: rebody
Date: 2010-06-19 03:26:54 -0400 (Sat, 19 Jun 2010)
New Revision: 6425
Modified:
jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/task/AssignmentHandlerTest.java
Log:
JBPM-2758 don't re-build process engine in AutoAssignmentHandler. This could prevent the different session error.
Modified: jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/task/AssignmentHandlerTest.java
===================================================================
--- jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/task/AssignmentHandlerTest.java 2010-06-18 01:27:36 UTC (rev 6424)
+++ jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/task/AssignmentHandlerTest.java 2010-06-19 07:26:54 UTC (rev 6425)
@@ -1,10 +1,10 @@
package org.jbpm.test.task;
-
+
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
-
+
import org.jbpm.api.Configuration;
import org.jbpm.api.ProcessEngine;
import org.jbpm.api.ProcessInstance;
@@ -14,20 +14,21 @@
import org.jbpm.api.task.AssignmentHandler;
import org.jbpm.api.task.Participation;
import org.jbpm.api.task.Task;
+import org.jbpm.pvm.internal.env.EnvironmentImpl;
import org.jbpm.test.JbpmTestCase;
-
+
public class AssignmentHandlerTest extends JbpmTestCase {
-
+
/** Deployment id. */
String deploymentId;
-
+
/**
* Set up.
* @throws Exception exception
*/
protected void setUp() throws Exception {
super.setUp();
-
+
// XML definition
StringBuilder jpdl = new StringBuilder();
jpdl.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
@@ -56,13 +57,13 @@
jpdl.append(" <transition g=\"-44,-18\" name=\"to task3\" to=\"task3\"/>");
jpdl.append(" </join>");
jpdl.append("</process>");
-
+
// Deploys the process
- deploymentId =
- repositoryService.createDeployment().addResourceFromString("testProcess.jpdl.xml", jpdl.toString())
- .deploy();
+ deploymentId = repositoryService.createDeployment()
+ .addResourceFromString("testProcess.jpdl.xml", jpdl.toString())
+ .deploy();
}
-
+
/**
* Tear down.
* @throws Exception exception
@@ -71,47 +72,47 @@
repositoryService.deleteDeploymentCascade(deploymentId);
super.tearDown();
}
-
+
/**
* Tests the process.
*/
public void testProcess() {
-
+
// Starts a new process instance and gets the instance id
ProcessInstance processInstance = executionService.startProcessInstanceByKey("testProcess");
String pid = processInstance.getId();
-
+
// Gets the tasks auto-assigned for the first user and completes the task
- List < Task > taskList = taskService.findPersonalTasks("firstUser");
+ List <Task> taskList = taskService.findPersonalTasks("firstUser");
assertEquals(1, taskList.size());
Task task = taskList.get(0);
taskService.completeTask(task.getId());
-
+
// Gets the tasks auto-assigned for the second user and completes the task
taskList = taskService.findPersonalTasks("secondUser");
assertEquals(1, taskList.size());
task = taskList.get(0);
taskService.completeTask(task.getId());
-
+
// Gets the tasks auto-assigned for the second user and completes the task
taskList = taskService.findPersonalTasks("thirdUser");
assertEquals(1, taskList.size());
task = taskList.get(0);
taskService.completeTask(task.getId());
-
+
// Tries to load the instance and checks if it was finished
processInstance = executionService.findProcessInstanceById(pid);
assertNull(processInstance);
}
-
+
/**
* Auto assignment class.
*/
public static class AutoAssignment implements AssignmentHandler {
-
+
/** Serial version ID. */
private static final long serialVersionUID = 9063679883107908899L;
-
+
/**
* Auto-claim the task to the default user.
* @param assignable assignable object
@@ -119,38 +120,37 @@
* @throws Exception exception
*/
public void assign(Assignable assignable, OpenExecution execution) throws Exception {
-
+
// Default users (group --> user mapping)
- Map < String, String > defaultUsers = new HashMap < String, String >();
+ Map <String, String> defaultUsers = new HashMap <String, String>();
defaultUsers.put("firstGroup", "firstUser");
defaultUsers.put("secondGroup", "secondUser");
defaultUsers.put("thirdGroup", "thirdUser");
-
+
// Engine and task service
- ProcessEngine processEngine = new Configuration().buildProcessEngine();
- TaskService taskService = processEngine.getTaskService();
-
+ TaskService taskService = EnvironmentImpl.getFromCurrent(TaskService.class);
+
// Loads the active activities
- Set < String > activities = execution.findActiveActivityNames();
-
+ Set <String> activities = execution.findActiveActivityNames();
+
// Iterates the activities
for (String activity : activities) {
-
+
// Loads the tasks according to the process instance and activity name
- List < Task > tasks =
+ List <Task> tasks =
taskService.createTaskQuery().activityName(activity).processInstanceId(
execution.getProcessInstance().getId()).list();
-
+
// Iterates the tasks
for (Task task : tasks) {
-
+
// Compares the task name to the activity name
// If the task name matches the activity name, loads the candidate-group and assigns the default user
if (task.getName().equals(activity)) {
-
+
// Loads the tasks candidate groups (in our process we have just one group)
- List < Participation > groups = taskService.getTaskParticipations(task.getId());
-
+ List <Participation> groups = taskService.getTaskParticipations(task.getId());
+
// If the groups collection is not empty, loads the default user and sets in the task
if (!groups.isEmpty()) {
assignable.setAssignee(defaultUsers.get(groups.get(0).getGroupId()));
13 years, 10 months
JBoss JBPM SVN: r6424 - in jbpm4/trunk: modules/api/src/main/java/org/jbpm/api and 43 other directories.
by do-not-reply@jboss.org
Author: alex.guizar(a)jboss.com
Date: 2010-06-17 21:27:36 -0400 (Thu, 17 Jun 2010)
New Revision: 6424
Modified:
jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/Execution.java
jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/HistoryService.java
jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/cmd/VoidCommand.java
jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/job/Job.java
jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/Activity.java
jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/OpenExecution.java
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/AbstractMergingGatewayActivity.java
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/EndActivity.java
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/UserTaskActivity.java
jbpm4/trunk/modules/distro/pom.xml
jbpm4/trunk/modules/distro/src/main/files/install/build.xml
jbpm4/trunk/modules/enterprise/pom.xml
jbpm4/trunk/modules/examples/pom.xml
jbpm4/trunk/modules/integration/console/src/main/java/org/jbpm/integration/console/ModelAdaptor.java
jbpm4/trunk/modules/integration/console/src/main/java/org/jbpm/integration/console/ProcessManagementImpl.java
jbpm4/trunk/modules/integration/form-plugin/pom.xml
jbpm4/trunk/modules/jpdl/pom.xml
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/EndActivity.java
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/GroupActivity.java
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/SubProcessActivity.java
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/TaskActivity.java
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/xml/UnresolvedTransition.java
jbpm4/trunk/modules/log/pom.xml
jbpm4/trunk/modules/migration/pom.xml
jbpm4/trunk/modules/pvm/pom.xml
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/ant/AntHelper.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/builder/FlowBuilder.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/builder/ProcessDefinitionBuilder.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/DeleteCommentCmd.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/DeleteTaskCmd.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/ExecuteJobCmd.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/GetActivityCoordinatesCmd.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/GetHistoryVariablesCmd.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/GetOutcomes.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/NewTaskCmd.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/ResumeDeploymentCmd.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/SaveTaskCmd.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/StartProcessInstanceCmd.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/StartProcessInstanceInLatestCmd.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/SuspendDeploymentCmd.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/el/UelMethodExpression.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/hibernate/ExecutionType.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/history/events/ActivityStart.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/history/events/ProcessInstanceMigration.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/history/events/TaskAssign.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/history/events/TaskDelete.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/history/events/VariableCreate.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/identity/impl/IdentitySessionResource.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/identity/impl/JBossIdmIdentitySessionImpl.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/identity/impl/JbpmIdentityStore.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/jobexecutor/JobExceptionHandler.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/migration/InstanceMigrator.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ActivityImpl.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/CompositeElement.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/CompositeElementImpl.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/op/ExecuteEventListener.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/op/ExecuteEventListenerMessage.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/query/AbstractQuery.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/query/AvgDurationPerActivityQueryCmd.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/query/ChoiceDistributionQueryCmd.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/svc/HistoryServiceImpl.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/svc/Interceptor.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/task/LifeCycleParser.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/task/SwimlaneImpl.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/tx/SpringTransactionInterceptor.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/binding/EnvironmentInterceptorBinding.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/binding/InvokeBinding.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/binding/ProcessEngineRefBinding.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/binding/SubscribeBinding.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/descriptor/JbossIdmIdentitySessionDescriptor.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/descriptor/JbossIdmIdentitySessionFactoryDescriptor.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/xml/DomBuilder.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/xml/Parser.java
jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/builder/BuilderTest.java
jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/internal/wire/BasicTypeWireTest.java
jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/internal/wire/ContextBlockSubscriptionTest.java
jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/internal/wire/DelayedInitTest.java
jbpm4/trunk/modules/test-base/pom.xml
jbpm4/trunk/modules/test-base/src/main/java/org/jbpm/test/Db.java
jbpm4/trunk/modules/test-db/pom.xml
jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/history/AvgDurationTest.java
jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/history/ChoiceDistributionTest.java
jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/variables/HistoryVariableTest.java
jbpm4/trunk/modules/test-load/src/test/java/org/jbpm/test/load/async/ExclusiveMessagesTest.java
jbpm4/trunk/modules/test-pojo/src/main/java/org/jbpm/test/activities/ScopeVariableDeclarationTest.java
jbpm4/trunk/pom.xml
Log:
JBPM-2893: trim distro by properly scoping dependencies
upgrade to picketlink 1.1.1
remove unnecessary casts
Modified: jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/Execution.java
===================================================================
--- jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/Execution.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/Execution.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -204,7 +204,7 @@
* have the same name, the first one is taken. Can be null or can be an empty
* map. The first execution without a name is also included with null as the key.
*/
- Map<String, Execution> getExecutionsMap();
+ Map<String, ? extends Execution> getExecutionsMap();
/** the child execution for the given name or null in case such execution doesn't exist. */
Execution getExecution(String name);
Modified: jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/HistoryService.java
===================================================================
--- jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/HistoryService.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/HistoryService.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -51,10 +51,10 @@
HistoryDetailQuery createHistoryDetailQuery();
/** returns the average duration in milliseconds for each activity in the given process definition */
- Map<String, Long> avgDurationPerActivity(String processDefinitionId);
+ Map<String, Number> avgDurationPerActivity(String processDefinitionId);
/** returns for each transitionName, the number of times that transition was taken */
- Map<String, Integer> choiceDistribution(String processDefinitionId, String activityName);
+ Map<String, Number> choiceDistribution(String processDefinitionId, String activityName);
/** retrieves a variable */
Set<String> getVariableNames(String processInstanceId);
@@ -63,5 +63,5 @@
Object getVariable(String processInstanceId, String variableName);
/** all the variables visible in the given history execution scope */
- Map<String, Object> getVariables(String processInstanceId, Set<String> variableNames);
+ Map<String, ?> getVariables(String processInstanceId, Set<String> variableNames);
}
Modified: jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/cmd/VoidCommand.java
===================================================================
--- jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/cmd/VoidCommand.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/cmd/VoidCommand.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -28,11 +28,13 @@
*/
public abstract class VoidCommand implements Command<Void> {
+ private static final long serialVersionUID = 1L;
+
public Void execute(Environment environment) throws Exception {
executeVoid(environment);
return null;
}
- public abstract void executeVoid(Environment environment);
+ public abstract void executeVoid(Environment environment) throws Exception;
}
Modified: jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/job/Job.java
===================================================================
--- jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/job/Job.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/job/Job.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -38,13 +38,12 @@
String getLockOwner();
/** in case this is a timer, it is the time that the timer should fire, in case this
- * is a message, it is null.
- * @deprecated */
- @Deprecated
+ * is a message, it is null. */
Date getDueDate();
/** in case this is a timer, it is the time that the timer should fire, in case this
* is a message, it is null. */
+ @Deprecated
Date getDuedate();
/** exception that occurred during the last execution of this job. The transaction
Modified: jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/Activity.java
===================================================================
--- jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/Activity.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/Activity.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -63,7 +63,7 @@
/** the list of outgoing transitions.
* Caution: the actual member is returned. No copy is made. */
- List<Transition> getOutgoingTransitions();
+ List<? extends Transition> getOutgoingTransitions();
/** the default outgoing transition. */
Transition getDefaultOutgoingTransition();
@@ -91,7 +91,7 @@
* Beware: the actual member is returned. No copy is made. In fact, the
* returned map is maintained as a cache. So updates to the map will
* influence subsequent retrievals of outgoing transitions by name. */
- Map<String, Transition> getOutgoingTransitionsMap();
+ Map<String, ? extends Transition> getOutgoingTransitionsMap();
/** searches for the given transitionName in this activity and then up the
* parent chain. Returns null if no such transition is found. */
@@ -99,7 +99,7 @@
/** the list of arriving transitions.
* Beware: the actual member is returned. No copy is made. */
- List<Transition> getIncomingTransitions();
+ List<? extends Transition> getIncomingTransitions();
/** indicates if this activity has arriving transitions */
boolean hasIncomingTransitions();
@@ -140,7 +140,7 @@
* Beware: the actual member is returned. No copy is made. In fact, the
* returned map is maintained as a cache. So updates to the map will
* influence subsequent retrievals of activities by name.*/
- Map<String, Activity> getActivitiesMap();
+ Map<String, ? extends Activity> getActivitiesMap();
/** the type of this activity which corresponds to the xml tag */
String getType();
Modified: jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/OpenExecution.java
===================================================================
--- jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/OpenExecution.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/OpenExecution.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -101,7 +101,7 @@
/** a non-null map containing all the key-value pairs in this scope.
* Even if there are no variable keys, an empty, non-null map will
* be returned. */
- Map<String, Object> getVariables();
+ Map<String, ?> getVariables();
/** create a new variable in this execution scope and determine
* the type automagically. */
Modified: jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/AbstractMergingGatewayActivity.java
===================================================================
--- jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/AbstractMergingGatewayActivity.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/AbstractMergingGatewayActivity.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -22,15 +22,15 @@
package org.jbpm.bpmn.flownodes;
import java.util.ArrayList;
+import java.util.Collection;
import java.util.List;
import org.hibernate.LockMode;
import org.hibernate.Session;
+
import org.jbpm.api.Execution;
-import org.jbpm.api.JbpmException;
import org.jbpm.api.activity.ActivityExecution;
import org.jbpm.api.model.Activity;
-import org.jbpm.api.model.Transition;
import org.jbpm.internal.log.Log;
import org.jbpm.pvm.internal.env.EnvironmentImpl;
import org.jbpm.pvm.internal.model.ExecutionImpl;
@@ -148,8 +148,8 @@
*/
protected List<ExecutionImpl> getJoinedExecutions(ExecutionImpl concurrentRoot, Activity activity) {
List<ExecutionImpl> joinedExecutions = new ArrayList<ExecutionImpl>();
- List<ExecutionImpl> concurrentExecutions = (List<ExecutionImpl>)concurrentRoot.getExecutions();
- for (ExecutionImpl concurrentExecution: (List<ExecutionImpl>)concurrentExecutions) {
+ Collection<ExecutionImpl> concurrentExecutions = concurrentRoot.getExecutions();
+ for (ExecutionImpl concurrentExecution: concurrentExecutions) {
if ( (Execution.STATE_INACTIVE_JOIN.equals(concurrentExecution.getState()))
&& (concurrentExecution.getActivity()==activity)
) {
Modified: jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/EndActivity.java
===================================================================
--- jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/EndActivity.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/EndActivity.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -48,13 +48,13 @@
public void execute(ExecutionImpl execution) {
Activity activity = execution.getActivity();
- List<Transition> outgoingTransitions = activity.getOutgoingTransitions();
+ List<? extends Transition> outgoingTransitions = activity.getOutgoingTransitions();
ActivityImpl parentActivity = (ActivityImpl) activity.getParentActivity();
- if ( (parentActivity != null) && ("subProcess".equals(parentActivity.getType())) ) {
+ if (parentActivity != null && "subProcess".equals(parentActivity.getType())) {
// if the end activity itself has an outgoing transition
// (such end activities should be drawn on the border of the group)
- if ( (outgoingTransitions != null) && (outgoingTransitions.size() == 1) ) {
+ if (outgoingTransitions != null && outgoingTransitions.size() == 1) {
Transition outgoingTransition = outgoingTransitions.get(0);
// taking the transition that goes over the group boundaries will
// destroy the scope automatically (see atomic operation TakeTransition)
Modified: jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/UserTaskActivity.java
===================================================================
--- jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/UserTaskActivity.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/UserTaskActivity.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -24,7 +24,6 @@
import java.util.Map;
import org.jbpm.api.activity.ActivityExecution;
-import org.jbpm.internal.log.Log;
import org.jbpm.pvm.internal.el.Expression;
import org.jbpm.pvm.internal.env.EnvironmentImpl;
import org.jbpm.pvm.internal.history.HistoryEvent;
@@ -42,8 +41,6 @@
private static final long serialVersionUID = 1L;
- private static final Log LOG = Log.getLog(UserTaskActivity.class.getName());
-
protected TaskDefinitionImpl taskDefinition;
public void execute(ActivityExecution execution) {
@@ -52,7 +49,7 @@
public void execute(ExecutionImpl execution) {
DbSession dbSession = EnvironmentImpl.getFromCurrent(DbSession.class);
- TaskImpl task = (TaskImpl) dbSession.createTask();
+ TaskImpl task = dbSession.createTask();
task.setTaskDefinition(taskDefinition);
task.setExecution(execution);
task.setProcessInstance(execution.getProcessInstance());
@@ -103,7 +100,7 @@
execution.fire(signalName, activity);
DbSession taskDbSession = EnvironmentImpl.getFromCurrent(DbSession.class);
- TaskImpl task = (TaskImpl) taskDbSession.findTaskByExecution(execution);
+ TaskImpl task = taskDbSession.findTaskByExecution(execution);
if (task!=null) {
task.setSignalling(false);
}
Modified: jbpm4/trunk/modules/distro/pom.xml
===================================================================
--- jbpm4/trunk/modules/distro/pom.xml 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/distro/pom.xml 2010-06-18 01:27:36 UTC (rev 6424)
@@ -1,15 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- ====================================================================== -->
+<!-- jBPM: Workflow in Java -->
<!-- -->
-<!-- JBoss, the OpenSource J2EE webOS -->
-<!-- -->
<!-- Distributable under LGPL license. -->
<!-- See terms of license at http://www.gnu.org. -->
-<!-- -->
<!-- ====================================================================== -->
<!-- $Id$ -->
+
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
@@ -27,7 +26,6 @@
<relativePath>../../pom.xml</relativePath>
</parent>
-
<!-- Dependencies -->
<dependencies>
<dependency>
@@ -135,30 +133,14 @@
<artifactId>gwt-console-rpc</artifactId>
<scope>provided</scope>
</dependency>
-
- <dependency>
- <groupId>org.jboss.identity.idm</groupId>
- <artifactId>idm-core</artifactId>
- </dependency>
- <dependency>
- <groupId>org.jboss.identity.idm</groupId>
- <artifactId>idm-hibernate</artifactId>
- </dependency>
<!-- Signavio -->
-
<dependency>
<groupId>org.jbpm.jbpm4.dependencies.signavio</groupId>
<artifactId>jbpmeditor</artifactId>
<type>war</type>
</dependency>
- <!-- Please sort by groupid -->
- <dependency>
- <groupId>org.apache.ant</groupId>
- <artifactId>ant</artifactId>
- </dependency>
-
<!-- Database Drivers -->
<dependency>
<groupId>mysql</groupId>
@@ -168,22 +150,15 @@
<groupId>postgresql</groupId>
<artifactId>postgresql</artifactId>
</dependency>
- <dependency>
- <groupId>net.sourceforge.jtds</groupId>
- <artifactId>jtds</artifactId>
- </dependency>
</dependencies>
<!-- Plugins -->
<build>
<finalName>jbpm-${project.version}</finalName>
<plugins>
-
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
- <version>2.2-beta-3</version>
<executions>
-
<execution>
<id>create-jbpm-single-jar</id>
<phase>process-resources</phase>
@@ -215,7 +190,6 @@
</descriptors>
</configuration>
</execution>
-
</executions>
</plugin>
@@ -249,7 +223,6 @@
</execution>
</executions>
</plugin>
-
</plugins>
</build>
@@ -259,5 +232,4 @@
<url>http://www.qa.jboss.com/jdbc-drivers/maven2</url>
</repository>
</repositories>
-
</project>
Modified: jbpm4/trunk/modules/distro/src/main/files/install/build.xml
===================================================================
--- jbpm4/trunk/modules/distro/src/main/files/install/build.xml 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/distro/src/main/files/install/build.xml 2010-06-18 01:27:36 UTC (rev 6424)
@@ -247,14 +247,13 @@
<include name="antlr.jar" />
<include name="antlr-runtime.jar" />
<include name="commons-collections.jar" />
- <!-- include name="core.jar" /-->
<include name="dom4j.jar" />
<include name="drools-api.jar" />
<include name="drools-core.jar" />
<include name="drools-compiler.jar" />
<include name="freemarker.jar" />
<include name="hibernate-core.jar" />
- <include name="hibernate-cglib-repack.jar" />
+ <include name="cglib.jar" />
<include name="janino.jar" />
<include name="javassist.jar" />
<include name="jta.jar" />
Modified: jbpm4/trunk/modules/enterprise/pom.xml
===================================================================
--- jbpm4/trunk/modules/enterprise/pom.xml 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/enterprise/pom.xml 2010-06-18 01:27:36 UTC (rev 6424)
@@ -1,12 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- ====================================================================== -->
+<!-- jBPM: Workflow in Java -->
<!-- -->
-<!-- JBoss, the OpenSource J2EE webOS -->
-<!-- -->
<!-- Distributable under LGPL license. -->
<!-- See terms of license at http://www.gnu.org. -->
-<!-- -->
<!-- ====================================================================== -->
<!-- $Id$ -->
@@ -42,6 +40,7 @@
<groupId>org.jbpm.jbpm4</groupId>
<artifactId>jbpm-test-base</artifactId>
</dependency>
+
<dependency>
<groupId>jboss</groupId>
<artifactId>jboss-j2ee</artifactId>
@@ -50,11 +49,12 @@
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
+ <scope>provided</scope>
</dependency>
-
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
+ <scope>provided</scope>
</dependency>
<dependency>
@@ -62,7 +62,6 @@
<artifactId>cactus.core</artifactId>
<scope>test</scope>
</dependency>
-
</dependencies>
<!-- Plugins -->
Modified: jbpm4/trunk/modules/examples/pom.xml
===================================================================
--- jbpm4/trunk/modules/examples/pom.xml 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/examples/pom.xml 2010-06-18 01:27:36 UTC (rev 6424)
@@ -1,17 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- ====================================================================== -->
+<!-- jBPM: Workflow in Java -->
<!-- -->
-<!-- JBoss, the OpenSource J2EE webOS -->
-<!-- -->
<!-- Distributable under LGPL license. -->
<!-- See terms of license at http://www.gnu.org. -->
-<!-- -->
<!-- ====================================================================== -->
<!-- $Id$ -->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
<!-- Module Info -->
<modelVersion>4.0.0</modelVersion>
<name>jBPM 4 - Examples</name>
@@ -29,7 +29,6 @@
<!-- Dependencies -->
<dependencies>
-
<dependency>
<groupId>org.jbpm.jbpm4</groupId>
<artifactId>jbpm-api</artifactId>
@@ -59,6 +58,7 @@
<dependency>
<groupId>org.drools</groupId>
<artifactId>drools-compiler</artifactId>
+ <scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.subethamail</groupId>
@@ -70,7 +70,7 @@
<scope>test</scope>
</dependency>
</dependencies>
-
+
<build>
<plugins>
<plugin>
@@ -87,7 +87,7 @@
<exclude>jbpm.*</exclude>
<exclude>logging.properties</exclude>
<exclude>META-INF/*</exclude>
- </excludes>
+ </excludes>
</configuration>
</execution>
</executions>
@@ -134,12 +134,12 @@
<property name="install.src.dir" value="../distro/src/main/files/install/src" />
<property name="jdbc.properties.dir" value="target/jdbc.properties" />
<property name="logging" value="none" /> <!-- then the original logging.properties in the resources of this project will be used -->
- </ant>
+ </ant>
</tasks>
</configuration>
</execution>
</executions>
- </plugin>
+ </plugin>
</plugins>
</build>
</profile>
@@ -170,7 +170,7 @@
<property name="install.src.dir" value="../distro/src/main/files/install/src" />
<property name="jdbc.properties.dir" value="../distro/src/main/files/install/jdbc" />
<property name="logging" value="none" />
- </ant>
+ </ant>
</tasks>
</configuration>
</execution>
@@ -179,7 +179,5 @@
</plugins>
</build>
</profile>
-
</profiles>
-
</project>
\ No newline at end of file
Modified: jbpm4/trunk/modules/integration/console/src/main/java/org/jbpm/integration/console/ModelAdaptor.java
===================================================================
--- jbpm4/trunk/modules/integration/console/src/main/java/org/jbpm/integration/console/ModelAdaptor.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/integration/console/src/main/java/org/jbpm/integration/console/ModelAdaptor.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -50,6 +50,7 @@
import org.jbpm.api.task.Participation;
import org.jbpm.api.task.Task;
import org.jbpm.pvm.internal.model.ExecutionImpl;
+import org.jbpm.pvm.internal.model.ProcessDefinitionImpl;
import org.jbpm.pvm.internal.task.TaskImpl;
/**
@@ -88,15 +89,16 @@
.uniqueResult().getStartTime();
ref.setStartDate(startDate);
- Execution topLevelExecution = execution.getProcessInstance();
- TokenReference tok = execution2TokenReference(topLevelExecution);
-
+ ExecutionImpl processInstance = (ExecutionImpl) execution.getProcessInstance();
+ ProcessDefinitionImpl processDefinition = processInstance.getProcessDefinition();
+ TokenReference tok = execution2TokenReference(processInstance);
- Collection<ExecutionImpl> childExecutions = (Collection) topLevelExecution.getExecutions();
+ Collection<? extends Execution> childExecutions = processInstance.getExecutions();
if (childExecutions != null) {
- for (ExecutionImpl childExecution : childExecutions) {
- // set process definition on child execution from topLevelExecution
- childExecution.setProcessDefinition(((ExecutionImpl)topLevelExecution).getProcessDefinition());
+ for (Execution child : childExecutions) {
+ ExecutionImpl childExecution = (ExecutionImpl) child;
+ // set process definition on child execution from process instance
+ childExecution.setProcessDefinition(processDefinition);
TokenReference childTok = execution2TokenReference(childExecution);
tok.getChildren().add(childTok);
@@ -104,11 +106,10 @@
}
ref.setRootToken(tok);
-
return ref;
}
- private static TokenReference execution2TokenReference(Execution execution) {
+ private static TokenReference execution2TokenReference(ExecutionImpl execution) {
String executionId = execution.getId();
TokenReference tok = new TokenReference();
@@ -116,7 +117,7 @@
tok.setId(executionId);
// mark execution as signalable if it is in wait state and it is active
- if (((ExecutionImpl) execution).isActive() && "state".equals(((ExecutionImpl) execution).getActivity().getType())) {
+ if (execution.isActive() && "state".equals(execution.getActivity().getType())) {
tok.setCanBeSignaled(true);
}
@@ -137,16 +138,16 @@
tok.setCurrentNodeName(executionId);
}
- if (((ExecutionImpl) execution).getActivity() !=null && "state".equals(((ExecutionImpl) execution).getActivity().getType())) {
+ if (execution.getActivity() !=null && "state".equals(execution.getActivity().getType())) {
// transitions
List<String> availableSignals = new ArrayList<String>();
// fetch outgoing transitions for state activity only, it is required to allow proper
// signaling to be made from console - it must send real signal name (outgoing transition)
// because there is not signal name check when signaling and if wrong name was given caller will not get any error
// and execution will remain in wait state
- ExecutionImpl openTopLevelExecution = (ExecutionImpl) execution;
+ ExecutionImpl openTopLevelExecution = execution;
- List<Transition> outTransitions = openTopLevelExecution.getActivity().getOutgoingTransitions();
+ List<? extends Transition> outTransitions = openTopLevelExecution.getActivity().getOutgoingTransitions();
if (outTransitions != null) {
for (Transition t : outTransitions) {
// if name is not given use 'default transition' as name to be consistent with ProcessFacade check
@@ -243,8 +244,8 @@
JobRef jobRef = new JobRef();
jobRef.setId(String.valueOf(job.getId()));
- if (job.getDuedate() != null) {
- jobRef.setTimestamp(job.getDuedate().getTime());
+ if (job.getDueDate() != null) {
+ jobRef.setTimestamp(job.getDueDate().getTime());
}
if (job.getException() != null) {
jobRef.setErrMsg(job.getException());
Modified: jbpm4/trunk/modules/integration/console/src/main/java/org/jbpm/integration/console/ProcessManagementImpl.java
===================================================================
--- jbpm4/trunk/modules/integration/console/src/main/java/org/jbpm/integration/console/ProcessManagementImpl.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/integration/console/src/main/java/org/jbpm/integration/console/ProcessManagementImpl.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -108,7 +108,7 @@
if (processInstance.getIsProcessInstance()) { // parent execution
((ExecutionImpl) processInstance).setProcessDefinition((ProcessDefinitionImpl) processDefinition);
- results.add(ModelAdaptor.adoptExecution((ExecutionImpl) processInstance));
+ results.add(ModelAdaptor.adoptExecution(processInstance));
}
}
return results;
@@ -119,7 +119,7 @@
ProcessInstance processInstance = execService.createProcessInstanceQuery()
.processInstanceId(instanceId)
.uniqueResult();
- return ModelAdaptor.adoptExecution((ExecutionImpl) processInstance);
+ return ModelAdaptor.adoptExecution(processInstance);
}
public Map<String, Object> getInstanceData(String instanceId) {
@@ -137,13 +137,13 @@
public ProcessInstanceRef newInstance(String definitionId) {
ExecutionService execService = this.processEngine.getExecutionService();
Execution exec = execService.startProcessInstanceById(definitionId);
- return ModelAdaptor.adoptExecution((ExecutionImpl) exec);
+ return ModelAdaptor.adoptExecution(exec);
}
public ProcessInstanceRef newInstance(String definitionId, Map<String, Object> processVars) {
ExecutionService execService = this.processEngine.getExecutionService();
Execution exec = execService.startProcessInstanceById(definitionId, processVars);
- return ModelAdaptor.adoptExecution((ExecutionImpl) exec);
+ return ModelAdaptor.adoptExecution(exec);
}
public void endInstance(String instanceId, ProcessInstanceRef.RESULT result) {
Modified: jbpm4/trunk/modules/integration/form-plugin/pom.xml
===================================================================
--- jbpm4/trunk/modules/integration/form-plugin/pom.xml 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/integration/form-plugin/pom.xml 2010-06-18 01:27:36 UTC (rev 6424)
@@ -1,5 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+<!-- ====================================================================== -->
+<!-- jBPM: Workflow in Java -->
+<!-- -->
+<!-- Distributable under LGPL license. -->
+<!-- See terms of license at http://www.gnu.org. -->
+<!-- ====================================================================== -->
+
+<!-- $Id$ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<name>jBPM 4 - Integration Form Plugin</name>
@@ -34,7 +45,13 @@
<artifactId>gwt-console-server-integration</artifactId>
<scope>provided</scope>
</dependency>
+
<dependency>
+ <groupId>javax.activation</groupId>
+ <artifactId>activation</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
</dependency>
Property changes on: jbpm4/trunk/modules/integration/form-plugin/pom.xml
___________________________________________________________________
Name: svn:keywords
+ Id
Modified: jbpm4/trunk/modules/jpdl/pom.xml
===================================================================
--- jbpm4/trunk/modules/jpdl/pom.xml 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/jpdl/pom.xml 2010-06-18 01:27:36 UTC (rev 6424)
@@ -1,18 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- ====================================================================== -->
+<!-- jBPM: Workflow in Java -->
<!-- -->
-<!-- JBoss, the OpenSource J2EE webOS -->
-<!-- -->
<!-- Distributable under LGPL license. -->
<!-- See terms of license at http://www.gnu.org. -->
-<!-- -->
<!-- ====================================================================== -->
<!-- $Id: pom.xml 1790 2008-07-31 12:13:06Z tom.baeyens(a)jboss.com $ -->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
@@ -46,17 +44,27 @@
<!-- 3rd Party -->
<dependency>
+ <groupId>org.drools</groupId>
+ <artifactId>drools-core</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
<dependency>
<groupId>javax.jms</groupId>
- <artifactId>jms</artifactId>
- <version>1.1</version>
+ <artifactId>jms</artifactId>
+ <version>1.1</version>
<scope>provided</scope>
- </dependency>
+ </dependency>
+ <dependency>
+ <groupId>javax.mail</groupId>
+ <artifactId>mail</artifactId>
+ <scope>provided</scope>
+ </dependency>
</dependencies>
-
+
<build>
<plugins>
<plugin>
@@ -72,8 +80,10 @@
<!-- Profiles -->
<profiles>
- <!-- skip tests if this is an integration test run
- (only examples and test-db are part of the integration test runs) -->
+ <!--
+ skip tests if this is an integration test run (only examples and test-db are part of the
+ integration test runs)
+ -->
<profile>
<id>skip.tests.during.database.testrun</id>
<activation>
Modified: jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/EndActivity.java
===================================================================
--- jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/EndActivity.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/EndActivity.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -25,12 +25,10 @@
import org.jbpm.api.activity.ActivityExecution;
import org.jbpm.api.model.Activity;
-import org.jbpm.api.model.OpenExecution;
import org.jbpm.api.model.Transition;
import org.jbpm.pvm.internal.model.ActivityImpl;
import org.jbpm.pvm.internal.model.ExecutionImpl;
-
/**
* @author Tom Baeyens
*/
@@ -47,7 +45,7 @@
public void execute(ExecutionImpl execution) {
Activity activity = execution.getActivity();
- List<Transition> outgoingTransitions = activity.getOutgoingTransitions();
+ List<? extends Transition> outgoingTransitions = activity.getOutgoingTransitions();
ActivityImpl parentActivity = (ActivityImpl) activity.getParentActivity();
if ( (parentActivity!=null)
Modified: jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/GroupActivity.java
===================================================================
--- jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/GroupActivity.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/GroupActivity.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -30,10 +30,8 @@
import org.jbpm.api.activity.ActivityExecution;
import org.jbpm.api.model.Activity;
import org.jbpm.api.model.Transition;
-import org.jbpm.pvm.internal.model.ActivityImpl;
import org.jbpm.pvm.internal.model.ExecutionImpl;
-
/**
* @author Tom Baeyens
*/
@@ -73,8 +71,8 @@
private List<Activity> findStartActivities(Activity activity) {
List<Activity> startActivities = new ArrayList<Activity>();
- List nestedActivities = activity.getActivities();
- for (ActivityImpl nestedActivity : (List<ActivityImpl>) nestedActivities) {
+ List<? extends Activity> nestedActivities = activity.getActivities();
+ for (Activity nestedActivity : nestedActivities) {
if ( (nestedActivity.getIncomingTransitions()==null)
|| (nestedActivity.getIncomingTransitions().isEmpty())
) {
@@ -91,7 +89,7 @@
public void signal(ExecutionImpl execution, String signalName, Map<String, ?> parameters) throws Exception {
Transition transition = null;
Activity activity = execution.getActivity();
- List<Transition> outgoingTransitions = activity.getOutgoingTransitions();
+ List<? extends Transition> outgoingTransitions = activity.getOutgoingTransitions();
int nbrOfOutgoingTransitions = (outgoingTransitions!=null ? outgoingTransitions.size() : 0);
if ( (signalName==null)
Modified: jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/SubProcessActivity.java
===================================================================
--- jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/SubProcessActivity.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/SubProcessActivity.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -35,11 +35,9 @@
import org.jbpm.pvm.internal.env.EnvironmentImpl;
import org.jbpm.pvm.internal.env.ExecutionContext;
import org.jbpm.pvm.internal.model.ExecutionImpl;
-import org.jbpm.pvm.internal.script.ScriptManager;
import org.jbpm.pvm.internal.session.RepositorySession;
import org.jbpm.pvm.internal.task.SwimlaneImpl;
-
/**
* @author Tom Baeyens
*/
@@ -114,10 +112,8 @@
}
public void signal(ExecutionImpl execution, String signalName, Map<String, ?> parameters) throws Exception {
- ExecutionImpl executionImpl = (ExecutionImpl) execution;
+ ExecutionImpl subProcessInstance = execution.getSubProcessInstance();
- ExecutionImpl subProcessInstance = executionImpl.getSubProcessInstance();
-
String transitionName = null;
ExecutionContext originalExecutionContext = null;
@@ -125,24 +121,24 @@
EnvironmentImpl environment = EnvironmentImpl.getCurrent();
if (environment!=null) {
originalExecutionContext = (ExecutionContext) environment.removeContext(Context.CONTEXTNAME_EXECUTION);
- subProcessExecutionContext = new ExecutionContext((ExecutionImpl) subProcessInstance);
+ subProcessExecutionContext = new ExecutionContext(subProcessInstance);
environment.setContext(subProcessExecutionContext);
}
try {
subProcessInstance.setSuperProcessExecution(null);
- executionImpl.setSubProcessInstance(null);
+ execution.setSubProcessInstance(null);
for (SubProcessOutParameterImpl outParameter: outParameters) {
- outParameter.consume(executionImpl, subProcessInstance);
+ outParameter.consume(execution, subProcessInstance);
}
Activity activity = execution.getActivity();
String subProcessActivityName = subProcessInstance.getActivityName();
if (outcomeExpression!=null) {
- Object value = outcomeExpression.evaluate(executionImpl);
+ Object value = outcomeExpression.evaluate(execution);
// if the value is a String and matches the name of an outgoing transition
if ( (value instanceof String)
&& (activity.hasOutgoingTransition(((String) value)))
@@ -167,7 +163,7 @@
}
}
- executionImpl.historyActivityEnd();
+ execution.historyActivityEnd();
if (transitionName!=null) {
execution.take(transitionName);
Modified: jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/TaskActivity.java
===================================================================
--- jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/TaskActivity.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/TaskActivity.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -133,7 +133,7 @@
}
Transition transition = null;
- List<Transition> outgoingTransitions = activity.getOutgoingTransitions();
+ List<? extends Transition> outgoingTransitions = activity.getOutgoingTransitions();
if (outgoingTransitions!=null && !outgoingTransitions.isEmpty()) {
// Lookup the outgoing transition
@@ -142,7 +142,7 @@
// When no specific outcome was specified, the unnamed transition
// is looked up (name is null). If a null outcome was specifically
// used, then the else clause will be used (but the result is the same)
- // Note: the second part of the if clause is to avoid the siutation
+ // Note: the second part of the if clause is to avoid the situation
// where the user would have chosen the same name as the constant
transition = activity.findOutgoingTransition(null);
}
@@ -155,7 +155,7 @@
if (transition==null) {
// no unnamed transition found
if (signalName == null) {
- // null was explicitely given as outcome
+ // null was explicitly given as outcome
throw new JbpmException("No unnamed transitions were found for the task '"
+ getTaskDefinition().getName() + "'");
}
Modified: jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/xml/UnresolvedTransition.java
===================================================================
--- jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/xml/UnresolvedTransition.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/xml/UnresolvedTransition.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -38,7 +38,7 @@
public void resolve(ProcessDefinitionImpl processDefinition, Parse parse) {
String to = XmlUtil.attribute(transitionElement, "to", parse);
if (to!=null) {
- ActivityImpl destination = (ActivityImpl) processDefinition.findActivity(to);
+ ActivityImpl destination = processDefinition.findActivity(to);
if (destination!=null) {
destination.addIncomingTransition(transition);
} else {
Modified: jbpm4/trunk/modules/log/pom.xml
===================================================================
--- jbpm4/trunk/modules/log/pom.xml 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/log/pom.xml 2010-06-18 01:27:36 UTC (rev 6424)
@@ -1,15 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- ====================================================================== -->
+<!-- jBPM: Workflow in Java -->
<!-- -->
-<!-- JBoss, the OpenSource J2EE webOS -->
-<!-- -->
<!-- Distributable under LGPL license. -->
<!-- See terms of license at http://www.gnu.org. -->
-<!-- -->
<!-- ====================================================================== -->
<!-- $Id$ -->
+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<!-- Module Info -->
@@ -32,6 +31,7 @@
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
+ <scope>provided</scope>
</dependency>
</dependencies>
Modified: jbpm4/trunk/modules/migration/pom.xml
===================================================================
--- jbpm4/trunk/modules/migration/pom.xml 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/migration/pom.xml 2010-06-18 01:27:36 UTC (rev 6424)
@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- ====================================================================== -->
+<!-- jBPM: Workflow in Java -->
<!-- -->
-<!-- JBoss, the OpenSource J2EE webOS -->
-<!-- -->
<!-- Distributable under LGPL license. -->
<!-- See terms of license at http://www.gnu.org. -->
-<!-- -->
<!-- ====================================================================== -->
+<!-- $Id$ -->
+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
@@ -37,20 +37,15 @@
<dependency>
<groupId>dom4j</groupId>
<artifactId>dom4j</artifactId>
+ <version>1.6.1</version>
<exclusions>
<exclusion>
<artifactId>xml-apis</artifactId>
<groupId>xml-apis</groupId>
</exclusion>
</exclusions>
- <version>1.6.1</version>
</dependency>
<dependency>
- <groupId>log4j</groupId>
- <artifactId>log4j</artifactId>
- <version>1.2.14</version>
- </dependency>
- <dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.1</version>
@@ -61,6 +56,11 @@
<version>4.4</version>
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>javax.mail</groupId>
+ <artifactId>mail</artifactId>
+ <scope>provided</scope>
+ </dependency>
</dependencies>
<!-- Profiles -->
@@ -86,7 +86,6 @@
<build>
<plugins>
<plugin>
- <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<finalName>jbpm-migration</finalName>
@@ -102,7 +101,6 @@
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
- <!--version>2.2-beta-3</version-->
<executions>
<execution>
<id>distribution-package</id>
Property changes on: jbpm4/trunk/modules/migration/pom.xml
___________________________________________________________________
Name: svn:keywords
+ Id
Modified: jbpm4/trunk/modules/pvm/pom.xml
===================================================================
--- jbpm4/trunk/modules/pvm/pom.xml 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/pom.xml 2010-06-18 01:27:36 UTC (rev 6424)
@@ -1,12 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- ====================================================================== -->
+<!-- jBPM: Workflow in Java -->
<!-- -->
-<!-- JBoss, the OpenSource J2EE webOS -->
-<!-- -->
<!-- Distributable under LGPL license. -->
<!-- See terms of license at http://www.gnu.org. -->
-<!-- -->
<!-- ====================================================================== -->
<!-- $Id$ -->
@@ -46,10 +44,12 @@
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant</artifactId>
+ <scope>provided</scope>
</dependency>
<dependency>
<groupId>org.beanshell</groupId>
<artifactId>bsh</artifactId>
+ <scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.enterprise</groupId>
@@ -59,20 +59,28 @@
<dependency>
<groupId>org.drools</groupId>
<artifactId>drools-core</artifactId>
+ <scope>provided</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
+ <scope>provided</scope>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
- <scope>provided</scope>
+ <exclusions>
+ <exclusion>
+ <artifactId>xml-apis</artifactId>
+ <groupId>xml-apis</groupId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>3.4.0.GA</version>
+ <scope>provided</scope>
</dependency>
<dependency>
<groupId>hsqldb</groupId>
@@ -80,55 +88,19 @@
<scope>test</scope>
</dependency>
<dependency>
- <groupId>org.jboss.identity.idm</groupId>
- <artifactId>idm-core</artifactId>
+ <groupId>javassist</groupId>
+ <artifactId>javassist</artifactId>
+ <version>3.4.GA</version>
+ <scope>runtime</scope>
</dependency>
<dependency>
- <groupId>org.jboss.identity.idm</groupId>
- <artifactId>idm-hibernate</artifactId>
- <exclusions>
- <exclusion>
- <groupId>javax.persistence</groupId>
- <artifactId>persistence-api</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.hibernate</groupId>
- <artifactId>hibernate-annotations</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.hibernate</groupId>
- <artifactId>hibernate-commons-annotations</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.hibernate</groupId>
- <artifactId>ejb3-persistence</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.hibernate</groupId>
- <artifactId>hibernate-entitymanager</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.jboss.cache</groupId>
- <artifactId>jbosscache-core</artifactId>
- </exclusion>
- <exclusion>
- <groupId>com.sun.xml.bind</groupId>
- <artifactId>jaxb-impl</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-log4j12</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
<groupId>jboss</groupId>
<artifactId>jboss-j2ee</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
- <groupId>juel</groupId>
- <artifactId>juel-api</artifactId>
+ <groupId>juel</groupId>
+ <artifactId>juel-api</artifactId>
</dependency>
<dependency>
<groupId>juel</groupId>
@@ -143,24 +115,44 @@
<artifactId>livetribe-jsr223</artifactId>
</dependency>
<dependency>
- <groupId>log4j</groupId>
- <artifactId>log4j</artifactId>
- </dependency>
- <dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
+ <scope>provided</scope>
</dependency>
<dependency>
+ <groupId>org.picketlink.idm</groupId>
+ <artifactId>picketlink-idm-core</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.picketlink.idm</groupId>
+ <artifactId>picketlink-idm-hibernate</artifactId>
+ <scope>provided</scope>
+ <exclusions>
+ <exclusion>
+ <artifactId>hibernate-cglib-repack</artifactId>
+ <groupId>org.hibernate</groupId>
+ </exclusion>
+ <exclusion>
+ <artifactId>slf4j-log4j12</artifactId>
+ <groupId>org.slf4j</groupId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<scope>provided</scope>
- </dependency><dependency>
+ </dependency>
+ <dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
+ <scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-jdk14</artifactId>
+ <scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
@@ -211,8 +203,10 @@
</reporting>
</profile>
- <!-- skip tests if this is an integration test run
- (only examples and test-db are part of the integration test runs) -->
+ <!--
+ skip tests if this is an integration test run (only examples and test-db are part of the
+ integration test runs)
+ -->
<profile>
<id>skip.tests.during.database.testrun</id>
<activation>
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/ant/AntHelper.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/ant/AntHelper.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/ant/AntHelper.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -28,7 +28,6 @@
import org.apache.commons.logging.LogFactory;
import org.jbpm.api.Configuration;
import org.jbpm.api.ProcessEngine;
-import org.jbpm.pvm.internal.processengine.ProcessEngineImpl;
/**
* common strategy for jbpm ant tasks to obtain a hibernate SessionFactory.
@@ -40,7 +39,7 @@
private static final Log log = LogFactory.getLog(AntHelper.class);
public static ProcessEngine getProcessEngine(String jbpmCfgXml) {
- ProcessEngine processEngine = (ProcessEngineImpl) processEngines.get(jbpmCfgXml);
+ ProcessEngine processEngine = processEngines.get(jbpmCfgXml);
if (processEngine == null) {
Configuration configuration = new Configuration();
if (jbpmCfgXml!=null) {
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/builder/FlowBuilder.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/builder/FlowBuilder.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/builder/FlowBuilder.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -79,6 +79,6 @@
}
public ActivityBuilder endFlow() {
- return (ActivityBuilder) activityBuilder;
+ return activityBuilder;
}
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/builder/ProcessDefinitionBuilder.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/builder/ProcessDefinitionBuilder.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/builder/ProcessDefinitionBuilder.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -21,7 +21,6 @@
*/
package org.jbpm.pvm.internal.builder;
-import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
@@ -71,7 +70,7 @@
protected void resolveFlows() {
for (UnresolvedFlow unresolvedFlow: unresolvedFlows) {
- ActivityImpl destination = (ActivityImpl) processDefinition.findActivity(unresolvedFlow.destinationName);
+ ActivityImpl destination = processDefinition.findActivity(unresolvedFlow.destinationName);
if (destination==null) {
errorUnexistingFlowDestination(unresolvedFlow);
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/DeleteCommentCmd.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/DeleteCommentCmd.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/DeleteCommentCmd.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -45,7 +45,7 @@
public Object execute(Environment environment) throws Exception {
DbSession dbSession = environment.get(DbSession.class);
- HistoryDetailImpl comment = (HistoryDetailImpl) dbSession.get(HistoryDetailImpl.class, Long.parseLong(commentId));
+ HistoryDetailImpl comment = dbSession.get(HistoryDetailImpl.class, Long.parseLong(commentId));
if (comment!=null) {
dbSession.delete(comment);
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/DeleteTaskCmd.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/DeleteTaskCmd.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/DeleteTaskCmd.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -55,12 +55,12 @@
public Void execute(Environment environment) throws Exception {
DbSession dbSession = environment.get(DbSession.class);
- TaskImpl task = (TaskImpl) dbSession.get(TaskImpl.class, taskDbid);
+ TaskImpl task = dbSession.get(TaskImpl.class, taskDbid);
if (task!=null) {
task.delete(reason);
dbSession.delete(task);
if (deleteHistory) {
- HistoryTaskImpl historyTask = (HistoryTaskImpl) dbSession.get(HistoryTaskImpl.class, taskDbid);
+ HistoryTaskImpl historyTask = dbSession.get(HistoryTaskImpl.class, taskDbid);
if (historyTask!=null) {
dbSession.delete(historyTask);
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/ExecuteJobCmd.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/ExecuteJobCmd.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/ExecuteJobCmd.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -64,7 +64,7 @@
if (dbSession==null) {
throw new JbpmException("no db-session configured");
}
- JobImpl<?> job = (JobImpl<?>) dbSession.get(JobImpl.class, jobDbid);
+ JobImpl<?> job = dbSession.get(JobImpl.class, jobDbid);
// in case of decision jobs, the job might have been deleted
// before we execute it (they are in a list)
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/GetActivityCoordinatesCmd.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/GetActivityCoordinatesCmd.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/GetActivityCoordinatesCmd.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -47,7 +47,7 @@
public ActivityCoordinates execute(Environment environment) throws Exception {
RepositorySession repositorySession = environment.get(RepositorySession.class);
- ProcessDefinitionImpl processDefinition = (ProcessDefinitionImpl) repositorySession.findProcessDefinitionById(processDefinitionId);
+ ProcessDefinitionImpl processDefinition = repositorySession.findProcessDefinitionById(processDefinitionId);
if (processDefinition==null) {
throw new JbpmException("process definition "+processDefinitionId+" doesn't exist");
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/GetHistoryVariablesCmd.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/GetHistoryVariablesCmd.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/GetHistoryVariablesCmd.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -22,63 +22,53 @@
package org.jbpm.pvm.internal.cmd;
import java.util.HashMap;
-import java.util.Iterator;
import java.util.Map;
import java.util.Set;
import org.jbpm.api.JbpmException;
import org.jbpm.api.cmd.Environment;
-import org.jbpm.api.history.HistoryProcessInstance;
import org.jbpm.pvm.internal.history.model.HistoryProcessInstanceImpl;
import org.jbpm.pvm.internal.history.model.HistoryVariableImpl;
-import org.jbpm.pvm.internal.query.HistoryProcessInstanceQueryImpl;
+import org.jbpm.pvm.internal.session.DbSession;
/**
- *
* @author Maciej Swiderski
- *
*/
-public class GetHistoryVariablesCmd extends AbstractCommand<Map<String, Object>> {
-
+public class GetHistoryVariablesCmd extends AbstractCommand<Map<String, ?>> {
+
private static final long serialVersionUID = 1L;
-
+
protected String processInstanceId;
protected Set<String> variableNames;
-
-
+
public GetHistoryVariablesCmd(String processInstanceId, Set<String> variableNames) {
- super()!
;
- this.processInstanceId = processInstanceId;
- if (processInstanceId==null) {
+ if (processInstanceId == null) {
throw new JbpmException("processInstanceId is null");
}
- if (variableNames==null) {
+ if (variableNames == null) {
throw new JbpmException("variableNames is null");
}
+ this.processInstanceId = processInstanceId;
this.variableNames = variableNames;
}
-
- public Map<String, Object> execute(Environment environment) throws Exception {
- HistoryProcessInstanceQueryImpl queryImpl = new HistoryProcessInstanceQueryImpl();
-
- HistoryProcessInstance historyProcessInstance = queryImpl.processInstanceId(processInstanceId).uniqueResult();
- if (historyProcessInstance==null) {
- throw new JbpmException("process instance "+processInstanceId+" doesn't exist in history");
+ public Map<String, ?> execute(Environment environment) throws Exception {
+ HistoryProcessInstanceImpl historyProcessInstance = !
(HistoryProcessInstanceImpl) environment.get(DbSession.class)
!
+ .
createHistoryProcessInstanceQuery()
+ .processInstanceId(processInstanceId)
+ .uniqueResult();
+ if (historyProcessInstance == null) {
+ throw new JbpmException("process instance not found in history: " + processInstanceId);
}
- Iterator<HistoryVariableImpl> variables = ((HistoryProcessInstanceImpl) historyProcessInstance).getHistoryVariables().iterator();
-
+
Map<String, Object> variableMap = new HashMap<String, Object>();
-
- while (variables.hasNext()) {
- HistoryVariableImpl historyVariableImpl = (HistoryVariableImpl) variables.next();
-
- if (variableNames.contains(historyVariableImpl.getVariableName())) {
- variableMap.put(historyVariableImpl.getVariableName(), historyVariableImpl.getValue());
+ for (HistoryVariableImpl historyVariable : historyProcessInstance.getHistoryVariables()) {
+ if (variableNames.contains(historyVariable.getVariableName())) {
+ variableMap.put(historyVariable.getVar!
iableName(), historyVariable.getValue());
}
}
-
+
return variableMap;
}
-
+
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/GetOutcomes.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/GetOutcomes.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/GetOutcomes.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -21,6 +21,7 @@
*/
package org.jbpm.pvm.internal.cmd;
+import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
@@ -29,13 +30,11 @@
import org.jbpm.api.cmd.Command;
import org.jbpm.api.cmd.Environment;
import org.jbpm.api.model.Transition;
-import org.jbpm.api.task.Task;
import org.jbpm.pvm.internal.model.ActivityImpl;
import org.jbpm.pvm.internal.model.ExecutionImpl;
import org.jbpm.pvm.internal.session.DbSession;
import org.jbpm.pvm.internal.task.TaskImpl;
-
/**
* @author Tom Baeyens
*/
@@ -58,19 +57,24 @@
if (task==null) {
throw new JbpmException("task "+taskId+" doesn't exist");
}
-
- Set<String> outcomes = new HashSet<String>();
-
- ExecutionImpl execution = (task!=null ? task.getExecution() : null);
- ActivityImpl activity = (execution!=null ? execution.getActivity() : null);
- List<Transition> outgoingTransitions = (activity!=null ? activity.getOutgoingTransitions() : null);
- if (outgoingTransitions!=null) {
- for (Transition transition: outgoingTransitions) {
- outcomes.add(transition.getName());
+ ExecutionImpl execution = task.getExecution();
+ if (execution != null) {
+ ActivityImpl activity = execution.getActivity();
+
+ if (activity != null) {
+ List<? extends Transition> outgoingTransitions = activity.getOutgoingTransitions();
+
+ if (outgoingTransitions!=null && !outgoingTransitions.isEmpty()) {
+ Set<String> outcomes = new HashSet<String>();
+ for (Transition transition: outgoingTransitions) {
+ outcomes.add(transition.getName());
+ }
+ return outcomes;
+ }
}
- }
-
- return outcomes;
+ }
+
+ return Collections.emptySet();
}
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/NewTaskCmd.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/NewTaskCmd.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/NewTaskCmd.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -43,7 +43,7 @@
public Task execute(Environment environment) throws Exception {
DbSession dbSession = environment.get(DbSession.class);
- TaskImpl task = (TaskImpl) dbSession.createTask();
+ TaskImpl task = dbSession.createTask();
task.setSuperTaskDbid(parentTaskDbid);
return task;
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/ResumeDeploymentCmd.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/ResumeDeploymentCmd.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/ResumeDeploymentCmd.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -42,7 +42,7 @@
public Object execute(Environment environment) throws Exception {
RepositorySession repositorySession = environment.get(RepositorySession.class);
- DeploymentImpl deployment = (DeploymentImpl) repositorySession.getDeployment(deploymentId);
+ DeploymentImpl deployment = repositorySession.getDeployment(deploymentId);
deployment.resume();
return null;
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/SaveTaskCmd.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/SaveTaskCmd.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/SaveTaskCmd.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -23,7 +23,6 @@
import org.jbpm.api.cmd.Environment;
import org.jbpm.pvm.internal.history.HistoryEvent;
-import org.jbpm.pvm.internal.history.HistorySession;
import org.jbpm.pvm.internal.history.events.TaskCreated;
import org.jbpm.pvm.internal.history.events.TaskUpdated;
import org.jbpm.pvm.internal.session.DbSession;
@@ -48,7 +47,7 @@
if (task.isNew()) {
if (task.getSuperTaskDbid()!=null) {
- TaskImpl parentTask = (TaskImpl) dbSession.get(TaskImpl.class, task.getSuperTaskDbid());
+ TaskImpl parentTask = dbSession.get(TaskImpl.class, task.getSuperTaskDbid());
parentTask.addSubTask(task);
task.setSuperTaskDbid(null);
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/StartProcessInstanceCmd.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/StartProcessInstanceCmd.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/StartProcessInstanceCmd.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -50,8 +50,7 @@
public ProcessInstance execute(Environment environment) throws Exception {
RepositorySession repositorySession = environment.get(RepositorySession.class);
- ClientProcessDefinition processDefinition = (ClientProcessDefinition)
- repositorySession.findProcessDefinitionById(processDefinitionId);
+ ClientProcessDefinition processDefinition = repositorySession.findProcessDefinitionById(processDefinitionId);
if (processDefinition==null) {
throw new JbpmException("no process definition with id '"+processDefinitionId+"'");
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/StartProcessInstanceInLatestCmd.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/StartProcessInstanceInLatestCmd.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/StartProcessInstanceInLatestCmd.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -23,13 +23,11 @@
import java.util.Map;
-import org.hibernate.Session;
import org.jbpm.api.JbpmException;
import org.jbpm.api.ProcessInstance;
import org.jbpm.api.cmd.Environment;
import org.jbpm.pvm.internal.client.ClientProcessDefinition;
import org.jbpm.pvm.internal.client.ClientProcessInstance;
-import org.jbpm.pvm.internal.env.EnvironmentImpl;
import org.jbpm.pvm.internal.session.RepositorySession;
/**
@@ -55,7 +53,7 @@
ClientProcessDefinition processDefinition = null;
RepositorySession repositorySession = environment.get(RepositorySession.class);
- processDefinition = (ClientProcessDefinition) repositorySession.findProcessDefinitionByKey(processDefinitionKey);
+ processDefinition = repositorySession.findProcessDefinitionByKey(processDefinitionKey);
if (processDefinition==null) {
throw new JbpmException("no process definition with key '"+processDefinitionKey+"'");
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/SuspendDeploymentCmd.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/SuspendDeploymentCmd.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/SuspendDeploymentCmd.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -45,7 +45,7 @@
public Object execute(Environment environment) throws Exception {
RepositorySession repositorySession = environment.get(RepositorySession.class);
- DeploymentImpl deployment = (DeploymentImpl) repositorySession.getDeployment(deploymentId);
+ DeploymentImpl deployment = repositorySession.getDeployment(deploymentId);
if (deployment==null) {
throw new JbpmException("deployment "+deploymentId+" doesn't exist");
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/el/UelMethodExpression.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/el/UelMethodExpression.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/el/UelMethodExpression.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -42,6 +42,6 @@
public Object evaluateInScope(ScopeInstanceImpl scopeInstance) {
ELContext elContext = getElContext(scopeInstance);
- return methodExpression.invoke((ELContext) elContext, null);
+ return methodExpression.invoke(elContext, null);
}
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/hibernate/ExecutionType.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/hibernate/ExecutionType.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/hibernate/ExecutionType.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -40,7 +40,7 @@
public Object nullSafeGet(ResultSet rs, String[] names, Object owner) throws HibernateException, SQLException {
ExecutionImpl execution = createExecution(owner);
String activityName = rs.getString(names[0]);
- ActivityImpl activity = (ActivityImpl) execution.getProcessDefinition().getActivity(activityName);
+ ActivityImpl activity = execution.getProcessDefinition().getActivity(activityName);
execution.setActivity(activity);
execution.setState(Execution.STATE_ACTIVE_ROOT);
return execution;
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/history/events/ActivityStart.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/history/events/ActivityStart.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/history/events/ActivityStart.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -41,8 +41,7 @@
long processInstanceDbid = execution.getProcessInstance().getDbid();
- HistoryProcessInstance historyProcessInstanceImpl = (HistoryProcessInstance)
- dbSession.get(HistoryProcessInstanceImpl.class, processInstanceDbid);
+ HistoryProcessInstance historyProcessInstanceImpl = dbSession.get(HistoryProcessInstanceImpl.class, processInstanceDbid);
HistoryActivityInstanceImpl historyActivityInstance =
createHistoryActivityInstance(historyProcessInstanceImpl);
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/history/events/ProcessInstanceMigration.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/history/events/ProcessInstanceMigration.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/history/events/ProcessInstanceMigration.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -30,7 +30,6 @@
import org.jbpm.pvm.internal.model.ExecutionImpl;
import org.jbpm.pvm.internal.session.DbSession;
-
/**
* @author Koen Aers
*/
@@ -47,14 +46,13 @@
}
public void process() {
-
if (processDefinition == null || processInstance == null || !(processInstance instanceof ExecutionImpl)) return;
DbSession dbSession = EnvironmentImpl.getFromCurrent(DbSession.class);
HistoryProcessInstanceImpl historyProcessInstance = null;
long processInstanceDbid = ((ExecutionImpl)processInstance).getDbid();
- historyProcessInstance = (HistoryProcessInstanceImpl)dbSession.get(HistoryProcessInstanceImpl.class, processInstanceDbid);
+ historyProcessInstance = dbSession.get(HistoryProcessInstanceImpl.class, processInstanceDbid);
if (historyProcessInstance == null) return;
String oldVersion = historyProcessInstance.getProcessDefinitionId();
@@ -65,7 +63,6 @@
new HistoryProcessInstanceMigrationImpl(oldVersion, newVersion);
historyProcessInstance.addDetail(historyProcessInstanceMigration);
-
dbSession.save(historyProcessInstanceMigration);
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/history/events/TaskAssign.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/history/events/TaskAssign.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/history/events/TaskAssign.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -44,8 +44,7 @@
public void process() {
DbSession dbSession = EnvironmentImpl.getFromCurrent(DbSession.class);
- HistoryTaskImpl historyTaskInstance = (HistoryTaskImpl)
- dbSession.get(HistoryTaskImpl.class, task.getDbid());
+ HistoryTaskImpl historyTaskInstance = dbSession.get(HistoryTaskImpl.class, task.getDbid());
historyTaskInstance.setAssignee(assignee);
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/history/events/TaskDelete.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/history/events/TaskDelete.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/history/events/TaskDelete.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -54,7 +54,7 @@
super.updateHistoryActivityInstance(historyActivityInstance);
DbSession dbSession = EnvironmentImpl.getFromCurrent(DbSession.class);
- HistoryTaskImpl historyTask = (HistoryTaskImpl) dbSession.get(HistoryTaskImpl.class, task.getDbid());
+ HistoryTaskImpl historyTask = dbSession.get(HistoryTaskImpl.class, task.getDbid());
historyTask.setState(reason);
historyTask.setEndTime(Clock.getTime());
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/history/events/VariableCreate.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/history/events/VariableCreate.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/history/events/VariableCreate.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -54,16 +54,14 @@
ExecutionImpl processInstance = variable.getProcessInstance();
if (processInstance!=null) {
long processInstanceDbid = processInstance.getDbid();
- historyProcessInstance = (HistoryProcessInstanceImpl)
- dbSession.get(HistoryProcessInstanceImpl.class, processInstanceDbid);
+ historyProcessInstance = dbSession.get(HistoryProcessInstanceImpl.class, processInstanceDbid);
}
HistoryTaskImpl historyTask = null;
TaskImpl task = variable.getTask();
if (task!=null) {
long taskDbid = task.getDbid();
- historyTask = (HistoryTaskImpl)
- dbSession.get(HistoryTaskImpl.class, taskDbid);
+ historyTask = dbSession.get(HistoryTaskImpl.class, taskDbid);
}
HistoryVariableImpl historyVariable = new HistoryVariableImpl(historyProcessInstance, historyTask, variable);
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/identity/impl/IdentitySessionResource.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/identity/impl/IdentitySessionResource.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/identity/impl/IdentitySessionResource.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -21,13 +21,12 @@
*/
package org.jbpm.pvm.internal.identity.impl;
-import org.jboss.identity.idm.api.IdentitySession;
-import org.jboss.identity.idm.api.Transaction;
-import org.jboss.identity.idm.common.exception.IdentityException;
+import org.picketlink.idm.api.IdentitySession;
+import org.picketlink.idm.api.Transaction;
+import org.picketlink.idm.common.exception.IdentityException;
import org.jbpm.api.JbpmException;
import org.jbpm.pvm.internal.tx.StandardResource;
-
/**
* @author Tom Baeyens
*/
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/identity/impl/JBossIdmIdentitySessionImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/identity/impl/JBossIdmIdentitySessionImpl.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/identity/impl/JBossIdmIdentitySessionImpl.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -26,16 +26,19 @@
import java.util.List;
import java.util.StringTokenizer;
-import org.jboss.identity.idm.api.Attribute;
-import org.jboss.identity.idm.api.AttributesManager;
-import org.jboss.identity.idm.api.IdentitySearchCriteria;
-import org.jboss.identity.idm.api.IdentitySession;
-import org.jboss.identity.idm.api.RoleType;
-import org.jboss.identity.idm.common.exception.FeatureNotSupportedException;
-import org.jboss.identity.idm.common.exception.IdentityException;
-import org.jboss.identity.idm.common.p3p.P3PConstants;
-import org.jboss.identity.idm.impl.api.SimpleAttribute;
-import org.jboss.identity.idm.impl.api.model.GroupId;
+import org.picketlink.idm.api.Attribute;
+import org.picketlink.idm.api.AttributesManager;
+import org.picketlink.idm.api.IdentitySearchCriteria;
+import org.picketlink.idm.api.IdentitySession;
+import org.picketlink.idm.api.RoleManager;
+import org.picketlink.idm.api.RoleType;
+import org.picketlink.idm.common.exception.FeatureNotSupportedException;
+import org.picketlink.idm.common.exception.IdentityException;
+import org.picketlink.idm.common.p3p.P3PConstants;
+import org.picketlink.idm.impl.api.SimpleAttribute;
+import org.picketlink.idm.impl.api.model.GroupKey;
+import org.picketlink.idm.impl.api.model.SimpleGroup;
+
import org.jbpm.api.JbpmException;
import org.jbpm.api.identity.Group;
import org.jbpm.api.identity.User;
@@ -44,354 +47,367 @@
* @author Tom Baeyens
* @author Jeff Yu
*/
-public class JBossIdmIdentitySessionImpl implements org.jbpm.pvm.internal.identity.spi.IdentitySession {
+public class JBossIdmIdentitySessionImpl implements
+ org.jbpm.pvm.internal.identity.spi.IdentitySession {
protected IdentitySession identitySession;
- public String DEFAULT_JBPM_MEMBER_ROLE = "default_jBPM_member_role";
-
- public String DEFAUL_JBPM_GROUP_TYPE = "default_jBPM_Group_Type";
-
+ private static final String DEFAULT_JBPM_MEMBER_ROLE = "default_jBPM_member_role";
+
+ private static final String DEFAULT_JBPM_GROUP_TYPE = "default_jBPM_Group_Type";
+
public JBossIdmIdentitySessionImpl(IdentitySession identitySession) {
this.identitySession = identitySession;
}
- public String createUser(String userName, String givenName, String familyName, String businessEmail) {
+ public String createUser(String userName, String givenName, String familyName,
+ String businessEmail) {
try {
-
- org.jboss.identity.idm.api.User idUser= identitySession.getPersistenceManager().createUser(userName);
-
+ org.picketlink.idm.api.User idUser = identitySession.getPersistenceManager()
+ .createUser(userName);
+
List<Attribute> attrs = new ArrayList<Attribute>();
if (givenName != null) {
- attrs.add(new SimpleAttribute(P3PConstants.INFO_USER_NAME_GIVEN, givenName));
+ attrs.add(new SimpleAttribute(P3PConstants.INFO_USER_NAME_GIVEN, givenName));
}
if (familyName != null) {
- attrs.add(new SimpleAttribute(P3PConstants.INFO_USER_NAME_FAMILY, familyName));
+ attrs.add(new SimpleAttribute(P3PConstants.INFO_USER_NAME_FAMILY, familyName));
}
if (businessEmail != null) {
- attrs.add(new SimpleAttribute(P3PConstants.INFO_USER_BUSINESS_INFO_ONLINE_EMAIL, businessEmail));
+ attrs.add(new SimpleAttribute(P3PConstants.INFO_USER_BUSINESS_INFO_ONLINE_EMAIL,
+ businessEmail));
}
-
- identitySession.getAttributesManager().addAttributes(idUser, attrs.toArray(new Attribute[attrs.size()]));
+
+ identitySession.getAttributesManager()
+ .addAttributes(idUser, attrs.toArray(new Attribute[attrs.size()]));
return idUser.getId();
-
- } catch (IdentityException e) {
- throw new JbpmException("couldn't create user "+userName, e);
}
-
+ catch (IdentityException e) {
+ throw new JbpmException("could not create user: " + userName, e);
+ }
}
-
public List<User> findUsers() {
try {
- Collection<org.jboss.identity.idm.api.User> idUsers =
- identitySession.getPersistenceManager().findUser((IdentitySearchCriteria)null);
-
+ Collection<org.picketlink.idm.api.User> idUsers = identitySession.getPersistenceManager()
+ .findUser((IdentitySearchCriteria) null);
+
List<User> users = new ArrayList<User>();
- for (org.jboss.identity.idm.api.User idUser : idUsers) {
+ for (org.picketlink.idm.api.User idUser : idUsers) {
users.add(getUserInfo(idUser));
}
-
return users;
-
- } catch (IdentityException e) {
- throw new JbpmException("couldn't get users from identity component", e);
}
+ catch (IdentityException e) {
+ throw new JbpmException("could not find users", e);
+ }
}
public User findUserById(String userId) {
- try {
- org.jboss.identity.idm.api.User idUser = identitySession.getPersistenceManager().findUser(userId);
- if (idUser != null) {
- return getUserInfo(idUser);
- }
- return null;
- } catch (IdentityException e) {
- throw new JbpmException("couldn't get user from id of " + userId, e);
- }
+ try {
+ org.picketlink.idm.api.User idUser = identitySession.getPersistenceManager()
+ .findUser(userId);
+ if (idUser != null) {
+ return getUserInfo(idUser);
+ }
+ return null;
+ }
+ catch (IdentityException e) {
+ throw new JbpmException("could not find user by id: " + userId, e);
+ }
}
-private User getUserInfo(org.jboss.identity.idm.api.User idUser) throws IdentityException {
- String name = idUser.getId();
- String givenName = getAttributeString(idUser, P3PConstants.INFO_USER_NAME_GIVEN);
- String familyName = getAttributeString(idUser, P3PConstants.INFO_USER_NAME_FAMILY);
- String businessEmail = getAttributeString(idUser, P3PConstants.INFO_USER_BUSINESS_INFO_ONLINE_EMAIL);
-
- UserImpl user = new UserImpl(name, givenName, familyName);
- user.setBusinessEmail(businessEmail);
- return user;
-}
+ private User getUserInfo(org.picketlink.idm.api.User idUser) throws IdentityException {
+ String name = idUser.getId();
+ String givenName = getAttributeString(idUser, P3PConstants.INFO_USER_NAME_GIVEN);
+ String familyName = getAttributeString(idUser, P3PConstants.INFO_USER_NAME_FAMILY);
+ String businessEmail = getAttributeString(idUser, P3PConstants.INFO_USER_BUSINESS_INFO_ONLINE_EMAIL);
+ UserImpl user = new UserImpl(name, givenName, familyName);
+ user.setBusinessEmail(businessEmail);
+ return user;
+ }
+
public List<User> findUsersById(String... userIds) {
List<User> users = new ArrayList<User>();
- for (String userId : userIds){
- User user = findUserById(userId);
- if (user != null) {
- users.add(user);
- }
- }
-
+ for (String userId : userIds) {
+ User user = findUserById(userId);
+ if (user != null)
+ users.add(user);
+ }
return users;
}
- public List<User> findUsersByGroup(String groupId) {
- try {
- List<User> users = new ArrayList<User>();
- org.jboss.identity.idm.api.Group idGroup = findIdmGroupByIdmGroupId(convertjbpmGroupId2IdmGroupId(groupId));
- if (idGroup == null){
- return users;
- }
- Collection<org.jboss.identity.idm.api.User> idusers =
- identitySession.getRoleManager().findUsersWithRelatedRole(idGroup, null);
- for (org.jboss.identity.idm.api.User iduser : idusers) {
- users.add(findUserById(iduser.getId()));
- }
-
- return users;
- } catch (IdentityException e) {
- throw new JbpmException("couldn't find users by groupid: " + groupId, e);
- } catch (FeatureNotSupportedException e) {
- throw new JbpmException("couldn't find users by groupid: " + groupId, e);
- }
-
+ public List<User> findUsersByGroup(String groupKey) {
+ try {
+ List<User> users = new ArrayList<User>();
+ org.picketlink.idm.api.Group idGroup = findIdmGroupByKey(convertjbpmGroupId2IdmGroupKey(groupKey));
+ if (idGroup == null)
+ return users;
+
+ Collection<org.picketlink.idm.api.User> idusers = identitySession.getRoleManager()
+ .findUsersWithRelatedRole(idGroup, null);
+ for (org.picketlink.idm.api.User iduser : idusers) {
+ users.add(findUserById(iduser.getId()));
+ }
+ return users;
+ }
+ catch (IdentityException e) {
+ throw new JbpmException("could not find users by group: " + groupKey, e);
+ }
+ catch (FeatureNotSupportedException e) {
+ throw new JbpmException("could not find users by group: " + groupKey, e);
+ }
}
public void deleteUser(String userName) {
- try {
- identitySession.getPersistenceManager().removeUser(userName, true);
- } catch (IdentityException e) {
- throw new JbpmException("couldn't delete user ["+userName + "]", e);
+ try {
+ identitySession.getPersistenceManager().removeUser(userName, true);
}
+ catch (IdentityException e) {
+ throw new JbpmException("could not delete user: " + userName, e);
+ }
}
- public String createGroup(String groupName, String groupType, String parentGroupId) {
-
+ public String createGroup(String groupName, String groupType, String parentGroupKey) {
try {
- String gtype = groupType;
- if (gtype == null) {
- gtype = DEFAUL_JBPM_GROUP_TYPE;
- }
- org.jboss.identity.idm.api.Group group = identitySession.getPersistenceManager().createGroup(groupName, gtype);
- String groupId = group.getId();
-
- if (parentGroupId!=null) {
- org.jboss.identity.idm.api.Group parentGroup = findIdmGroupByIdmGroupId(convertjbpmGroupId2IdmGroupId(parentGroupId));
- if (parentGroup==null) {
- throw new JbpmException("parent group "+parentGroupId+" doesn't exist");
+ if (groupType == null)
+ groupType = DEFAULT_JBPM_GROUP_TYPE;
+
+ SimpleGroup group = (SimpleGroup) identitySession.getPersistenceManager()
+ .createGroup(groupName, groupType);
+ String groupKey = group.getKey();
+
+ if (parentGroupKey != null) {
+ org.picketlink.idm.api.Group parentGroup = findIdmGroupByKey(convertjbpmGroupId2IdmGroupKey(parentGroupKey));
+ if (parentGroup == null) {
+ throw new JbpmException("parent group does not exist: " + parentGroupKey);
}
identitySession.getRelationshipManager().associateGroups(parentGroup, group);
}
- return convertIdmGroupId2jbpmGroupId(groupId);
-
- } catch (IdentityException e) {
- throw new JbpmException("couldn't create group "+groupName, e);
+ return convertIdmGroupKey2jbpmGroupId(groupKey);
}
-
+ catch (IdentityException e) {
+ throw new JbpmException("could not create group: " + groupName, e);
+ }
}
-
+
public Group findGroupById(String groupId) {
- try {
- org.jboss.identity.idm.api.Group idGroup = findIdmGroupByIdmGroupId(convertjbpmGroupId2IdmGroupId(groupId));
- if (idGroup == null) {
- return null;
- }
- GroupImpl group = new GroupImpl();
- group.setId(convertIdmGroupId2jbpmGroupId(idGroup.getId()));
- group.setType(idGroup.getGroupType());
- group.setName(idGroup.getName());
-
- Collection<org.jboss.identity.idm.api.Group> idParentGroups =
- identitySession.getRelationshipManager().findAssociatedGroups(idGroup, null, false, false);
-
- if (idParentGroups.size() > 0) {
- org.jboss.identity.idm.api.Group idParent = idParentGroups.iterator().next();
- GroupImpl parentGroup = new GroupImpl();
- parentGroup.setId(convertIdmGroupId2jbpmGroupId(idParent.getId()));
- parentGroup.setType(idParent.getGroupType());
- parentGroup.setName(idParent.getName());
-
- group.setParent(parentGroup);
- }
-
- return group;
-
- } catch (IdentityException e) {
- throw new JbpmException("couldn't find group by id [" + groupId + "]", e);
- }
+ try {
+ SimpleGroup idGroup = (SimpleGroup) findIdmGroupByKey(convertjbpmGroupId2IdmGroupKey(groupId));
+ if (idGroup == null) {
+ return null;
+ }
+ GroupImpl group = new GroupImpl();
+ group.setId(convertIdmGroupKey2jbpmGroupId(idGroup.getKey()));
+ group.setType(idGroup.getGroupType());
+ group.setName(idGroup.getName());
+
+ Collection<org.picketlink.idm.api.Group> idParentGroups = identitySession.getRelationshipManager()
+ .findAssociatedGroups(idGroup, null, false, false);
+
+ if (idParentGroups.size() > 0) {
+ SimpleGroup idParent = (SimpleGroup) idParentGroups.iterator().next();
+ GroupImpl parentGroup = new GroupImpl();
+ parentGroup.setId(convertIdmGroupKey2jbpmGroupId(idParent.getKey()));
+ parentGroup.setType(idParent.getGroupType());
+ parentGroup.setName(idParent.getName());
+
+ group.setParent(parentGroup);
+ }
+ return group;
+ }
+ catch (IdentityException e) {
+ throw new JbpmException("could not find group by id: " + groupId, e);
+ }
}
public List<Group> findGroupsByGroupType(String groupType) {
try {
- Collection<org.jboss.identity.idm.api.Group> idGroups = identitySession.getPersistenceManager().
- findGroup(groupType);
-
+ Collection<org.picketlink.idm.api.Group> idGroups = identitySession.getPersistenceManager()
+ .findGroup(groupType);
+
List<Group> groups = new ArrayList<Group>();
- for (org.jboss.identity.idm.api.Group idGroup: idGroups) {
- groups.add(findGroupById(convertIdmGroupId2jbpmGroupId(idGroup.getId())));
+ for (org.picketlink.idm.api.Group idGroup : idGroups) {
+ SimpleGroup simpleGroup = (SimpleGroup) idGroup;
+ groups.add(findGroupById(convertIdmGroupKey2jbpmGroupId(simpleGroup.getKey())));
}
-
return groups;
-
- } catch (IdentityException e) {
- throw new JbpmException("couldn't get groups from identity component, groupType [" + groupType + "]", e);
}
+ catch (IdentityException e) {
+ throw new JbpmException("could not find groups by type: " + groupType, e);
+ }
}
-
+
public List<Group> findGroupsByUser(String userId) {
-
try {
- Collection<org.jboss.identity.idm.api.Group> idGroups = identitySession.getRoleManager()
- .findGroupsWithRelatedRole(userId, null);
-
- List<Group> groups = new ArrayList<Group>();
- for (org.jboss.identity.idm.api.Group idGroup : idGroups) {
- groups.add(findGroupById(convertIdmGroupId2jbpmGroupId(idGroup.getId())));
- }
- return groups;
- } catch (Exception e) {
- throw new JbpmException("Couldn't get Groups by userId [" + userId + "]", e);
-
- }
+ Collection<org.picketlink.idm.api.Group> idGroups = identitySession.getRoleManager()
+ .findGroupsWithRelatedRole(userId, null);
+
+ List<Group> groups = new ArrayList<Group>();
+ for (org.picketlink.idm.api.Group idGroup : idGroups) {
+ groups.add(findGroupById(convertIdmGroupKey2jbpmGroupId(idGroup.getKey())));
+ }
+ return groups;
+ }
+ catch (IdentityException e) {
+ throw new JbpmException("could not find groups by user: " + userId, e);
+ }
+ catch (FeatureNotSupportedException e) {
+ throw new JbpmException("could not find groups by user: " + userId, e);
+ }
}
public List<Group> findGroupsByUserAndGroupType(String userName, String groupType) {
try {
- org.jboss.identity.idm.api.User idUser = identitySession.getPersistenceManager().findUser(userName);
-
- Collection<org.jboss.identity.idm.api.Group> idGroups = identitySession.getRoleManager()
- .findGroupsWithRelatedRole(idUser, groupType, null);
+ org.picketlink.idm.api.User idUser = identitySession.getPersistenceManager()
+ .findUser(userName);
+
+ Collection<org.picketlink.idm.api.Group> idGroups = identitySession.getRoleManager()
+ .findGroupsWithRelatedRole(idUser, groupType, null);
List<Group> groups = new ArrayList<Group>();
-
- for (org.jboss.identity.idm.api.Group idGroup : idGroups) {
- groups.add(findGroupById(convertIdmGroupId2jbpmGroupId(idGroup.getId())));
+
+ for (org.picketlink.idm.api.Group idGroup : idGroups) {
+ SimpleGroup simpleGroup = (SimpleGroup) idGroup;
+ groups.add(findGroupById(convertIdmGroupKey2jbpmGroupId(simpleGroup.getKey())));
}
return groups;
- } catch (Exception e) {
- throw new JbpmException("couldn't get groups for user "+userName+" and groupType "+groupType, e);
}
+ catch (IdentityException e) {
+ throw new JbpmException("could not find groups by user '" + userName + "' and type: "
+ + groupType, e);
+ }
+ catch (FeatureNotSupportedException e) {
+ throw new JbpmException("could not find groups by user '" + userName + "' and type: "
+ + groupType, e);
+ }
}
public void deleteGroup(String groupId) {
try {
- org.jboss.identity.idm.api.Group group = findIdmGroupByIdmGroupId(convertjbpmGroupId2IdmGroupId(groupId));
-
- if (group==null) {
+ org.picketlink.idm.api.Group group = findIdmGroupByKey(convertjbpmGroupId2IdmGroupKey(groupId));
+ if (group == null)
return;
- }
identitySession.getPersistenceManager().removeGroup(group, true);
-
- } catch (IdentityException e) {
- throw new JbpmException("couldn't delete group "+groupId, e);
}
+ catch (IdentityException e) {
+ throw new JbpmException("could not delete group " + groupId, e);
+ }
}
public void createMembership(String userId, String groupId, String role) {
try {
- org.jboss.identity.idm.api.Group group = findIdmGroupByIdmGroupId(convertjbpmGroupId2IdmGroupId(groupId));
- if (group==null) {
- throw new JbpmException("group "+groupId+" doesn't exist");
+ org.picketlink.idm.api.Group group = findIdmGroupByKey(convertjbpmGroupId2IdmGroupKey(groupId));
+ if (group == null) {
+ throw new JbpmException("group not found: " + groupId);
}
-
- org.jboss.identity.idm.api.User idUser = identitySession.getPersistenceManager().findUser(userId);
- if (idUser==null) {
- throw new JbpmException("user "+userId+" doesn't exist");
+
+ org.picketlink.idm.api.User idUser = identitySession.getPersistenceManager()
+ .findUser(userId);
+ if (idUser == null) {
+ throw new JbpmException("user not found: " + userId);
}
-
- if (role == null) {
- role = DEFAULT_JBPM_MEMBER_ROLE;
+
+ if (role == null)
+ role = DEFAULT_JBPM_MEMBER_ROLE;
+
+ RoleManager roleManager = identitySession.getRoleManager();
+ RoleType roleType = roleManager.getRoleType(role);
+ if (roleType == null) {
+ roleType = roleManager.createRoleType(role);
}
- RoleType roleType = identitySession.getRoleManager().getRoleType(role);
- System.out.println("The Role Type is: " + roleType);
- if (roleType == null) {
- roleType = identitySession.getRoleManager().createRoleType(role);
- }
- identitySession.getRoleManager().createRole(roleType, idUser, group);
-
- } catch (Exception e) {
- throw new JbpmException("couldn't create membership "+userId+", "+groupId+", "+role, e);
+ roleManager.createRole(roleType, idUser, group);
}
+ catch (IdentityException e) {
+ throw new JbpmException("could not create membership for user '" + userId + "', group '"
+ + groupId + "' and role: " + role, e);
+ }
+ catch (FeatureNotSupportedException e) {
+ throw new JbpmException("could not create membership for user '" + userId + "', group '"
+ + groupId + "' and role: " + role, e);
+ }
}
-
+
public void deleteMembership(String userId, String groupId, String role) {
- try {
- RoleType rtype = identitySession.getRoleManager().getRoleType(role);
- identitySession.getRoleManager().removeRole(rtype.getName(), userId, convertjbpmGroupId2IdmGroupId(groupId));
- } catch (Exception e) {
- throw new JbpmException("couldn't delete the membership [" + userId + "," + groupId + "," + role + "]", e);
- }
-
+ try {
+ RoleManager roleManager = identitySession.getRoleManager();
+ RoleType rtype = roleManager.getRoleType(role);
+ roleManager.removeRole(rtype.getName(), userId, convertjbpmGroupId2IdmGroupKey(groupId));
+ }
+ catch (IdentityException e) {
+ throw new JbpmException("could not delete membership for user '" + userId + "', group '"
+ + groupId + "' and role: " + role, e);
+ }
+ catch (FeatureNotSupportedException e) {
+ throw new JbpmException("could not delete membership for user '" + userId + "', group '"
+ + groupId + "' and role: " + role, e);
+ }
}
- protected org.jboss.identity.idm.api.Group findIdmGroupByIdmGroupId(String groupId) {
- try {
- return identitySession.getPersistenceManager().findGroupById(groupId);
- } catch (IdentityException e) {
- throw new JbpmException("couldn't find the group by groupId: " + groupId, e);
- }
+ protected org.picketlink.idm.api.Group findIdmGroupByKey(String groupKey) {
+ try {
+ return identitySession.getPersistenceManager().findGroupByKey(groupKey);
+ }
+ catch (IdentityException e) {
+ throw new JbpmException("could not find group by key: " + groupKey, e);
+ }
}
- protected String getAttributeString(org.jboss.identity.idm.api.User idUser, String attributeName) throws IdentityException {
+ protected String getAttributeString(org.picketlink.idm.api.User idUser, String attributeName)
+ throws IdentityException {
return getAttributeString(idUser, null, attributeName);
}
- protected String getAttributeString(org.jboss.identity.idm.api.Group idGroup, String attributeName) throws IdentityException {
+ protected String getAttributeString(org.picketlink.idm.api.Group idGroup, String attributeName)
+ throws IdentityException {
return getAttributeString(null, idGroup, attributeName);
}
- protected String getAttributeString(org.jboss.identity.idm.api.User idUser, org.jboss.identity.idm.api.Group idGroup, String attributeName) throws IdentityException {
+ protected String getAttributeString(org.picketlink.idm.api.User idUser,
+ org.picketlink.idm.api.Group idGroup, String attributeName) throws IdentityException {
AttributesManager attributesManager = identitySession.getAttributesManager();
- Attribute attribute = null;
- if (idUser !=null) {
+ Attribute attribute;
+ if (idUser != null) {
attribute = attributesManager.getAttribute(idUser, attributeName);
- } else {
+ }
+ else {
attribute = attributesManager.getAttribute(idGroup, attributeName);
}
- if (attribute!=null) {
- return (String) attribute.getValue();
- }
- return null;
+ return attribute != null ? (String) attribute.getValue() : null;
}
-
-
+
/**
- * Return jBPM groupId, which is: GroupType.GroupName, from IDM GroupId
- *
- * @param groupId
- * @return
+ * Return jBPM groupId, which is: GroupType.GroupName, from IDM GroupKey
*/
- private String convertIdmGroupId2jbpmGroupId(String groupId) {
- GroupId theGroupId = new GroupId(groupId);
- if (this.DEFAUL_JBPM_GROUP_TYPE.equals(theGroupId.getType()) || theGroupId.getType() == null) {
- return theGroupId.getName();
- }
- return theGroupId.getType() + "." + theGroupId.getName();
+ private String convertIdmGroupKey2jbpmGroupId(String groupKey) {
+ GroupKey theGroupKey = new GroupKey(groupKey);
+ String type = theGroupKey.getType();
+ if (type == null || DEFAULT_JBPM_GROUP_TYPE.equals(type)) {
+ return theGroupKey.getName();
+ }
+ return type + "." + theGroupKey.getName();
}
-
+
/**
- * Convert the jBPM GroupId to IDM GroupId.
- *
- * @param jbpmGroupId
- * @return
+ * Convert the jBPM GroupId to IDM GroupKey.
*/
- private String convertjbpmGroupId2IdmGroupId(String jbpmGroupId) {
- StringTokenizer st = new StringTokenizer(jbpmGroupId, ".");
- String type = DEFAUL_JBPM_GROUP_TYPE;
- if (st.countTokens() > 1) {
- type = st.nextToken();
- }
- String name = st.nextToken();
-
- return new GroupId(name, type).getId();
+ private String convertjbpmGroupId2IdmGroupKey(String jbpmGroupId) {
+ StringTokenizer st = new StringTokenizer(jbpmGroupId, ".");
+ String type = DEFAULT_JBPM_GROUP_TYPE;
+ if (st.countTokens() > 1) {
+ type = st.nextToken();
+ }
+
+ String name = st.nextToken();
+ return new GroupKey(name, type).getKey();
}
-
+
public IdentitySession getIdentitySession() {
return identitySession;
}
-
+
public void setIdentitySession(IdentitySession identitySession) {
this.identitySession = identitySession;
}
-
-
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/identity/impl/JbpmIdentityStore.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/identity/impl/JbpmIdentityStore.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/identity/impl/JbpmIdentityStore.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -22,17 +22,18 @@
package org.jbpm.pvm.internal.identity.impl;
import org.hibernate.ejb.HibernateEntityManager;
-import org.jboss.identity.idm.common.exception.IdentityException;
-import org.jboss.identity.idm.impl.store.hibernate.HibernateIdentityStoreImpl;
-import org.jboss.identity.idm.spi.store.IdentityStoreInvocationContext;
+import org.picketlink.idm.common.exception.IdentityException;
+import org.picketlink.idm.impl.store.hibernate.HibernateIdentityStoreImpl;
+import org.picketlink.idm.spi.store.IdentityStoreInvocationContext;
import org.jbpm.pvm.internal.env.EnvironmentImpl;
-
/**
* @author Tom Baeyens
*/
public class JbpmIdentityStore extends HibernateIdentityStoreImpl {
+ private static final long serialVersionUID = 1L;
+
public JbpmIdentityStore(String id) {
super(id);
}
@@ -48,6 +49,4 @@
protected HibernateEntityManager getEntityManagerFromEnvironment() {
return EnvironmentImpl.getFromCurrent(HibernateEntityManager.class);
}
-
-
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/jobexecutor/JobExceptionHandler.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/jobexecutor/JobExceptionHandler.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/jobexecutor/JobExceptionHandler.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -75,7 +75,7 @@
if (dbSession==null) {
throw new JbpmException("no job-session configured to handle job");
}
- JobImpl<?> job = (JobImpl<?>) dbSession.get(JobImpl.class, jobDbid);
+ JobImpl<?> job = dbSession.get(JobImpl.class, jobDbid);
// serialize the stack trace
StringWriter sw = new StringWriter();
exception.printStackTrace(new PrintWriter(sw));
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/migration/InstanceMigrator.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/migration/InstanceMigrator.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/migration/InstanceMigrator.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -80,7 +80,7 @@
private static List<ProcessInstance> getProcessInstancesToMigrate(String processDefinitionName, MigrationDescriptor migrationDescriptor) {
List<ProcessInstance> result = new ArrayList<ProcessInstance>();
- ExecutionService executionService = (ExecutionService) EnvironmentImpl.getFromCurrent(ExecutionService.class);
+ ExecutionService executionService = EnvironmentImpl.getFromCurrent(ExecutionService.class);
List<ProcessDefinition> processesToMigrate = getProcessesToMigrate(processDefinitionName, migrationDescriptor);
for (ProcessDefinition processDefinition : processesToMigrate) {
result.addAll(
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ActivityImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ActivityImpl.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ActivityImpl.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -35,7 +35,7 @@
/**
* @author Tom Baeyens
*/
-public class ActivityImpl extends CompositeElementImpl implements Activity, ObservableElement {
+public class ActivityImpl extends CompositeElementImpl implements Activity {
private static final long serialVersionUID = 1L;
@@ -181,8 +181,8 @@
/** the list of leaving transitions.
* Beware: the actual member is returned. No copy is made.
*/
- public List<Transition> getOutgoingTransitions() {
- return (List) outgoingTransitions;
+ public List<? extends Transition> getOutgoingTransitions() {
+ return outgoingTransitions;
}
/** indicates if a leaving transition with the given transitionName exists. */
@@ -250,8 +250,8 @@
/** the list of arriving transitions.
* Beware: the actual member is returned. No copy is made.
*/
- public List<Transition> getIncomingTransitions() {
- return (List) incomingTransitions;
+ public List<? extends Transition> getIncomingTransitions() {
+ return incomingTransitions;
}
/** indicates if this activity has arriving transitions */
@@ -288,16 +288,16 @@
* in the map.
* Beware: the actual member is returned. No copy is made.
*/
- public Map<String, Transition> getOutgoingTransitionsMap() {
+ public Map<String, ? extends Transition> getOutgoingTransitionsMap() {
if(outgoingTransitionsMap == null){
- this.outgoingTransitionsMap = new HashMap<String, TransitionImpl>();
+ outgoingTransitionsMap = new HashMap<String, TransitionImpl>();
for (TransitionImpl transition: outgoingTransitions) {
- if (! this.outgoingTransitionsMap.containsKey(transition.getName())) {
- this.outgoingTransitionsMap.put(transition.getName(), transition);
+ if (!outgoingTransitionsMap.containsKey(transition.getName())) {
+ outgoingTransitionsMap.put(transition.getName(), transition);
}
}
}
- return (Map) outgoingTransitionsMap;
+ return outgoingTransitionsMap;
}
void clearOutgoingTransitionsMap() {
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/CompositeElement.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/CompositeElement.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/CompositeElement.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -65,5 +65,5 @@
* Beware: the actual member is returned. No copy is made. In fact, the
* returned map is maintained as a cache. So updates to the map will
* influence subsequent retrievals of activities by name.*/
- Map<String, Activity> getActivitiesMap();
+ Map<String, ? extends Activity> getActivitiesMap();
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/CompositeElementImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/CompositeElementImpl.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/CompositeElementImpl.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -128,7 +128,7 @@
* Beware: the actual member is returned. No copy is made.
*/
public List<? extends Activity> getActivities() {
- return (List) activities;
+ return activities;
}
/** the nested activities, keyed by activity name. If a activity with
@@ -138,11 +138,11 @@
* in the map.
* Beware: the actual member is returned. No copy is made.
*/
- public Map<String, Activity> getActivitiesMap() {
+ public Map<String, ? extends Activity> getActivitiesMap() {
if (activitiesMap == null) {
this.activitiesMap = ActivityImpl.getActivitiesMap(activities);
}
- return (Map) activitiesMap;
+ return activitiesMap;
}
/** indicates if this processDefinition has activities. */
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/op/ExecuteEventListener.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/op/ExecuteEventListener.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/op/ExecuteEventListener.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -81,7 +81,7 @@
eventListener.notify(execution);
} catch (Exception e) {
log.trace("exception during action: " + e);
- execution.handleException((ObservableElementImpl) observableElement, event, eventListenerReference, e, "couldn't run action " + eventListener);
+ execution.handleException(observableElement, event, eventListenerReference, e, "couldn't run action " + eventListener);
}
}
// increment the event listener index
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/op/ExecuteEventListenerMessage.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/op/ExecuteEventListenerMessage.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/op/ExecuteEventListenerMessage.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -69,7 +69,7 @@
asyncExecutionInfo.put(KEY_STATE, execution.getState());
- ObservableElementImpl eventSource = (ObservableElementImpl) execution.getEventSource();
+ ObservableElementImpl eventSource = execution.getEventSource();
if (eventSource instanceof ProcessDefinitionImpl) {
asyncExecutionInfo.put(KEY_EVENT_SOURCE_PROCESS_DEFINITION, null);
@@ -106,7 +106,7 @@
}
public Object execute(Environment environment) throws Exception {
- Map<String, Object> asyncExecutionInfo = (Map) getConfiguration();
+ Map<?, ?> asyncExecutionInfo = (Map<?, ?>) getConfiguration();
String transitionSourceName = (String) asyncExecutionInfo.get(KEY_TRANSITION_SOURCE);
TransitionImpl transition = null;
@@ -132,7 +132,7 @@
execution.setEventSource(transition);
}
- ObservableElementImpl observableElement = (ObservableElementImpl) execution.getEventSource();
+ ObservableElementImpl observableElement = execution.getEventSource();
int parentLevel = (Integer) asyncExecutionInfo.get(KEY_EVENT_OBSERVABLE_PARENT_LEVEL);
for (int i=0; i<parentLevel; parentLevel++) {
observableElement = observableElement.getParent();
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/query/AbstractQuery.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/query/AbstractQuery.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/query/AbstractQuery.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -22,27 +22,22 @@
package org.jbpm.pvm.internal.query;
import java.io.ObjectStreamException;
-import java.sql.SQLException;
import java.util.List;
-import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
+
import org.jbpm.api.JbpmException;
import org.jbpm.api.cmd.Command;
import org.jbpm.api.cmd.Environment;
-import org.jbpm.internal.log.Log;
import org.jbpm.pvm.internal.cmd.CommandService;
import org.jbpm.pvm.internal.env.EnvironmentImpl;
-
/**
* @author Tom Baeyens
*/
public abstract class AbstractQuery implements Command<Object> {
- private static Log log = Log.getLog(AbstractQuery.class.getName());
-
private static final long serialVersionUID = 1L;
protected CommandService commandService;
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/query/AvgDurationPerActivityQueryCmd.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/query/AvgDurationPerActivityQueryCmd.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/query/AvgDurationPerActivityQueryCmd.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -25,8 +25,8 @@
import java.util.List;
import java.util.Map;
-import org.hibernate.Query;
import org.hibernate.Session;
+
import org.jbpm.api.cmd.Command;
import org.jbpm.api.cmd.Environment;
import org.jbpm.pvm.internal.history.model.HistoryActivityInstanceImpl;
@@ -34,43 +34,33 @@
/**
* @author Tom Baeyens
*/
-public class AvgDurationPerActivityQueryCmd implements Command<Object> {
+public class AvgDurationPerActivityQueryCmd implements Command<Map<String, Number>> {
private static final long serialVersionUID = 1L;
-
+
protected String processDefinitionId;
public AvgDurationPerActivityQueryCmd(String processDefinitionId) {
this.processDefinitionId = processDefinitionId;
}
- public Object execute(Environment environment) throws Exception {
- Session session = environment.get(Session.class);
-
- Query query = session.createQuery(
- "select distinct hai.activityName " +
- "from "+HistoryActivityInstanceImpl.class.getName()+" as hai " +
- "where hai.historyProcessInstance.processDefinitionId = :processDefinitionId"
- );
- query.setString("processDefinitionId", processDefinitionId);
-
- Map<String, Long> avgDuration = new HashMap<String, Long>();
-
- List<String> activityNames = query.list();
- for (String activityName: activityNames) {
- query = session.createQuery(
- "select avg(hai.duration) " +
- "from "+HistoryActivityInstanceImpl.class.getName()+" as hai " +
- "where hai.historyProcessInstance.processDefinitionId = :processDefinitionId " +
- " and hai.activityName = :activityName"
- );
- query.setString("processDefinitionId", processDefinitionId);
- query.setString("activityName", activityName);
-
- Number number = (Number) query.uniqueResult();
- avgDuration.put(activityName, new Long(number.longValue()));
+ public Map<String, Number> execute(Environment environment) throws Exception {
+ List<?> results = environment.get(Session.class)
+ .createQuery("select hai.activityName, avg(hai.duration) "
+ + "from "
+ + HistoryActivityInstanceImpl.class.getName()
+ + " as hai "
+ + "where hai.historyProcessInstance.processDefinitionId = :processDefinitionId "
+ + "group by hai.activityName")
+ .setString("processDefinitionId", processDefinitionId)
+ .list();
+
+ Map<String, Number> avgDurationPerActivity = new HashMap<String, Number>();
+ for (Object result: results) {
+ Object[] pair = (Object[]) result;
+ avgDurationPerActivity.put((String) pair[0], (Number) pair[1]);
}
-
- return avgDuration;
+
+ return avgDurationPerActivity;
}
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/query/ChoiceDistributionQueryCmd.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/query/ChoiceDistributionQueryCmd.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/query/ChoiceDistributionQueryCmd.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -25,52 +25,50 @@
import java.util.List;
import java.util.Map;
-import org.hibernate.Query;
import org.hibernate.Session;
+
import org.jbpm.api.cmd.Command;
import org.jbpm.api.cmd.Environment;
import org.jbpm.pvm.internal.history.model.HistoryActivityInstanceImpl;
-
/**
* @author Tom Baeyens
*/
-public class ChoiceDistributionQueryCmd implements Command<Object> {
+public class ChoiceDistributionQueryCmd implements Command<Map<String, Number>> {
private static final long serialVersionUID = 1L;
-
+
protected String processDefinitionId;
protected String activityName;
-
+
public ChoiceDistributionQueryCmd(String processDefinitionId, String activityName) {
this.processDefinitionId = processDefinitionId;
this.activityName = activityName;
}
- public Object execute(Environment environment) {
- Session session = environment.get(Session.class);
-
- Query query = session.createQuery(
- "select hai.transitionName, count(hai) " +
- "from "+HistoryActivityInstanceImpl.class.getName()+" as hai " +
- "where hai.historyProcessInstance.processDefinitionId = :processDefinitionId " +
- " and hai.activityName = :activityName " +
- "group by hai.transitionName "
- );
- query.setString("processDefinitionId", processDefinitionId);
- query.setString("activityName", activityName);
+ public Map<String, Number> execute(Environment environment) {
+ List<?> results = environment.get(Session.class)
+ .createQuery("select hai.transitionName, count(hai) "
+ + "from "
+ + HistoryActivityInstanceImpl.class.getName()
+ + " as hai "
+ + "where hai.historyProcessInstance.processDefinitionId = :processDefinitionId "
+ + " and hai.activityName = :activityName "
+ + "group by hai.transitionName")
+ .setString("processDefinitionId", processDefinitionId)
+ .setString("activityName", activityName)
+ .list();
- List<Object[]> transitionCounts = query.list();
+ Map<String, Number> choiceDistributionCounts = new HashMap<String, Number>();
- Map<String, Integer> choiceDistributionCounts = new HashMap<String, Integer>();
-
- for (Object[] pair: transitionCounts) {
+ for (Object result : results) {
+ Object[] pair = (Object[]) result;
String transitionName = (String) pair[0];
Number number = (Number) pair[1];
-
- choiceDistributionCounts.put(transitionName, new Integer(number.intValue()));
+
+ choiceDistributionCounts.put(transitionName, number);
}
-
+
return choiceDistributionCounts;
}
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/svc/HistoryServiceImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/svc/HistoryServiceImpl.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/svc/HistoryServiceImpl.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -21,7 +21,7 @@
*/
package org.jbpm.pvm.internal.svc;
-import java.util.HashSet;
+import java.util.Collections;
import java.util.Map;
import java.util.Set;
@@ -43,19 +43,18 @@
import org.jbpm.pvm.internal.query.HistoryProcessInstanceQueryImpl;
import org.jbpm.pvm.internal.query.HistoryTaskQueryImpl;
-
/**
* @author Tom Baeyens
* @author Maciej Swiderski
*/
public class HistoryServiceImpl extends AbstractServiceImpl implements HistoryService {
- public Map<String, Long> avgDurationPerActivity(String processDefinitionId) {
- return (Map) commandService.execute(new AvgDurationPerActivityQueryCmd(processDefinitionId));
+ public Map<String, Number> avgDurationPerActivity(String processDefinitionId) {
+ return commandService.execute(new AvgDurationPerActivityQueryCmd(processDefinitionId));
}
- public Map<String, Integer> choiceDistribution(String processDefinitionId, String activityName) {
- return (Map) commandService.execute(new ChoiceDistributionQueryCmd(processDefinitionId, activityName));
+ public Map<String, Number> choiceDistribution(String processDefinitionId, String activityName) {
+ return commandService.execute(new ChoiceDistributionQueryCmd(processDefinitionId, activityName));
}
public HistoryProcessInstanceQuery createHistoryProcessInstanceQuery() {
@@ -87,13 +86,12 @@
}
public Object getVariable(String processInstanceId, String variableName) {
- Set<String> variableNames = new HashSet<String>();
- variableNames.add(variableName);
- Map<String, Object> variables = commandService.execute(new GetHistoryVariablesCmd(processInstanceId, variableNames));
+ Set<String> variableNames = Collections.singleton(variableName);
+ Map<String, ?> variables = commandService.execute(new GetHistoryVariablesCmd(processInstanceId, variableNames));
return variables.get(variableName);
}
- public Map<String, Object> getVariables(String processInstanceId, Set<String> variableNames) {
+ public Map<String, ?> getVariables(String processInstanceId, Set<String> variableNames) {
return commandService.execute(new GetHistoryVariablesCmd(processInstanceId, variableNames));
}
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/svc/Interceptor.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/svc/Interceptor.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/svc/Interceptor.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -21,18 +21,13 @@
*/
package org.jbpm.pvm.internal.svc;
-import org.jbpm.internal.log.Log;
import org.jbpm.pvm.internal.cmd.CommandService;
-
-
/**
* @author Tom Baeyens
*/
public abstract class Interceptor implements CommandService {
- private static final Log log = Log.getLog(Interceptor.class.getName());
-
protected CommandService next;
public CommandService getNext() {
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/task/LifeCycleParser.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/task/LifeCycleParser.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/task/LifeCycleParser.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -51,7 +51,7 @@
String initialStateName = null;
if (element.hasAttribute("initial")) {
initialStateName = element.getAttribute("initial");
- ActivityImpl initial = (ActivityImpl) lifeCycleProcess.getActivity(initialStateName);
+ ActivityImpl initial = lifeCycleProcess.getActivity(initialStateName);
if (initial!=null) {
lifeCycleProcess.setInitial(initial);
} else {
@@ -68,7 +68,7 @@
return;
}
String stateName = element.getAttribute("name");
- ActivityImpl state = (ActivityImpl) lifeCycleProcess.getActivity(stateName);
+ ActivityImpl state = lifeCycleProcess.getActivity(stateName);
List<Element> transitionElements = XmlUtil.elements(element, "transition");
for (Element transitionElement: transitionElements) {
@@ -87,7 +87,7 @@
return;
}
String destinationName = element.getAttribute("to");
- ActivityImpl destination = (ActivityImpl) state.getProcessDefinition().getActivity(destinationName);
+ ActivityImpl destination = state.getProcessDefinition().getActivity(destinationName);
if (destination!=null) {
TransitionImpl transition = state.createOutgoingTransition();
transition.setDestination(destination);
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/task/SwimlaneImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/task/SwimlaneImpl.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/task/SwimlaneImpl.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -103,7 +103,7 @@
throw new JbpmException("participant is null");
}
if (participations.remove(participant)) {
- ((ParticipationImpl)participant).setSwimlane(null);
+ participant.setSwimlane(null);
}
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/tx/SpringTransactionInterceptor.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/tx/SpringTransactionInterceptor.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/tx/SpringTransactionInterceptor.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -22,7 +22,6 @@
package org.jbpm.pvm.internal.tx;
import org.jbpm.api.cmd.Command;
-import org.jbpm.internal.log.Log;
import org.jbpm.pvm.internal.env.EnvironmentImpl;
import org.jbpm.pvm.internal.svc.Interceptor;
import org.jbpm.pvm.internal.svc.Policy;
@@ -39,15 +38,12 @@
*/
public class SpringTransactionInterceptor extends Interceptor {
- @SuppressWarnings("unused")
- private static final Log log = Log.getLog(SpringTransactionInterceptor.class.getName());
-
protected int springPropagationBehaviour = TransactionDefinition.PROPAGATION_REQUIRED;
private String transactionManagerName;
@SuppressWarnings("unchecked")
public <T> T execute(Command<T> command) {
- PlatformTransactionManager platformTransactionManager = (PlatformTransactionManager) resolveTransactionManager();
+ PlatformTransactionManager platformTransactionManager = resolveTransactionManager();
TransactionTemplate template = new TransactionTemplate(platformTransactionManager);
template.setPropagationBehavior(springPropagationBehaviour);
return (T) template.execute(new SpringCommandCallback(next, command));
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/binding/EnvironmentInterceptorBinding.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/binding/EnvironmentInterceptorBinding.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/binding/EnvironmentInterceptorBinding.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -21,14 +21,13 @@
*/
package org.jbpm.pvm.internal.wire.binding;
+import org.w3c.dom.Element;
+
import org.jbpm.pvm.internal.cfg.ConfigurationImpl;
-import org.jbpm.pvm.internal.env.EnvironmentFactory;
-import org.jbpm.pvm.internal.processengine.ProcessEngineImpl;
import org.jbpm.pvm.internal.svc.Policy;
import org.jbpm.pvm.internal.wire.descriptor.EnvironmentInterceptorDescriptor;
import org.jbpm.pvm.internal.xml.Parse;
import org.jbpm.pvm.internal.xml.Parser;
-import org.w3c.dom.Element;
/**
* @author Tom Baeyens
@@ -42,7 +41,7 @@
public Object parse(Element element, Parse parse, Parser parser) {
EnvironmentInterceptorDescriptor environmentInterceptorDescriptor = new EnvironmentInterceptorDescriptor();
- ConfigurationImpl configuration = (ConfigurationImpl) parse.contextStackFind(ConfigurationImpl.class);
+ ConfigurationImpl configuration = parse.contextStackFind(ConfigurationImpl.class);
environmentInterceptorDescriptor.setConfiguration(configuration);
if ( element.hasAttribute("policy")
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/binding/InvokeBinding.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/binding/InvokeBinding.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/binding/InvokeBinding.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -51,8 +51,7 @@
parse.addProblem("invoke must have method : "+XmlUtil.toString(element), element);
}
List<Element> argElements = XmlUtil.elements(element, "arg");
- Parser wireParser = (Parser) parser;
- List<ArgDescriptor> argDescriptors = wireParser.parseArgs(argElements, parse);
+ List<ArgDescriptor> argDescriptors = parser.parseArgs(argElements, parse);
invokeOperation.setArgDescriptors(argDescriptors);
return invokeOperation;
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/binding/ProcessEngineRefBinding.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/binding/ProcessEngineRefBinding.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/binding/ProcessEngineRefBinding.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -42,7 +42,7 @@
}
public Object parse(Element element, Parse parse, Parser parser) {
- ConfigurationImpl configuration = (ConfigurationImpl) parse.contextStackFind(ConfigurationImpl.class);
+ ConfigurationImpl configuration = parse.contextStackFind(ConfigurationImpl.class);
return new ProcessEngineDescriptor(configuration);
}
}
\ No newline at end of file
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/binding/SubscribeBinding.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/binding/SubscribeBinding.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/binding/SubscribeBinding.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -73,8 +73,7 @@
String methodName = XmlUtil.attribute(element, "method");
subscribeOperation.setMethodName(methodName);
List<Element> argElements = XmlUtil.elements(element, "arg");
- Parser wireParser = (Parser) parser;
- List<ArgDescriptor> argDescriptors = wireParser.parseArgs(argElements, parse);
+ List<ArgDescriptor> argDescriptors = parser.parseArgs(argElements, parse);
subscribeOperation.setArgDescriptors(argDescriptors);
return subscribeOperation;
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/descriptor/JbossIdmIdentitySessionDescriptor.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/descriptor/JbossIdmIdentitySessionDescriptor.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/descriptor/JbossIdmIdentitySessionDescriptor.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -21,19 +21,17 @@
*/
package org.jbpm.pvm.internal.wire.descriptor;
-import org.jboss.identity.idm.api.IdentitySession;
-import org.jboss.identity.idm.api.IdentitySessionFactory;
-import org.jboss.identity.idm.common.exception.IdentityException;
+import org.picketlink.idm.api.IdentitySession;
+import org.picketlink.idm.api.IdentitySessionFactory;
+import org.picketlink.idm.common.exception.IdentityException;
import org.jbpm.api.JbpmException;
import org.jbpm.pvm.internal.env.EnvironmentImpl;
import org.jbpm.pvm.internal.identity.impl.IdentitySessionResource;
import org.jbpm.pvm.internal.identity.impl.JBossIdmIdentitySessionImpl;
-import org.jbpm.pvm.internal.tx.JtaTransaction;
import org.jbpm.pvm.internal.tx.StandardTransaction;
import org.jbpm.pvm.internal.wire.WireContext;
import org.jbpm.pvm.internal.wire.WireDefinition;
-
/**
* @author Tom Baeyens
*/
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/descriptor/JbossIdmIdentitySessionFactoryDescriptor.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/descriptor/JbossIdmIdentitySessionFactoryDescriptor.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/descriptor/JbossIdmIdentitySessionFactoryDescriptor.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -23,13 +23,12 @@
import javax.naming.InitialContext;
-import org.jboss.identity.idm.api.IdentitySessionFactory;
-import org.jboss.identity.idm.impl.configuration.IdentityConfigurationImpl;
+import org.picketlink.idm.api.IdentitySessionFactory;
+import org.picketlink.idm.impl.configuration.IdentityConfigurationImpl;
import org.jbpm.api.JbpmException;
import org.jbpm.pvm.internal.wire.WireContext;
import org.jbpm.pvm.internal.wire.WireDefinition;
-
/**
* @author Tom Baeyens
* @author Jeff Yu
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/xml/DomBuilder.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/xml/DomBuilder.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/xml/DomBuilder.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -30,14 +30,13 @@
import org.w3c.dom.Node;
import org.w3c.dom.Text;
import org.xml.sax.Attributes;
-import org.xml.sax.ContentHandler;
import org.xml.sax.Locator;
import org.xml.sax.ext.LexicalHandler;
import org.xml.sax.helpers.DefaultHandler;
/** builds the dom model from SAX events, optionally adding the line and
* column number as attributes to every element. */
-public class DomBuilder extends DefaultHandler implements ContentHandler, LexicalHandler { /** Root document */
+public class DomBuilder extends DefaultHandler implements LexicalHandler { /** Root document */
public Document document;
@@ -57,10 +56,10 @@
public DocumentFragment docFrag = null;
/** Vector of element activities */
- protected Stack elemStack = new Stack();
+ protected Stack<Element> elemStack = new Stack<Element>();
/** Namespace support */
- protected Vector prefixMappings = new Vector();
+ protected Vector<String> prefixMappings = new Vector<String>();
/** to obtain the line number information */
protected Locator locator = null;
@@ -331,12 +330,12 @@
String prefix, declURL;
for (int i = 0; i < nDecls; i += 2) {
- prefix = (String) this.prefixMappings.elementAt(i);
+ prefix = this.prefixMappings.elementAt(i);
if (prefix == null)
continue;
- declURL = (String) this.prefixMappings.elementAt(i + 1);
+ declURL = this.prefixMappings.elementAt(i + 1);
elem.setAttributeNS("http://www.w3.org/2000/xmlns/", prefix, declURL);
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/xml/Parser.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/xml/Parser.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/xml/Parser.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -535,7 +535,7 @@
argDescriptor.setTypeName(XmlUtil.attribute(argElement, "type"));
Element descriptorElement = XmlUtil.element(argElement);
if (descriptorElement==null) {
- parse.addProblem("arg must contain exactly one descriptor element out of "+bindings.getTagNames(category)+" as contents:"+XmlUtil.toString((Element) argElement.getParentNode()), argElement);
+ parse.addProblem("arg must contain exactly one descriptor element out of "+bindings.getTagNames(category)+" as contents:"+XmlUtil.toString(argElement.getParentNode()), argElement);
} else {
Descriptor descriptor = (Descriptor) parseElement(descriptorElement, parse, category);
argDescriptor.setDescriptor(descriptor);
Modified: jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/builder/BuilderTest.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/builder/BuilderTest.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/builder/BuilderTest.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -87,7 +87,7 @@
ActivityImpl decisionActivity = (ActivityImpl) processDefinition.getActivity("x");
assertNotNull(decisionActivity);
- List<Transition> outgoingTransitions = decisionActivity.getOutgoingTransitions();
+ List<? extends Transition> outgoingTransitions = decisionActivity.getOutgoingTransitions();
assertNotNull(outgoingTransitions);
assertEquals("expected 4 transitions: "+outgoingTransitions, 4, outgoingTransitions.size());
Transition toA = outgoingTransitions.get(0);
@@ -106,13 +106,13 @@
assertNull(toX.getName());
assertEquals("x", toX.getDestination().getName());
- Map<String, Transition> outgoingTransitionsMap = decisionActivity.getOutgoingTransitionsMap();
+ Map<String, ? extends Transition> outgoingTransitionsMap = decisionActivity.getOutgoingTransitionsMap();
assertSame(toA, outgoingTransitionsMap.get(null));
assertSame(toB, outgoingTransitionsMap.get("to b"));
assertSame(toC, outgoingTransitionsMap.get("to c"));
ActivityImpl b = (ActivityImpl) processDefinition.getActivity("b");
- List<Transition> incomingTransitions = b.getIncomingTransitions();
+ List<? extends Transition> incomingTransitions = b.getIncomingTransitions();
assertNotNull(incomingTransitions);
assertEquals("x", incomingTransitions.get(0).getSource().getName());
assertEquals("a", incomingTransitions.get(1).getSource().getName());
Modified: jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/internal/wire/BasicTypeWireTest.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/internal/wire/BasicTypeWireTest.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/internal/wire/BasicTypeWireTest.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -219,7 +219,7 @@
"</objects>"
);
- assertEquals(new Long((long) 12), wireContext.get("lenght of surgery cut"));
+ assertEquals(new Long(12), wireContext.get("lenght of surgery cut"));
}
public void testLongWithoutValue() {
Modified: jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/internal/wire/ContextBlockSubscriptionTest.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/internal/wire/ContextBlockSubscriptionTest.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/internal/wire/ContextBlockSubscriptionTest.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -21,14 +21,12 @@
*/
package org.jbpm.pvm.internal.wire;
-
import org.jbpm.pvm.internal.env.Context;
import org.jbpm.pvm.internal.env.EnvironmentImpl;
import org.jbpm.pvm.internal.env.EnvironmentFactory;
import org.jbpm.pvm.internal.processengine.ProcessEngineImpl;
import org.jbpm.pvm.internal.wire.Descriptor;
import org.jbpm.pvm.internal.wire.WireContext;
-import org.jbpm.pvm.internal.wire.WireDefinition;
import org.jbpm.pvm.internal.wire.WireException;
import org.jbpm.pvm.internal.wire.WireObjectEventInfo;
import org.jbpm.pvm.internal.wire.xml.WireParser;
@@ -55,7 +53,7 @@
// <subscribe /> will use the scope as the observable
// In this test, there is no eager initialization
- WireContext context = new WireContext((WireDefinition) WireParser.getInstance().parseXmlString(
+ WireContext context = new WireContext(WireParser.parseXmlString(
" <transaction-context>" +
" <object name='recorder' class='"+Recorder.class.getName()+"'>" +
" <subscribe context='foo'/>" +
@@ -69,7 +67,6 @@
} catch (WireException e) {
assertTextPresent("couldn't get context foo for subscribe because no environment available in context ", e.getMessage());
}
-
}
public void testEventReception() {
Modified: jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/internal/wire/DelayedInitTest.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/internal/wire/DelayedInitTest.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/internal/wire/DelayedInitTest.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -99,14 +99,12 @@
" </object>"+
"</objects>"
);
- Object b = wireContext.get("b");
-
+ B b = (B) wireContext.get("b");
assertNotNull(b);
- assertEquals(B.class, b.getClass());
- Object a = ((B)b).a;
+
+ A a = b.a;
assertNotNull(a);
- assertEquals(A.class, a.getClass());
- assertEquals(b, ((A)((B)b).a).b);
+ assertEquals(b, a.b);
assertEquals(a, wireContext.get("a"));
}
@@ -130,14 +128,12 @@
" </object>"+
"</objects>"
);
- Object b = wireContext.get("b");
-
+ B b = (B) wireContext.get("b");
assertNotNull(b);
- assertEquals(B.class, b.getClass());
- Object a = ((B)b).a;
+
+ A a = b.a;
assertNotNull(a);
- assertEquals(A.class, a.getClass());
- assertEquals(b, ((A)((B)b).a).b);
+ assertEquals(b, b.a.b);
assertEquals(a, wireContext.get("a"));
}
@@ -162,14 +158,12 @@
" </object>"+
"</objects>"
);
- Object b = wireContext.get("b");
-
+ B b = (B) wireContext.get("b");
assertNotNull(b);
- assertEquals(B.class, b.getClass());
- Object a = ((B)b).a;
+
+ A a = b.a;
assertNotNull(a);
- assertEquals(A.class, a.getClass());
- assertEquals(b, ((A)((B)b).a).b);
+ assertEquals(b, b.a.b);
assertEquals(a, wireContext.get("a"));
}
Modified: jbpm4/trunk/modules/test-base/pom.xml
===================================================================
--- jbpm4/trunk/modules/test-base/pom.xml 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/test-base/pom.xml 2010-06-18 01:27:36 UTC (rev 6424)
@@ -1,16 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- ====================================================================== -->
+<!-- jBPM: Workflow in Java -->
<!-- -->
-<!-- JBoss, the OpenSource J2EE webOS -->
-<!-- -->
<!-- Distributable under LGPL license. -->
<!-- See terms of license at http://www.gnu.org. -->
-<!-- -->
<!-- ====================================================================== -->
<!-- $Id$ -->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<name>jBPM 4 - Test Base</name>
<groupId>org.jbpm.jbpm4</groupId>
@@ -41,7 +41,14 @@
<artifactId>jbpm-log</artifactId>
<version>${project.version}</version>
</dependency>
+
<dependency>
+ <groupId>cglib</groupId>
+ <artifactId>cglib</artifactId>
+ <version>2.1.1</version>
+ <scope>runtime</scope>
+ </dependency>
+ <dependency>
<groupId>jboss</groupId>
<artifactId>jboss-j2ee</artifactId>
<scope>provided</scope>
@@ -57,6 +64,7 @@
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-jdk14</artifactId>
+ <scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
@@ -78,11 +86,12 @@
<groupId>org.mockejb</groupId>
<artifactId>mockejb</artifactId>
<version>0.6-beta2</version>
+ <exclusions>
+ <exclusion>
+ <groupId>cglib</groupId>
+ <artifactId>cglib-full</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
- <dependency>
- <groupId>cglib</groupId>
- <artifactId>cglib-nodep</artifactId>
- <version>2.1_3</version>
- </dependency>
- </dependencies>
+ </dependencies>
</project>
\ No newline at end of file
Modified: jbpm4/trunk/modules/test-base/src/main/java/org/jbpm/test/Db.java
===================================================================
--- jbpm4/trunk/modules/test-base/src/main/java/org/jbpm/test/Db.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/test-base/src/main/java/org/jbpm/test/Db.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -38,18 +38,14 @@
import org.hibernate.mapping.ForeignKey;
import org.hibernate.mapping.Table;
import org.jbpm.api.ProcessEngine;
-import org.jbpm.internal.log.Log;
-
/**
* @author Tom Baeyens
*/
public class Db {
- private static final Log log = Log.getLog(Db.class.getName());
-
- static Map<ProcessEngine, String[]> cleanSqlCache = new HashMap<ProcessEngine, String[]>();
- static Map<ProcessEngine, String[]> tableNamesCache = new HashMap<ProcessEngine, String[]>();
+ private static final Map<ProcessEngine, String[]> cleanSqlCache = new HashMap<ProcessEngine, String[]>();
+ private static final Map<ProcessEngine, String[]> tableNamesCache = new HashMap<ProcessEngine, String[]>();
public static void clean(ProcessEngine processEngine) {
SessionFactory sessionFactory = processEngine.get(SessionFactory.class);
@@ -70,28 +66,25 @@
// loop over all foreign key constraints
List<String> dropForeignKeysSql = new ArrayList<String>();
List<String> createForeignKeysSql = new ArrayList<String>();
- Iterator<Table> iter = configuration.getTableMappings();
//if no session-factory is build, the configuration is not fully initialized.
//Hence, the ForeignKey's won't have a referenced table. This is calculated on
//second pass.
configuration.buildMappings();
-
- while (iter.hasNext()) {
+ for (Iterator<?> iter = configuration.getTableMappings(); iter.hasNext();) {
Table table = (Table) iter.next();
if (table.isPhysicalTable()) {
String catalog = table.getCatalog();
String schema = table.getSchema();
- Iterator<ForeignKey> subIter = table.getForeignKeyIterator();
- while (subIter.hasNext()) {
+
+ for (Iterator<?> subIter = table.getForeignKeyIterator(); subIter.hasNext();) {
ForeignKey fk = (ForeignKey) subIter.next();
if (fk.isPhysicalConstraint()) {
// collect the drop foreign key constraint sql
dropForeignKeysSql.add(fk.sqlDropString(dialect, catalog, schema));
// MySQLDialect creates an index for each foreign key.
- // see
- // http://opensource.atlassian.com/projects/hibernate/browse/HHH-2155
+ // see http://opensource.atlassian.com/projects/hibernate/browse/HHH-2155
// This index should be dropped or an error will be thrown during
// the creation phase
if (dialect instanceof MySQLDialect) {
@@ -105,8 +98,7 @@
}
List<String> deleteSql = new ArrayList<String>();
- iter = configuration.getTableMappings();
- while (iter.hasNext()) {
+ for (Iterator<?> iter = configuration.getTableMappings(); iter.hasNext();) {
Table table = (Table) iter.next();
if (table.isPhysicalTable()) {
deleteSql.add("delete from " + table.getName());
@@ -123,7 +115,7 @@
cleanSqlList.addAll(deleteSql);
cleanSqlList.addAll(createForeignKeysSql);
- cleanSql = (String[]) cleanSqlList.toArray(new String[cleanSqlList.size()]);
+ cleanSql = cleanSqlList.toArray(new String[cleanSqlList.size()]);
cleanSqlCache.put(processEngine, cleanSql);
}
@@ -154,8 +146,7 @@
// loop over all foreign key constraints
List<String> tableNamesList = new ArrayList<String>();
- Iterator iter = configuration.getTableMappings();
- while (iter.hasNext()) {
+ for (Iterator<?> iter = configuration.getTableMappings(); iter.hasNext();) {
Table table = (Table) iter.next();
if (table.isPhysicalTable()) {
tableNamesList.add(table.getName());
Modified: jbpm4/trunk/modules/test-db/pom.xml
===================================================================
--- jbpm4/trunk/modules/test-db/pom.xml 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/test-db/pom.xml 2010-06-18 01:27:36 UTC (rev 6424)
@@ -1,16 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- ====================================================================== -->
+<!-- jBPM: Workflow in Java -->
<!-- -->
-<!-- JBoss, the OpenSource J2EE webOS -->
-<!-- -->
<!-- Distributable under LGPL license. -->
<!-- See terms of license at http://www.gnu.org. -->
-<!-- -->
<!-- ====================================================================== -->
<!-- $Id$ -->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<name>jBPM 4 - Test DB</name>
<groupId>org.jbpm.jbpm4</groupId>
@@ -51,6 +51,7 @@
<artifactId>jbpm-console-reports</artifactId>
<scope>test</scope>
</dependency>
+
<dependency>
<groupId>org.drools</groupId>
<artifactId>drools-core</artifactId>
@@ -58,11 +59,11 @@
<dependency>
<groupId>org.drools</groupId>
<artifactId>drools-compiler</artifactId>
+ <scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.subethamail</groupId>
<artifactId>subethasmtp-wiser</artifactId>
- <scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
@@ -70,7 +71,7 @@
<scope>test</scope>
</dependency>
</dependencies>
-
+
<build>
<plugins>
<plugin>
@@ -87,7 +88,7 @@
<exclude>jbpm.*</exclude>
<exclude>logging.properties</exclude>
<exclude>META-INF/*</exclude>
- </excludes>
+ </excludes>
</configuration>
</execution>
</executions>
@@ -147,7 +148,7 @@
<property name="install.src.dir" value="../distro/src/main/files/install/src" />
<property name="jdbc.properties.dir" value="target/jdbc.properties" />
<property name="logging" value="none" /> <!-- then the original logging.properties in the resources of this project will be used -->
- </ant>
+ </ant>
</tasks>
</configuration>
</execution>
@@ -183,27 +184,26 @@
<property name="install.src.dir" value="../distro/src/main/files/install/src" />
<property name="jdbc.properties.dir" value="../distro/src/main/files/install/jdbc" />
<property name="logging" value="none" />
- </ant>
+ </ant>
</tasks>
</configuration>
</execution>
</executions>
</plugin>
- <plugin>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <failIfNoTests>false</failIfNoTests>
- <trimStackTrace>false</trimStackTrace>
- <redirectTestOutputToFile>true</redirectTestOutputToFile>
- <excludes>
- <exclude>org/jbpm/test/reporting/SQLStmtTest.java</exclude>
- </excludes>
- </configuration>
- </plugin>
+
+ <plugin>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <failIfNoTests>false</failIfNoTests>
+ <trimStackTrace>false</trimStackTrace>
+ <redirectTestOutputToFile>true</redirectTestOutputToFile>
+ <excludes>
+ <exclude>org/jbpm/test/reporting/SQLStmtTest.java</exclude>
+ </excludes>
+ </configuration>
+ </plugin>
</plugins>
</build>
</profile>
-
</profiles>
-
</project>
Modified: jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/history/AvgDurationTest.java
===================================================================
--- jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/history/AvgDurationTest.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/history/AvgDurationTest.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -37,7 +37,7 @@
public class AvgDurationTest extends JbpmTestCase {
public void testAvgDuration() throws Exception {
- String deploymentId = deployJpdlXmlString(
+ deployJpdlXmlString(
"<process name='Insurance claim' key='ICL'>" +
" <start>" +
" <transition to='one' />" +
@@ -60,18 +60,18 @@
executeProcess();
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().uniqueResult();
- Map<String, Long> avgDurations = historyService.avgDurationPerActivity(processDefinition.getId());
+ Map<String, Number> avgDurations = historyService.avgDurationPerActivity(processDefinition.getId());
- Long avgDurationOne = avgDurations.get("one");
+ Number avgDurationOne = avgDurations.get("one");
assertNotNull(avgDurationOne);
- assertTrue("expected avg duration bigger then 40, but was "+avgDurationOne, avgDurationOne>40);
- Long avgDurationTwo = avgDurations.get("two");
+ assertTrue("expected avg duration bigger then 40, but was "+avgDurationOne, avgDurationOne.intValue()>40);
+ Number avgDurationTwo = avgDurations.get("two");
assertNotNull(avgDurationTwo);
- assertTrue("expected avg duration bigger then 10, but was "+avgDurationTwo, avgDurationTwo>10);
- Long avgDurationThree = avgDurations.get("three");
+ assertTrue("expected avg duration bigger then 10, but was "+avgDurationTwo, avgDurationTwo.intValue()>10);
+ Number avgDurationThree = avgDurations.get("three");
assertNotNull(avgDurationThree);
- assertTrue("expected avg duration bigger then 0, but was "+avgDurationThree, avgDurationThree>=0);
+ assertTrue("expected avg duration bigger then 0, but was "+avgDurationThree, avgDurationThree.intValue()>=0);
assertEquals(3, avgDurations.size());
}
Modified: jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/history/ChoiceDistributionTest.java
===================================================================
--- jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/history/ChoiceDistributionTest.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/history/ChoiceDistributionTest.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -62,13 +62,11 @@
executionService.startProcessInstanceByKey("TRS", variables);
executionService.startProcessInstanceByKey("TRS", variables);
- Map<String, Integer> choiceDistribution = historyService.choiceDistribution("TRS-1", "How far?");
+ Map<String, Number> choiceDistribution = historyService.choiceDistribution("TRS-1", "How far?");
- assertEquals(1, (int)choiceDistribution.get("far"));
- assertEquals(3, (int)choiceDistribution.get("nearby"));
- assertEquals(2, (int)choiceDistribution.get("other country"));
-
+ assertEquals(1, choiceDistribution.get("far").intValue());
+ assertEquals(3, choiceDistribution.get("nearby").intValue());
+ assertEquals(2, choiceDistribution.get("other country").intValue());
}
-
}
Modified: jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/variables/HistoryVariableTest.java
===================================================================
--- jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/variables/HistoryVariableTest.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/variables/HistoryVariableTest.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -6,6 +6,7 @@
import java.util.Map;
import java.util.Set;
+import org.jbpm.api.JbpmException;
import org.jbpm.test.JbpmTestCase;
public class HistoryVariableTest extends JbpmTestCase {
@@ -223,11 +224,11 @@
String wrongProcessInstanceId = "var.one.1";
try {
-
historyService.getVariable(wrongProcessInstanceId, "test");
fail("should fail since it uses wrong process instance id");
- } catch (Exception e) {
- assertEquals("process instance "+wrongProcessInstanceId+" doesn't exist in history", e.getMessage());
+ } catch (JbpmException e) {
+ String message = e.getMessage();
+ assertTrue(message, message.contains(wrongProcessInstanceId));
}
}
Modified: jbpm4/trunk/modules/test-load/src/test/java/org/jbpm/test/load/async/ExclusiveMessagesTest.java
===================================================================
--- jbpm4/trunk/modules/test-load/src/test/java/org/jbpm/test/load/async/ExclusiveMessagesTest.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/test-load/src/test/java/org/jbpm/test/load/async/ExclusiveMessagesTest.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -29,8 +29,8 @@
import org.jbpm.api.Execution;
import org.jbpm.api.activity.ActivityExecution;
import org.jbpm.api.activity.ExternalActivityBehaviour;
-import org.jbpm.api.cmd.Command;
import org.jbpm.api.cmd.Environment;
+import org.jbpm.api.cmd.VoidCommand;
import org.jbpm.pvm.internal.builder.ProcessDefinitionBuilder;
import org.jbpm.pvm.internal.cmd.StartProcessInstanceCmd;
import org.jbpm.pvm.internal.job.CommandMessage;
@@ -67,9 +67,10 @@
jobExecutor.stop(true);
}
- commandService.execute(new Command<Object>() {
+ commandService.execute(new VoidCommand() {
+ private static final long serialVersionUID = 1L;
- public Object execute(Environment environment) throws Exception {
+ public void executeVoid(Environment environment) {
// exclusiveMessageIds maps execution keys to a set of thread ids.
// the idea is that for each execution, all the exclusive jobs will
// be executed by 1 thread sequentially.
@@ -80,7 +81,6 @@
assertNotNull("no thread id set for " + executionKey + " in: " + exclusiveThreadIds, threadIds);
assertEquals("exclusive messages for " + executionKey + " have been executed by multiple threads: " + threadIds, 1, threadIds.size());
}
- return null;
}
});
}
@@ -98,9 +98,11 @@
}
public void insertDecisionTestMessages() {
- commandService.execute(new Command<Object>() {
- public Object execute(Environment environment) throws Exception {
- ProcessDefinitionImpl processDefinition = (ProcessDefinitionImpl) ProcessDefinitionBuilder
+ commandService.execute(new VoidCommand() {
+ private static final long serialVersionUID = 1L;
+
+ public void executeVoid(Environment environment) {
+ ProcessDefinitionImpl processDefinition = ProcessDefinitionBuilder
.startProcess("excl")
.startActivity("wait", WaitState.class)
.initial()
@@ -110,13 +112,13 @@
Session session = environment.get(Session.class);
session.save(processDefinition);
- return null;
}
});
- commandService.execute(new Command<Object>() {
+ commandService.execute(new VoidCommand() {
+ private static final long serialVersionUID = 1L;
- public Object execute(Environment environment) throws Exception {
+ public void executeVoid(Environment environment) throws Exception {
MessageSession messageSession = environment.get(MessageSession.class);
for (int i = 0; i < nbrOfTestExecutions; i++) {
Execution execution = new StartProcessInstanceCmd("excl:1", null, "execution-" + i).execute(environment);
@@ -126,7 +128,6 @@
messageSession.send(exclusiveTestMessage);
}
}
- return null;
}
});
}
Modified: jbpm4/trunk/modules/test-pojo/src/main/java/org/jbpm/test/activities/ScopeVariableDeclarationTest.java
===================================================================
--- jbpm4/trunk/modules/test-pojo/src/main/java/org/jbpm/test/activities/ScopeVariableDeclarationTest.java 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/modules/test-pojo/src/main/java/org/jbpm/test/activities/ScopeVariableDeclarationTest.java 2010-06-18 01:27:36 UTC (rev 6424)
@@ -130,7 +130,7 @@
expectedVariables.put("flight", "B52");
assertEquals(expectedVariables, processInstance.getVariables());
- OpenExecution outerExecution = (OpenExecution) processInstance.getExecution("outer");
+ OpenExecution outerExecution = processInstance.getExecution("outer");
expectedVariables.put("duration", "22 minutes");
assertEquals(expectedVariables, outerExecution.getVariables());
Modified: jbpm4/trunk/pom.xml
===================================================================
--- jbpm4/trunk/pom.xml 2010-06-18 00:40:13 UTC (rev 6423)
+++ jbpm4/trunk/pom.xml 2010-06-18 01:27:36 UTC (rev 6424)
@@ -1,12 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- ====================================================================== -->
+<!-- jBPM: Workflow in Java -->
<!-- -->
-<!-- JBoss, the OpenSource J2EE webOS -->
-<!-- -->
<!-- Distributable under LGPL license. -->
<!-- See terms of license at http://www.gnu.org. -->
-<!-- -->
<!-- ====================================================================== -->
<!-- $Id$ -->
@@ -59,15 +57,15 @@
<hibernate.version>3.3.1.GA</hibernate.version>
<hsqldb.version>1.8.0.7</hsqldb.version>
<jbpm.gpd.version>4.3</jbpm.gpd.version>
- <jboss.identity.version>1.0.0.Beta1</jboss.identity.version>
<jboss.j2ee.version>4.2.2.GA</jboss.j2ee.version>
<jboss.client.version>5.0.1.GA</jboss.client.version>
- <jsr233.version>2.0.5</jsr233.version>
<juel.version>2.2.1</juel.version>
<juel.engine.version>2.1.0</juel.engine.version>
<junit.version>3.8.2</junit.version>
+ <livetribe.version>2.0.5</livetribe.version>
<log4j.version>1.2.14</log4j.version>
<mail.version>1.4.1</mail.version>
+ <picketlink.version>1.1.1.GA</picketlink.version>
<report.engine.version>2.3.2</report.engine.version>
<servlet-api.version>2.5</servlet-api.version>
<signavio.jbpmeditor.version>1.1</signavio.jbpmeditor.version>
@@ -77,7 +75,6 @@
<wiser.version>1.2</wiser.version>
<woodstox.version>3.2.6</woodstox.version>
- <jtds.version>1.2.2</jtds.version>
<mysql.connector.version>5.0.8</mysql.connector.version>
<oracle.version>10.2.0.4</oracle.version>
<postgresql.version>8.3-603.jdbc3</postgresql.version>
@@ -305,16 +302,6 @@
<version>${hibernate.version}</version>
</dependency>
<dependency>
- <groupId>org.jboss.identity.idm</groupId>
- <artifactId>idm-core</artifactId>
- <version>${jboss.identity.version}</version>
- </dependency>
- <dependency>
- <groupId>org.jboss.identity.idm</groupId>
- <artifactId>idm-hibernate</artifactId>
- <version>${jboss.identity.version}</version>
- </dependency>
- <dependency>
<groupId>org.jboss.javaee</groupId>
<artifactId>jboss-javaee</artifactId>
<version>${jboss.client.version}</version>
@@ -359,8 +346,9 @@
<dependency>
<groupId>org.livetribe</groupId>
<artifactId>livetribe-jsr223</artifactId>
- <version>${jsr233.version}</version>
- </dependency><dependency>
+ <version>${livetribe.version}</version>
+ </dependency>
+ <dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>${log4j.version}</version>
@@ -371,6 +359,16 @@
<version>${mail.version}</version>
</dependency>
<dependency>
+ <groupId>org.picketlink.idm</groupId>
+ <artifactId>picketlink-idm-core</artifactId>
+ <version>${picketlink.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.picketlink.idm</groupId>
+ <artifactId>picketlink-idm-hibernate</artifactId>
+ <version>${picketlink.version}</version>
+ </dependency>
+ <dependency>
<groupId>org.eclipse.birt</groupId>
<artifactId>report-engine</artifactId>
<type>zip</type>
@@ -380,7 +378,8 @@
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>${servlet-api.version}</version>
- </dependency><dependency>
+ </dependency>
+ <dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j.version}</version>
@@ -423,11 +422,6 @@
<version>${hsqldb.version}</version>
</dependency>
<dependency>
- <groupId>net.sourceforge.jtds</groupId>
- <artifactId>jtds</artifactId>
- <version>${jtds.version}</version>
- </dependency>
- <dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${mysql.connector.version}</version>
@@ -450,6 +444,7 @@
<target>1.5</target>
</configuration>
</plugin>
+
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
13 years, 10 months
JBoss JBPM SVN: r6422 - in jbpm4/trunk/modules: test-db/src/test/java/org/jbpm/test/variables and 1 other directory.
by do-not-reply@jboss.org
Author: swiderski.maciej
Date: 2010-06-17 13:22:46 -0400 (Thu, 17 Jun 2010)
New Revision: 6422
Modified:
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/GetHistoryVariablesCmd.java
jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/variables/HistoryVariableTest.java
Log:
JBPM-2506: refactored to be consistent with executionService variable operations and to prevent NPE when wrong data are given
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/GetHistoryVariablesCmd.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/GetHistoryVariablesCmd.java 2010-06-17 17:15:22 UTC (rev 6421)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/GetHistoryVariablesCmd.java 2010-06-17 17:22:46 UTC (rev 6422)
@@ -26,6 +26,7 @@
import java.util.Map;
import java.util.Set;
+import org.jbpm.api.JbpmException;
import org.jbpm.api.cmd.Environment;
import org.jbpm.api.history.HistoryProcessInstance;
import org.jbpm.pvm.internal.history.model.HistoryProcessInstanceImpl;
@@ -48,6 +49,12 @@
public GetHistoryVariablesCmd(String processInstanceId, Set<String> variableNames) {
super();
this.processInstanceId = processInstanceId;
+ if (processInstanceId==null) {
+ throw new JbpmException("processInstanceId is null");
+ }
+ if (variableNames==null) {
+ throw new JbpmException("variableNames is null");
+ }
this.variableNames = variableNames;
}
@@ -56,7 +63,9 @@
HistoryProcessInstanceQueryImpl queryImpl = new HistoryProcessInstanceQueryImpl();
HistoryProcessInstance historyProcessInstance = queryImpl.processInstanceId(processInstanceId).uniqueResult();
-
+ if (historyProcessInstance==null) {
+ throw new JbpmException("process instance "+processInstanceId+" doesn't exist in history");
+ }
Iterator<HistoryVariableImpl> variables = ((HistoryProcessInstanceImpl) historyProcessInstance).getHistoryVariables().iterator();
Map<String, Object> variableMap = new HashMap<String, Object>();
Modified: jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/variables/HistoryVariableTest.java
===================================================================
--- jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/variables/HistoryVariableTest.java 2010-06-17 17:15:22 UTC (rev 6421)
+++ jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/variables/HistoryVariableTest.java 2010-06-17 17:22:46 UTC (rev 6422)
@@ -199,4 +199,68 @@
String historyValue = (String) historyService.getVariable("var.one", "test");
assertEquals(variableValue.toString(), historyValue);
}
+ public void testDeclaredVariableWithHistoryWrongProcessInstanceId() {
+ deployJpdlXmlString("<process name='var'>"
+ + " <variable name='test' type='string' init-expr='history' history='true'/>"
+ + " <start name='a'>"
+ + " <transition to='b' />"
+ + " </start>"
+ + " <state name='b'/>"
+ + "</process>");
+
+ executionService.startProcessInstanceByKey("var", "one");
+
+ Set<String> variableNames = executionService.getVariableNames("var.one");
+ assertEquals(1, variableNames.size());
+ assertEquals("test", variableNames.iterator().next());
+
+ String executionValue = (String) executionService.getVariable("var.one", "test");
+ assertEquals("history", executionValue);
+
+ Set<String> historyVariables = historyService.getVariableNames("var.one");
+ assertEquals(1, historyVariables.size());
+ assertEquals("test", historyVariables.iterator().next());
+
+ String wrongProcessInstanceId = "var.one.1";
+ try {
+
+ historyService.getVariable(wrongProcessInstanceId, "test");
+ fail("should fail since it uses wrong process instance id");
+ } catch (Exception e) {
+ assertEquals("process instance "+wrongProcessInstanceId+" doesn't exist in history", e.getMessage());
+ }
+ }
+
+ public void testDeclaredVariableWithHistoryWrongProcess() {
+ deployJpdlXmlString("<process name='var'>"
+ + " <variable name='test' type='string' init-expr='history' history='true'/>"
+ + " <start name='a'>"
+ + " <transition to='b' />"
+ + " </start>"
+ + " <state name='b'/>"
+ + "</process>");
+
+ executionService.startProcessInstanceByKey("var", "one");
+
+ Set<String> variableNames = executionService.getVariableNames("var.one");
+ assertEquals(1, variableNames.size());
+ assertEquals("test", variableNames.iterator().next());
+
+ String executionValue = (String) executionService.getVariable("var.one", "test");
+ assertEquals("history", executionValue);
+ try {
+
+ historyService.getVariables(null, null);
+ fail("should fail since process instance id is null");
+ } catch (Exception e) {
+ assertEquals("processInstanceId is null", e.getMessage());
+ }
+ try {
+
+ historyService.getVariables("var.one", null);
+ fail("should fail since variable names set is null");
+ } catch (Exception e) {
+ assertEquals("variableNames is null", e.getMessage());
+ }
+ }
}
13 years, 10 months
JBoss JBPM SVN: r6421 - in jbpm4/trunk/modules: test-db/src/test/java/org/jbpm/test/activity/foreach and 1 other directory.
by do-not-reply@jboss.org
Author: swiderski.maciej
Date: 2010-06-17 13:15:22 -0400 (Thu, 17 Jun 2010)
New Revision: 6421
Modified:
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ExecutionImpl.java
jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/activity/foreach/ForEachTest.java
Log:
JBPM-2414: fix for left tasks after execution is ended. while ending execution task attached to it will be skipped if not yet completed
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ExecutionImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ExecutionImpl.java 2010-06-16 23:45:19 UTC (rev 6420)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ExecutionImpl.java 2010-06-17 17:15:22 UTC (rev 6421)
@@ -74,6 +74,7 @@
import org.jbpm.pvm.internal.task.AssignableDefinitionImpl;
import org.jbpm.pvm.internal.task.SwimlaneDefinitionImpl;
import org.jbpm.pvm.internal.task.SwimlaneImpl;
+import org.jbpm.pvm.internal.task.TaskImpl;
import org.jbpm.pvm.internal.type.Variable;
import org.jbpm.pvm.internal.util.EqualsUtil;
import org.jbpm.pvm.internal.util.Priority;
@@ -362,10 +363,19 @@
this.propagation = Propagation.EXPLICIT;
DbSession dbSession = EnvironmentImpl.getFromCurrent(DbSession.class, false);
+
+
if (parent!=null) {
parent.removeExecution(this);
if (dbSession!=null) {
+
+ // make sure task attached to this execution are completed or skipped
+ TaskImpl task = dbSession.findTaskByExecution(this);
+ if (task != null && !task.isCompleted()) {
+ task.skip(null);
+ }
+
dbSession.delete(this);
}
}
Modified: jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/activity/foreach/ForEachTest.java
===================================================================
--- jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/activity/foreach/ForEachTest.java 2010-06-16 23:45:19 UTC (rev 6420)
+++ jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/activity/foreach/ForEachTest.java 2010-06-17 17:15:22 UTC (rev 6421)
@@ -31,6 +31,7 @@
import org.jbpm.api.JbpmException;
import org.jbpm.api.ProcessInstance;
import org.jbpm.api.history.HistoryProcessInstance;
+import org.jbpm.api.history.HistoryTask;
import org.jbpm.api.task.Task;
import org.jbpm.test.JbpmTestCase;
@@ -384,4 +385,54 @@
// expected result
}
}
+
+ public void testForEachJoinMultiplicityLeftTask() {
+ deployJpdlXmlString(""
+ + "<process name='ForEachJoinMultiplicity' xmlns='http://jbpm.org/jpdl/4.4'>"
+ + " <start g='179,17,32,29' name='start1'>"
+ + " <transition g='-43,-18' name='to foreach1' to='foreach1'/>"
+ + " </start>"
+ + " <foreach g='185,95,49,50' name='foreach1' var='assign' in='#{actors}'>"
+ + " <transition name='left' to='task1' g='-44,-18'/>"
+ + " </foreach>"
+ + " <task name='task1' g='90,177,73,44' assignee='#{assign}'>"
+ + " <transition name='to state' to='join2' g='-43,-18'/>"
+ + " </task>"
+ + " <join name='join2' g='192,511,57,44' multiplicity='#{actors.size()-1}'>"
+ + " <transition name='to Big car' to='Big car' g='-42,-18'/>"
+ + " </join>"
+ + " <state name='Big car' > "
+ + " <transition name='to end1' to='end1' g='-43,-18'/>"
+!
+ " </state> "
+ + " <end g='193,606,38,33' name='end1'/>"
+ + "</process>");
+
+ Map<String, ?> variables = Collections.singletonMap("actors", Arrays.asList("alex", "mike"));
+ ProcessInstance processInstance = executionService.startProcessInstanceByKey("ForEachJoinMultiplicity", variables);
+
+ Task taskAlex = taskService.createTaskQuery().assignee("alex").uniqueResult();
+ assertEquals("task1", taskAlex.getActivityName());
+ taskService.completeTask(taskAlex.getId());
+
+ Task taskMike = taskService.createTaskQuery().assignee("mike").uniqueResult();
+ assertNull(taskMike);
+
+ processInstance = executionService.findProcessInstanceById(processInstance.getId());
+
+ executionService.signalExecutionById(processInstance.getId());
+
+ HistoryProcessInstance history = historyService.createHistoryProcessInstanceQuery()
+ .processInstanceId(processInstance.getId())
+ .uniqueResult();
+ assertEquals(ProcessIns!
tance.STATE_ENDED, history.getState());
+ assertEquals("end!
1", hist
ory.getEndActivityName());
+
+ List<HistoryTask> historyTasks = historyService.createHistoryTaskQuery().assignee("alex").list();
+ assertEquals(1, historyTasks.size());
+ assertEquals(HistoryTask.STATE_COMPLETED, historyTasks.get(0).getState());
+
+ historyTasks = historyService.createHistoryTaskQuery().assignee("mike").list();
+ assertEquals(1, historyTasks.size());
+ assertEquals(HistoryTask.STATE_OBSOLETE, historyTasks.get(0).getState());
+ }
}
13 years, 10 months
JBoss JBPM SVN: r6420 - jbpm4/trunk/modules/distro/src/main/files/install.
by do-not-reply@jboss.org
Author: alex.guizar(a)jboss.com
Date: 2010-06-16 19:45:19 -0400 (Wed, 16 Jun 2010)
New Revision: 6420
Modified:
jbpm4/trunk/modules/distro/src/main/files/install/build.xml
Log:
JBPM-2893: fix jboss demo setup
Modified: jbpm4/trunk/modules/distro/src/main/files/install/build.xml
===================================================================
--- jbpm4/trunk/modules/distro/src/main/files/install/build.xml 2010-06-16 23:22:42 UTC (rev 6419)
+++ jbpm4/trunk/modules/distro/src/main/files/install/build.xml 2010-06-16 23:45:19 UTC (rev 6420)
@@ -5,9 +5,11 @@
<property file="${user.home}/.jbpm4/build.properties" />
<!-- USER CUSTOMIZABLE PROPERTIES -->
- <property name="database" value="hsqldb" /> <!-- {hsqldb | mysql | oracle | postgresql} -->
+ <!-- {hsqldb | mysql | oracle | postgresql} -->
+ <property name="database" value="hsqldb" />
<echo message="database......... ${database}" />
- <property name="tx" value="standalone" /> <!-- {standalone | jta | spring} -->
+ <!-- {standalone | jta | spring} -->
+ <property name="tx" value="standalone" />
<echo message="tx............... ${tx}" />
<property name="mail.smtp.host" value="localhost" />
<echo message="mail.smtp.host... ${mail.smtp.host}" />
@@ -16,8 +18,10 @@
<property name="jbpm.version" value="4.4-SNAPSHOT" />
<property name="jbpm.parent.dir" value="../.." />
<property name="jbpm.home" value="${jbpm.parent.dir}/jbpm-${jbpm.version}" />
- <property name="hibernate.connection.type" value="jdbc" /> <!-- jdbc | datasource -->
- <property name="logging" value="jdk" /> <!-- jdk | none -->
+ <!-- jdbc | datasource -->
+ <property name="hibernate.connection.type" value="jdbc" />
+ <!-- jdk | none -->
+ <property name="logging" value="jdk" />
<property name="cfg.dest.dir" value="${jbpm.home}/install/generated/cfg" />
<property name="install.src.dir" value="${jbpm.home}/install/src" />
<property name="mail.cfg" value="default" />
@@ -42,7 +46,7 @@
<property name="hsqldb.server.install.dir" value="${jbpm.home}/hsqldb-server" />
<property name="hsqldb.server.source.dir" value="${jbpm.home}/install/src/hsqldb-server" />
- <property name="jboss.version" value="5.0.0.GA" />
+ <property name="jboss.version" value="5.1.0.GA" />
<property name="jboss.parent.dir" value="${jbpm.home}" />
<property name="jboss.home" value="${jboss.parent.dir}/jboss-${jboss.version}" />
<property name="jboss.bind.address" value="localhost" />
@@ -151,7 +155,7 @@
<!-- ### DEMO SETUP JBOSS ##################################################### -->
<target name="demo.setup.jboss"
depends="install.jboss, install.jbpm.into.jboss"
- description="installs jboss, installs jbpm into jboss, starts jboss, creates the jBPM DB schema, deploys examples, loads example identities, installs and starts eclipse">
+ description="installs jboss and jbpm, starts jboss, creates the db schema, deploys examples, loads example identities, installs and starts eclipse">
<antcall target="internal.enable.jboss.debug.jboss500" />
<antcall target="internal.enable.jboss.debug.jboss510" />
<antcall target="install.hsqldb.server" />
@@ -165,8 +169,9 @@
</target>
<!-- ### DEMO TEARDOWN JBOSS ##################################################### -->
- <target name="demo.teardown.jboss" description="drops the jbpm db schema and stops jboss">
- <ant antfile="${jbpm.home}/db/build.xml" target="drop.jbpm.schema" />
+ <target name="demo.teardown.jboss" description="drops the db schema and stops jboss">
+ <antcall target="drop.jbpm.schema" />
+ <antcall target="stop.hsqldb.server" />
<antcall target="stop.jboss" />
</target>
@@ -357,7 +362,8 @@
<include name="jbpm-console-form-plugin.jar" />
<include name="jbpm-console-graphView-plugin.jar" />
<include name="joda-time.jar" />
- <include name="juel*.jar" />
+ <include name="juel-engine.jar" />
+ <include name="juel-impl.jar" />
<include name="livetribe-jsr223.jar" />
</fileset>
</copy>
@@ -413,8 +419,7 @@
<!-- ### START JBOSS ################################################### -->
<target name="start.jboss"
description="starts jboss and waits till jboss is booted, then lets jboss run in the background">
- <exec executable="${jboss.home}/bin/run.bat"
- spawn="yes"
+ <exec executable="${jboss.home}/bin/run.bat" spawn="yes"
os="Windows 7,Windows Vista,Windows XP,Windows 2000">
<arg value="-b" />
<arg value="${jboss.bind.address}" />
@@ -423,11 +428,14 @@
<arg value="-b" />
<arg value="${jboss.bind.address}" />
</exec>
- <waitfor maxwait="5" maxwaitunit="minute" checkevery="30" checkeveryunit="second"
- timeoutproperty="jboss.timeout">
+ <waitfor maxwait="5"
+ maxwaitunit="minute"
+ checkevery="30"
+ checkeveryunit="second"
+ timeoutproperty="jboss.timeout">
<socket server="${jboss.bind.address}" port="8080" />
</waitfor>
- <fail if="jboss.timeout" message="jboss did not start within 5 minutes"/>
+ <fail if="jboss.timeout" message="jboss did not start within 5 minutes" />
</target>
<!-- ### STOP JBOSS ################################################### -->
@@ -561,26 +569,26 @@
<!-- Copy jbpm-console wars and configuration into /webapps -->
- <mkdir dir="${tomcat.home}/webapps/jbpm-console"/>
- <mkdir dir="${tomcat.home}/webapps/gwt-console-server"/>
+ <mkdir dir="${tomcat.home}/webapps/jbpm-console" />
+ <mkdir dir="${tomcat.home}/webapps/gwt-console-server" />
<unzip src="${jbpm.home}/lib/gwt-console-jbpm.war"
- dest="${tomcat.home}/webapps/jbpm-console"/>
+ dest="${tomcat.home}/webapps/jbpm-console" />
<unzip src="${jbpm.home}/lib/gwt-console-server-jbpm.war"
- dest="${tomcat.home}/webapps/gwt-console-server"/>
+ dest="${tomcat.home}/webapps/gwt-console-server" />
- <move todir="${tomcat.home}/lib">
- <fileset dir="${tomcat.home}/webapps/jbpm-console/WEB-INF/lib">
- <include name="guice*.jar"/>
- <include name="errai*.jar"/>
- <include name="mvel*.jar"/>
- </fileset>
- <fileset dir="${tomcat.home}/webapps/jbpm-console/WEB-INF/classes">
- <include name="ErraiService.properties"/>
- <include name="ErraiApp.properties"/>
- </fileset>
- </move>
+ <move todir="${tomcat.home}/lib">
+ <fileset dir="${tomcat.home}/webapps/jbpm-console/WEB-INF/lib">
+ <include name="guice*.jar" />
+ <include name="errai*.jar" />
+ <include name="mvel*.jar" />
+ </fileset>
+ <fileset dir="${tomcat.home}/webapps/jbpm-console/WEB-INF/classes">
+ <include name="ErraiService.properties" />
+ <include name="ErraiApp.properties" />
+ </fileset>
+ </move>
<!-- Copy Signavio war into /webapps -->
<antcall target="install.signavio.into.tomcat" />
@@ -628,7 +636,7 @@
<!-- ### START HSQLDB SERVER ################################################ -->
<target name="start.hsqldb.server" if="is.hsqldb">
- <java classname="org.hsqldb.Server">
+ <java classname="org.hsqldb.Server" fork="yes" spawn="yes">
<classpath location="${hsqldb.server.install.dir}/hsqldb.jar" />
<arg value="-address" />
<arg value="${hsql.bind.address}" />
@@ -637,8 +645,11 @@
<arg value="-dbname.0" />
<arg value="jbpmDatabase" />
</java>
- <waitfor maxwait="1" maxwaitunit="minute" checkevery="10" checkeveryunit="second"
- timeoutproperty="hsqldb.timeout">
+ <waitfor maxwait="1"
+ maxwaitunit="minute"
+ checkevery="10"
+ checkeveryunit="second"
+ timeoutproperty="hsqldb.timeout">
<socket server="${hsql.bind.address}" port="1701" />
</waitfor>
<fail if="hsqldb.timeout" message="hsqldb server did not start within one minute" />
@@ -812,20 +823,16 @@
<arg value="-data" />
<arg value="${jbpm.home}/workspace" />
</exec>
- <!-- Unix -->
- <chmod perm="+x">
- <fileset dir="${jbpm.home}/eclipse">
- <filename name="eclipse" />
- </fileset>
- <!-- Path is different for OS X -->
- <fileset dir="${jbpm.home}/eclipse/Eclipse.app/Contents/MacOS/">
- <filename name="eclipse" />
- </fileset>
- </chmod>
+ <!-- Linux -->
+ <chmod file="${jbpm.home}/eclipse/eclipse" perm="a+x" os="Linux" />
<exec executable="${jbpm.home}/eclipse/eclipse" os="Linux">
<arg value="-data" />
<arg value="${jbpm.home}/workspace" />
</exec>
+ <!-- Mac OS X -->
+ <chmod file="${jbpm.home}/eclipse/Eclipse.app/Contents/MacOS/eclipse"
+ perm="a+x"
+ os="Mac OS X" />
<exec executable="${jbpm.home}/eclipse/Eclipse.app/Contents/MacOS/eclipse" os="Mac OS X">
<arg value="-data" />
<arg value="${jbpm.home}/workspace" />
13 years, 10 months
JBoss JBPM SVN: r6419 - in jbpm4/trunk: modules/pvm/src/main/java/org/jbpm/pvm/internal/el and 1 other directories.
by do-not-reply@jboss.org
Author: alex.guizar(a)jboss.com
Date: 2010-06-16 19:22:42 -0400 (Wed, 16 Jun 2010)
New Revision: 6419
Added:
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/el/FactoryFinder.java
Removed:
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/util/FactoryFinder.java
Modified:
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/el/JbpmElFactoryImpl.java
jbpm4/trunk/pom.xml
Log:
JBPM-2800: make de.odysseus.el.ExpressionFactoryImpl the default service provider;
update factory finder code to match juel v2.2.1;
hide factory finder class
Copied: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/el/FactoryFinder.java (from rev 6417, jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/util/FactoryFinder.java)
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/el/FactoryFinder.java (rev 0)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/el/FactoryFinder.java 2010-06-16 23:22:42 UTC (rev 6419)
@@ -0,0 +1,189 @@
+/*
+ * 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.pvm.internal.el;
+
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.lang.reflect.Constructor;
+import java.lang.reflect.InvocationTargetException;
+import java.util.Properties;
+
+import javax.el.ELException;
+import javax.el.ExpressionFactory;
+
+/**
+ * FactoryFinder based on javax.el.FactoryFinder
+ */
+class FactoryFinder {
+
+ private FactoryFinder() {
+ }
+
+ /**
+ * Create an ExpressionFactory instance.
+ *
+ * @param properties Properties passed to the constructor of the implementation.
+ * @return an instance of ExpressionFactory
+ * @param className The name of the ExpressionFactory class.
+ * @param classLoader The class loader to be used to load the class.
+ * @return An instance of ExpressionFactory.
+ * @throws ELException if the class !
could not be found or if it is not a subclass of
+ * !
Express
ionFactory or if the class could not be instantiated.
+ */
+ private static ExpressionFactory newInstance(Properties properties, String className,
+ ClassLoader classLoader) {
+ Class<?> clazz;
+ try {
+ clazz = classLoader.loadClass(className.trim());
+ }
+ catch (ClassNotFoundException e) {
+ throw new ELException("expression factory class not found", e);
+ }
+
+ Class<? extends ExpressionFactory> factoryClass = clazz.asSubclass(ExpressionFactory.class);
+ try {
+ if (properties != null) {
+ try {
+ Constructor<? extends ExpressionFactory> constructor = factoryClass.getConstructor(Properties.class);
+ try {
+ return constructor.newInstance(properties);
+ }
+ catch (InvocationTargetException e) {
+ throw new ELException(constructor + " threw exception", e.getCause());
+ }
+ }
+ catch (NoSuchMethodException e) {
+ // do nothing
+ }!
+ }
+ return factoryClass.newInstance();
+ }
+ catch (InstantiationException e) {
+ throw new ELException("failed to instantiate: " + factoryClass, e);
+ }
+ catch (IllegalAccessException e) {
+ throw new ELException(FactoryFinder.class + " has no access to " + factoryClass, e);
+ }
+ }
+
+ /**
+ * Finds and initializes service provider for service given as <code>serviceName</code> with
+ * properties (if not null). Alternatively it will look up for property file from
+ * <code>${java.home}/lib/propertyFileName</code> prior to initialize.
+ *
+ * @param serviceName service name which provider should be found for
+ * @param defaultServiceProvider default service provider that should be returned in case
+ * <code>serviceName</code> provider was not found
+ * @param properties properties that will be passed to implementation class
+ * @param propertyFileName name of the property file can be found in
+ * <!
code>${java.home}/lib</code>
+ * @return new instance of imp!
lementat
ion class found for given serviceName or if not found
+ * instance of defaultServiceName if given
+ * @throws ELException in case of provider was not found
+ */
+ public static Object find(String serviceName, String defaultServiceProvider,
+ Properties properties, String propertyFileName) {
+ ClassLoader classLoader;
+ try {
+ classLoader = Thread.currentThread().getContextClassLoader();
+ }
+ catch (SecurityException e) {
+ classLoader = ExpressionFactory.class.getClassLoader();
+ }
+
+ String className = getClassName(serviceName, defaultServiceProvider, propertyFileName, classLoader);
+ return newInstance(properties, className, classLoader);
+ }
+
+ private static String getClassName(String serviceName, String defaultServiceProvider,
+ String propertyFileName, ClassLoader classLoader) {
+ InputStream serviceInput = classLoader.getResourceAsStream("META-INF/services/"
+ + serviceName);
+ if (serviceInput != nu!
ll) {
+ try {
+ BufferedReader reader = new BufferedReader(new InputStreamReader(serviceInput, "UTF-8"));
+ String className = reader.readLine();
+ if (className != null) return className;
+ reader.close();
+ }
+ catch (IOException e) {
+ // do nothing
+ }
+ finally {
+ try {
+ serviceInput.close();
+ }
+ catch (IOException e) {
+ // do nothing
+ }
+ }
+ }
+
+ try {
+ String home = System.getProperty("java.home");
+ if (home != null) {
+ File propertyFile = new File(home + File.separator + "lib", propertyFileName);
+ if (propertyFile.canRead()) {
+ InputStream propertyInput = null;
+ try {
+ propertyInput = new FileInputStream(propertyFile);
+ Properties props = new Properties();
+ props.load(propertyInput);
+
+ String className = props.getProperty(ExpressionFactory.class.ge!
tName());
+ if (className != null) return className!
;
+
}
+ catch (IOException e) {
+ // do nothing
+ }
+ finally {
+ if (propertyInput != null) {
+ try {
+ propertyInput.close();
+ }
+ catch (IOException e) {
+ // do nothing
+ }
+ }
+ }
+ }
+ }
+ }
+ catch (SecurityException se) {
+ // do nothing
+ }
+
+ try {
+ String className = System.getProperty(serviceName);
+ if (className != null) return className;
+ }
+ catch (SecurityException se) {
+ // do nothing
+ }
+
+ return defaultServiceProvider;
+ }
+}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/el/JbpmElFactoryImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/el/JbpmElFactoryImpl.java 2010-06-16 11:13:38 UTC (rev 6418)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/el/JbpmElFactoryImpl.java 2010-06-16 23:22:42 UTC (rev 6419)
@@ -21,8 +21,6 @@
*/
package org.jbpm.pvm.internal.el;
-import java.util.Properties;
-
import javax.el.ArrayELResolver;
import javax.el.BeanELResolver;
import javax.el.CompositeELResolver;
@@ -39,9 +37,7 @@
import org.jbpm.internal.log.Log;
import org.jbpm.pvm.internal.env.EnvironmentImpl;
import org.jbpm.pvm.internal.model.ScopeInstanceImpl;
-import org.jbpm.pvm.internal.util.FactoryFinder;
-
/**
* @author Tom Baeyens
*/
@@ -106,22 +102,20 @@
}
public ExpressionFactory createExpressionFactory() {
- // TODO these ExpressionFactory properties could be integrated in the configuration
- Properties properties = new Properties();
- properties.setProperty("javax.el.methodInvocations", "true");
- ExpressionFactory expressionFactory = null;
+ ExpressionFactory expressionFactory;
try {
- expressionFactory = ExpressionFactory.newInstance(properties);
-
+ expressionFactory = ExpressionFactory.newInstance();
} catch (NoSuchMethodError e) {
// to support previous version of el-api
- expressionFactory = (ExpressionFactory) FactoryFinder.find(ExpressionFactory.class.getName(), null, null, "el.properties");
+ expressionFactory = (ExpressionFactory) FactoryFinder.find(ExpressionFactory.class
+ .getName(),"de.odysseus.el.ExpressionFactoryImpl", null, "el.properties");
}
+
BeanManager beanManager = getBeanManager();
if (beanManager!=null) {
expressionFactory = beanManager.wrapExpressionFactory(expressionFactory);
}
-
+
return expressionFactory;
}
Deleted: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/util/FactoryFinder.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/util/FactoryFinder.java 2010-06-16 11:13:38 UTC (rev 6418)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/util/FactoryFinder.java 2010-06-16 23:22:42 UTC (rev 6419)
@@ -1,130 +0,0 @@
-/*
- * 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.pvm.internal.util;
-
-import java.io.BufferedReader;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.InputStreamReader;
-import java.lang.reflect.Constructor;
-import java.util.Properties;
-
-import org.jbpm.api.JbpmException;
-/**
- *
- * FactoryFinder based on javax.el.FactoryFinder
- *
- * @author Maciej Swiderski
- */
-public class FactoryFinder {
-
- FactoryFinder() {
- }
-
- private static Object newInstance(String s, ClassLoader classloader, Properties properties) {
- Class< ? > class1;
- try {
- if (classloader == null)
- class1 = Class.forName(s);
- else
- class1 = classloader.loadClass(s);
- if (properties != null) {
- Constructor< ? > constructor = null;
- try {
- constructor = class1.getConstructor(new Class[] { java.util.Properties.class });
- } catch (Exception exception1) {
- }
- if (constru!
ctor != null)
- return constructor.newInstance(new Ob!
ject[] {
properties });
- }
-
- return class1.newInstance();
-
- } catch (ClassNotFoundException classnotfoundexception) {
- throw new JbpmException((new StringBuilder()).append("Provider ").append(s).append(" not found").toString(), classnotfoundexception);
- } catch (Exception exception) {
- throw new JbpmException((new StringBuilder()).append("Provider ").append(s).append(" could not be instantiated: ").append(exception).toString(), exception);
- }
-
- }
-
- /**
- * Finds and initializes service provider for service given as <code>serviceName</code> with properties (if not null).
- * Alternatively it will look up for property file from <code>JAVA_HOME\lib\PROPERTY_FILE_NAME</code> prior to initialize.
- *
- * @param serviceName service name which provider should be found for
- * @param defaultServiceProvider default service provider that should be returned in case <code>serviceName</code> provider was not found
- * @para!
m properties properties that will be passed to implementation class
- * @param propertyFileName name of the property file can be found in <code>JAVA_HOME\lib</code>
- *
- * @return new instance of implementation class found for given serviceName or if not found instance of defaultServiceName if given
- *
- * @throws JBPMException in case of provider was not found
- *
- */
- public static Object find(String serviceName, String defaultServiceProvider, Properties properties, String propertyFileName) {
- ClassLoader classloader;
- try {
- classloader = Thread.currentThread().getContextClassLoader();
- } catch (Exception exception) {
- throw new JbpmException(exception.toString(), exception);
- }
- String serviceResourcePath = (new StringBuilder()).append("META-INF/services/").append(serviceName).toString();
- try {
- java.io.InputStream inputstream = null;
- if (classloader == null)
- inputstream = ClassLoader.getSy!
stemResourceAsStream(serviceResourcePath);
- else
- !
inputs
tream = classloader.getResourceAsStream(serviceResourcePath);
- if (inputstream != null) {
- BufferedReader bufferedreader = new BufferedReader(new InputStreamReader(inputstream, "UTF-8"));
- String line = bufferedreader.readLine();
- bufferedreader.close();
- if (line != null && !"".equals(line))
- return newInstance(line, classloader, properties);
- }
- } catch (Exception exception1) {
- }
- try {
- String javaHomeProperty = System.getProperty("java.home");
- String propertyFilePath = (new StringBuilder()).append(javaHomeProperty).append(File.separator).append("lib").append(File.separator).append(propertyFileName).toString();
- File file = new File(propertyFilePath);
- if (file.exists()) {
- Properties properties1 = new Properties();
- properties1.load(new FileInputStream(file));
- String serviceNameFromFile = properties1.getProperty(serviceName);
- return newInstance(se!
rviceNameFromFile, classloader, properties);
- }
- } catch (Exception exception2) {
- }
- try {
- String serviceNameProperty = System.getProperty(serviceName);
- if (serviceNameProperty != null)
- return newInstance(serviceNameProperty, classloader, properties);
- } catch (SecurityException securityexception) {
- }
- if (defaultServiceProvider == null)
- throw new JbpmException((new StringBuilder()).append("Provider for ").append(serviceName).append(" cannot be found").toString(), null);
- else
- return newInstance(defaultServiceProvider, classloader, properties);
- }
-}
Modified: jbpm4/trunk/pom.xml
===================================================================
--- jbpm4/trunk/pom.xml 2010-06-16 11:13:38 UTC (rev 6418)
+++ jbpm4/trunk/pom.xml 2010-06-16 23:22:42 UTC (rev 6419)
@@ -467,7 +467,7 @@
<repository>
<id>jboss-public-repository-group</id>
<name>JBoss Public Maven Repository Group</name>
- <url>https://repository.jboss.org/nexus/content/groups/public/</url>
+ <url>http://repository.jboss.org/nexus/content/groups/public/</url>
<releases>
<enabled>true</enabled>
<updatePolicy>never</updatePolicy>
@@ -482,7 +482,7 @@
<pluginRepository>
<id>jboss-public-repository-group</id>
<name>JBoss Public Maven Repository Group</name>
- <url>https://repository.jboss.org/nexus/content/groups/public/</url>
+ <url>http://repository.jboss.org/nexus/content/groups/public/</url>
<releases>
<enabled>true</enabled>
<updatePolicy>never</updatePolicy>
13 years, 10 months
JBoss JBPM SVN: r6418 - in jbpm4/trunk: modules/pvm and 1 other directory.
by do-not-reply@jboss.org
Author: alex.guizar(a)jboss.com
Date: 2010-06-16 07:13:38 -0400 (Wed, 16 Jun 2010)
New Revision: 6418
Modified:
jbpm4/trunk/modules/pvm/pom.xml
jbpm4/trunk/pom.xml
Log:
JBPM-2800: split juel:juel dependency into juel:juel-api and juel:juel-impl
upgrade to juel version 2.2.1
Modified: jbpm4/trunk/modules/pvm/pom.xml
===================================================================
--- jbpm4/trunk/modules/pvm/pom.xml 2010-06-15 15:50:38 UTC (rev 6417)
+++ jbpm4/trunk/modules/pvm/pom.xml 2010-06-16 11:13:38 UTC (rev 6418)
@@ -43,53 +43,47 @@
<artifactId>jbpm-test-base</artifactId>
<scope>test</scope>
</dependency>
-
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant</artifactId>
</dependency>
<dependency>
- <groupId>log4j</groupId>
- <artifactId>log4j</artifactId>
+ <groupId>org.beanshell</groupId>
+ <artifactId>bsh</artifactId>
</dependency>
<dependency>
- <groupId>juel</groupId>
- <artifactId>juel</artifactId>
+ <groupId>javax.enterprise</groupId>
+ <artifactId>cdi-api</artifactId>
+ <scope>provided</scope>
</dependency>
<dependency>
- <groupId>juel</groupId>
- <artifactId>juel-engine</artifactId>
+ <groupId>org.drools</groupId>
+ <artifactId>drools-core</artifactId>
</dependency>
<dependency>
+ <groupId>org.codehaus.groovy</groupId>
+ <artifactId>groovy-all</artifactId>
+ </dependency>
+ <dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
- <groupId>org.beanshell</groupId>
- <artifactId>bsh</artifactId>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-entitymanager</artifactId>
+ <version>3.4.0.GA</version>
</dependency>
<dependency>
- <groupId>org.codehaus.groovy</groupId>
- <artifactId>groovy-all</artifactId>
+ <groupId>hsqldb</groupId>
+ <artifactId>hsqldb</artifactId>
+ <scope>test</scope>
</dependency>
<dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-jdk14</artifactId>
- </dependency>
- <dependency>
<groupId>org.jboss.identity.idm</groupId>
<artifactId>idm-core</artifactId>
</dependency>
<dependency>
- <groupId>org.drools</groupId>
- <artifactId>drools-core</artifactId>
- </dependency>
- <dependency>
<groupId>org.jboss.identity.idm</groupId>
<artifactId>idm-hibernate</artifactId>
<exclusions>
@@ -128,41 +122,49 @@
</exclusions>
</dependency>
<dependency>
- <groupId>org.hibernate</groupId>
- <artifactId>hibernate-entitymanager</artifactId>
- <version>3.4.0.GA</version>
+ <groupId>jboss</groupId>
+ <artifactId>jboss-j2ee</artifactId>
+ <scope>provided</scope>
</dependency>
<dependency>
- <groupId>hsqldb</groupId>
- <artifactId>hsqldb</artifactId>
- <scope>test</scope>
+ <groupId>juel</groupId>
+ <artifactId>juel-api</artifactId>
</dependency>
<dependency>
- <groupId>jboss</groupId>
- <artifactId>jboss-j2ee</artifactId>
- <scope>provided</scope>
+ <groupId>juel</groupId>
+ <artifactId>juel-impl</artifactId>
</dependency>
<dependency>
+ <groupId>juel</groupId>
+ <artifactId>juel-engine</artifactId>
+ </dependency>
+ <dependency>
<groupId>org.livetribe</groupId>
<artifactId>livetribe-jsr223</artifactId>
</dependency>
<dependency>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ </dependency>
+ <dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
</dependency>
<dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<scope>provided</scope>
+ </dependency><dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
</dependency>
<dependency>
- <groupId>javax.enterprise</groupId>
- <artifactId>cdi-api</artifactId>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-jdk14</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring</artifactId>
<scope>provided</scope>
</dependency>
</dependencies>
Modified: jbpm4/trunk/pom.xml
===================================================================
--- jbpm4/trunk/pom.xml 2010-06-15 15:50:38 UTC (rev 6417)
+++ jbpm4/trunk/pom.xml 2010-06-16 11:13:38 UTC (rev 6418)
@@ -45,19 +45,20 @@
<!-- Properties -->
<properties>
+ <activation.version>1.1.1</activation.version>
<apache.ant.version>1.7.0</apache.ant.version>
+ <aspectjrt.version>1.5.3</aspectjrt.version>
<beanshell.version>2.0b5</beanshell.version>
- <groovy.version>1.5.6</groovy.version>
<cactus.version>1.8.1</cactus.version>
+ <cdi.version>1.0</cdi.version>
<drools.version>5.0.1</drools.version>
- <aspectjrt.version>1.5.3</aspectjrt.version>
+ <errai.version>1.1-M1</errai.version>
<freemarker.version>2.3.15</freemarker.version>
+ <groovy.version>1.5.6</groovy.version>
<gwt.console.version>2.1</gwt.console.version>
- <errai.version>1.1-M1</errai.version>
- <jbpm.gpd.version>4.3</jbpm.gpd.version>
<hibernate.version>3.3.1.GA</hibernate.version>
- <slf4j.version>1.5.2</slf4j.version>
<hsqldb.version>1.8.0.7</hsqldb.version>
+ <jbpm.gpd.version>4.3</jbpm.gpd.version>
<jboss.identity.version>1.0.0.Beta1</jboss.identity.version>
<jboss.j2ee.version>4.2.2.GA</jboss.j2ee.version>
<jboss.client.version>5.0.1.GA</jboss.client.version>
@@ -70,16 +71,16 @@
<report.engine.version>2.3.2</report.engine.version>
<servlet-api.version>2.5</servlet-api.version>
<signavio.jbpmeditor.version>1.1</signavio.jbpmeditor.version>
+ <slf4j.version>1.5.2</slf4j.version>
<spring.version>2.0.8</spring.version>
<stax.api.version>1.0.1</stax.api.version>
<wiser.version>1.2</wiser.version>
<woodstox.version>3.2.6</woodstox.version>
+
+ <jtds.version>1.2.2</jtds.version>
<mysql.connector.version>5.0.8</mysql.connector.version>
+ <oracle.version>10.2.0.4</oracle.version>
<postgresql.version>8.3-603.jdbc3</postgresql.version>
- <jtds.version>1.2.2</jtds.version>
- <oracle.version>10.2.0.4</oracle.version>
- <cdi.version>1.0</cdi.version>
- <activation.version>1.1.1</activation.version>
</properties>
<!-- DependencyManagement -->
@@ -202,13 +203,28 @@
</dependency>
<!-- External dependencies -->
- <!-- Please sort by groupid -->
+ <!-- Please sort by artifactId -->
<dependency>
+ <groupId>javax.activation</groupId>
+ <artifactId>activation</artifactId>
+ <version>${activation.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.ant</groupId>
+ <artifactId>ant</artifactId>
+ <version>${apache.ant.version}</version>
+ </dependency>
+ <dependency>
<groupId>aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>${aspectjrt.version}</version>
</dependency>
<dependency>
+ <groupId>org.beanshell</groupId>
+ <artifactId>bsh</artifactId>
+ <version>${beanshell.version}</version>
+ </dependency>
+ <dependency>
<groupId>cactus</groupId>
<artifactId>cactus.core</artifactId>
<version>${cactus.version}</version>
@@ -224,72 +240,11 @@
<version>${cactus.version}</version>
</dependency>
<dependency>
- <groupId>jboss</groupId>
- <artifactId>jboss-j2ee</artifactId>
- <version>${jboss.j2ee.version}</version>
- </dependency>
- <dependency>
- <groupId>juel</groupId>
- <artifactId>juel</artifactId>
- <version>${juel.version}</version>
- </dependency>
- <dependency>
- <!--
- The juel engine is the library from scripting.java.sun.com that exposes juel as a
- jsr233 scripting engine. It's not part of the juel distribution. For some reason i
- don't recall, we uploaded it as an juel-engine artifact in the group juel. And more
- problematic, used the juel version (2.1.0) for it. That is not intuitive.
- -->
- <groupId>juel</groupId>
- <artifactId>juel-engine</artifactId>
- <version>${juel.engine.version}</version>
- </dependency>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>${junit.version}</version>
- </dependency>
- <dependency>
- <groupId>javax.servlet</groupId>
- <artifactId>servlet-api</artifactId>
- <version>${servlet-api.version}</version>
- </dependency>
- <dependency>
- <groupId>log4j</groupId>
- <artifactId>log4j</artifactId>
- <version>${log4j.version}</version>
- </dependency>
- <dependency>
- <groupId>javax.activation</groupId>
- <artifactId>activation</artifactId>
- <version>${activation.version}</version>
- </dependency>
- <dependency>
<groupId>javax.enterprise</groupId>
<artifactId>cdi-api</artifactId>
<version>${cdi.version}</version>
</dependency>
<dependency>
- <groupId>javax.mail</groupId>
- <artifactId>mail</artifactId>
- <version>${mail.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.ant</groupId>
- <artifactId>ant</artifactId>
- <version>${apache.ant.version}</version>
- </dependency>
- <dependency>
- <groupId>org.beanshell</groupId>
- <artifactId>bsh</artifactId>
- <version>${beanshell.version}</version>
- </dependency>
- <dependency>
- <groupId>org.codehaus.groovy</groupId>
- <artifactId>groovy-all</artifactId>
- <version>${groovy.version}</version>
- </dependency>
- <dependency>
<groupId>org.drools</groupId>
<artifactId>drools-core</artifactId>
<version>${drools.version}</version>
@@ -300,32 +255,26 @@
<version>${drools.version}</version>
</dependency>
<dependency>
- <groupId>org.eclipse.birt</groupId>
- <artifactId>report-engine</artifactId>
- <type>zip</type>
- <version>${report.engine.version}</version>
+ <groupId>org.jboss.errai</groupId>
+ <artifactId>errai-common</artifactId>
+ <version>${errai.version}</version>
</dependency>
<dependency>
+ <groupId>org.jboss.errai</groupId>
+ <artifactId>errai-bus</artifactId>
+ <version>${errai.version}</version>
+ </dependency>
+ <dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>${freemarker.version}</version>
</dependency>
<dependency>
- <groupId>org.hibernate</groupId>
- <artifactId>hibernate-core</artifactId>
- <version>${hibernate.version}</version>
+ <groupId>org.codehaus.groovy</groupId>
+ <artifactId>groovy-all</artifactId>
+ <version>${groovy.version}</version>
</dependency>
<dependency>
- <groupId>org.jboss.identity.idm</groupId>
- <artifactId>idm-core</artifactId>
- <version>${jboss.identity.version}</version>
- </dependency>
- <dependency>
- <groupId>org.jboss.identity.idm</groupId>
- <artifactId>idm-hibernate</artifactId>
- <version>${jboss.identity.version}</version>
- </dependency>
- <dependency>
<groupId>org.jboss.bpm</groupId>
<artifactId>gwt-console</artifactId>
<version>${gwt.console.version}</version>
@@ -351,16 +300,21 @@
<scope>provided</scope>
</dependency>
<dependency>
- <groupId>org.jboss.errai</groupId>
- <artifactId>errai-common</artifactId>
- <version>${errai.version}</version>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-core</artifactId>
+ <version>${hibernate.version}</version>
</dependency>
<dependency>
- <groupId>org.jboss.errai</groupId>
- <artifactId>errai-bus</artifactId>
- <version>${errai.version}</version>
+ <groupId>org.jboss.identity.idm</groupId>
+ <artifactId>idm-core</artifactId>
+ <version>${jboss.identity.version}</version>
</dependency>
<dependency>
+ <groupId>org.jboss.identity.idm</groupId>
+ <artifactId>idm-hibernate</artifactId>
+ <version>${jboss.identity.version}</version>
+ </dependency>
+ <dependency>
<groupId>org.jboss.javaee</groupId>
<artifactId>jboss-javaee</artifactId>
<version>${jboss.client.version}</version>
@@ -372,11 +326,61 @@
<type>pom</type>
</dependency>
<dependency>
+ <groupId>jboss</groupId>
+ <artifactId>jboss-j2ee</artifactId>
+ <version>${jboss.j2ee.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>juel</groupId>
+ <artifactId>juel-api</artifactId>
+ <version>${juel.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>juel</groupId>
+ <artifactId>juel-impl</artifactId>
+ <version>${juel.version}</version>
+ </dependency>
+ <dependency>
+ <!--
+ The juel engine is the library from scripting.java.sun.com that exposes juel as a
+ jsr233 scripting engine. It's not part of the juel distribution. For some reason i
+ don't recall, we uploaded it as an juel-engine artifact in the group juel. And more
+ problematic, used the juel version (2.1.0) for it. That is not intuitive.
+ -->
+ <groupId>juel</groupId>
+ <artifactId>juel-engine</artifactId>
+ <version>${juel.engine.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>${junit.version}</version>
+ </dependency>
+ <dependency>
<groupId>org.livetribe</groupId>
<artifactId>livetribe-jsr223</artifactId>
<version>${jsr233.version}</version>
+ </dependency><dependency>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ <version>${log4j.version}</version>
</dependency>
<dependency>
+ <groupId>javax.mail</groupId>
+ <artifactId>mail</artifactId>
+ <version>${mail.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.birt</groupId>
+ <artifactId>report-engine</artifactId>
+ <type>zip</type>
+ <version>${report.engine.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ <version>${servlet-api.version}</version>
+ </dependency><dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j.version}</version>
@@ -419,6 +423,11 @@
<version>${hsqldb.version}</version>
</dependency>
<dependency>
+ <groupId>net.sourceforge.jtds</groupId>
+ <artifactId>jtds</artifactId>
+ <version>${jtds.version}</version>
+ </dependency>
+ <dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${mysql.connector.version}</version>
@@ -428,11 +437,6 @@
<artifactId>postgresql</artifactId>
<version>${postgresql.version}</version>
</dependency>
- <dependency>
- <groupId>net.sourceforge.jtds</groupId>
- <artifactId>jtds</artifactId>
- <version>${jtds.version}</version>
- </dependency>
</dependencies>
</dependencyManagement>
13 years, 10 months
JBoss JBPM SVN: r6417 - in jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal: util and 1 other directory.
by do-not-reply@jboss.org
Author: swiderski.maciej
Date: 2010-06-15 11:50:38 -0400 (Tue, 15 Jun 2010)
New Revision: 6417
Added:
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/util/FactoryFinder.java
Modified:
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/el/JbpmElFactoryImpl.java
Log:
JBPM-2800: catch NoSuchMethodError and creates ExpressionFactory in different way (using FactoryFinder)
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/el/JbpmElFactoryImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/el/JbpmElFactoryImpl.java 2010-06-15 11:23:28 UTC (rev 6416)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/el/JbpmElFactoryImpl.java 2010-06-15 15:50:38 UTC (rev 6417)
@@ -39,6 +39,7 @@
import org.jbpm.internal.log.Log;
import org.jbpm.pvm.internal.env.EnvironmentImpl;
import org.jbpm.pvm.internal.model.ScopeInstanceImpl;
+import org.jbpm.pvm.internal.util.FactoryFinder;
/**
@@ -108,8 +109,14 @@
// TODO these ExpressionFactory properties could be integrated in the configuration
Properties properties = new Properties();
properties.setProperty("javax.el.methodInvocations", "true");
- ExpressionFactory expressionFactory = ExpressionFactory.newInstance(properties);
-
+ ExpressionFactory expressionFactory = null;
+ try {
+ expressionFactory = ExpressionFactory.newInstance(properties);
+
+ } catch (NoSuchMethodError e) {
+ // to support previous version of el-api
+ expressionFactory = (ExpressionFactory) FactoryFinder.find(ExpressionFactory.class.getName(), null, null, "el.properties");
+ }
BeanManager beanManager = getBeanManager();
if (beanManager!=null) {
expressionFactory = beanManager.wrapExpressionFactory(expressionFactory);
Added: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/util/FactoryFinder.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/util/FactoryFinder.java (rev 0)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/util/FactoryFinder.java 2010-06-15 15:50:38 UTC (rev 6417)
@@ -0,0 +1,130 @@
+/*
+ * 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.pvm.internal.util;
+
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.InputStreamReader;
+import java.lang.reflect.Constructor;
+import java.util.Properties;
+
+import org.jbpm.api.JbpmException;
+/**
+ *
+ * FactoryFinder based on javax.el.FactoryFinder
+ *
+ * @author Maciej Swiderski
+ */
+public class FactoryFinder {
+
+ FactoryFinder() {
+ }
+
+ private static Object newInstance(String s, ClassLoader classloader, Properties properties) {
+ Class< ? > class1;
+ try {
+ if (classloader == null)
+ class1 = Class.forName(s);
+ else
+ class1 = classloader.loadClass(s);
+ if (properties != null) {
+ Constructor< ? > constructor = null;
+ try {
+ constructor = class1.getConstructor(new Class[] { java.util.Properties.class });
+ } catch (Exception exception1) {
+ }
+ if (constru!
ctor != null)
+ return constructor.newInstance(new Ob!
ject[] {
properties });
+ }
+
+ return class1.newInstance();
+
+ } catch (ClassNotFoundException classnotfoundexception) {
+ throw new JbpmException((new StringBuilder()).append("Provider ").append(s).append(" not found").toString(), classnotfoundexception);
+ } catch (Exception exception) {
+ throw new JbpmException((new StringBuilder()).append("Provider ").append(s).append(" could not be instantiated: ").append(exception).toString(), exception);
+ }
+
+ }
+
+ /**
+ * Finds and initializes service provider for service given as <code>serviceName</code> with properties (if not null).
+ * Alternatively it will look up for property file from <code>JAVA_HOME\lib\PROPERTY_FILE_NAME</code> prior to initialize.
+ *
+ * @param serviceName service name which provider should be found for
+ * @param defaultServiceProvider default service provider that should be returned in case <code>serviceName</code> provider was not found
+ * @para!
m properties properties that will be passed to implementation class
+ * @param propertyFileName name of the property file can be found in <code>JAVA_HOME\lib</code>
+ *
+ * @return new instance of implementation class found for given serviceName or if not found instance of defaultServiceName if given
+ *
+ * @throws JBPMException in case of provider was not found
+ *
+ */
+ public static Object find(String serviceName, String defaultServiceProvider, Properties properties, String propertyFileName) {
+ ClassLoader classloader;
+ try {
+ classloader = Thread.currentThread().getContextClassLoader();
+ } catch (Exception exception) {
+ throw new JbpmException(exception.toString(), exception);
+ }
+ String serviceResourcePath = (new StringBuilder()).append("META-INF/services/").append(serviceName).toString();
+ try {
+ java.io.InputStream inputstream = null;
+ if (classloader == null)
+ inputstream = ClassLoader.getSy!
stemResourceAsStream(serviceResourcePath);
+ else
+ !
inputs
tream = classloader.getResourceAsStream(serviceResourcePath);
+ if (inputstream != null) {
+ BufferedReader bufferedreader = new BufferedReader(new InputStreamReader(inputstream, "UTF-8"));
+ String line = bufferedreader.readLine();
+ bufferedreader.close();
+ if (line != null && !"".equals(line))
+ return newInstance(line, classloader, properties);
+ }
+ } catch (Exception exception1) {
+ }
+ try {
+ String javaHomeProperty = System.getProperty("java.home");
+ String propertyFilePath = (new StringBuilder()).append(javaHomeProperty).append(File.separator).append("lib").append(File.separator).append(propertyFileName).toString();
+ File file = new File(propertyFilePath);
+ if (file.exists()) {
+ Properties properties1 = new Properties();
+ properties1.load(new FileInputStream(file));
+ String serviceNameFromFile = properties1.getProperty(serviceName);
+ return newInstance(se!
rviceNameFromFile, classloader, properties);
+ }
+ } catch (Exception exception2) {
+ }
+ try {
+ String serviceNameProperty = System.getProperty(serviceName);
+ if (serviceNameProperty != null)
+ return newInstance(serviceNameProperty, classloader, properties);
+ } catch (SecurityException securityexception) {
+ }
+ if (defaultServiceProvider == null)
+ throw new JbpmException((new StringBuilder()).append("Provider for ").append(serviceName).append(" cannot be found").toString(), null);
+ else
+ return newInstance(defaultServiceProvider, classloader, properties);
+ }
+}
13 years, 10 months
JBoss JBPM SVN: r6416 - jbpm3/trunk/modules/core/src/main/java/org/jbpm/command.
by do-not-reply@jboss.org
Author: camunda
Date: 2010-06-15 07:23:28 -0400 (Tue, 15 Jun 2010)
New Revision: 6416
Modified:
jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/AbstractGetObjectBaseCommand.java
jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/AbstractProcessInstanceBaseCommand.java
jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/AbstractTokenBaseCommand.java
jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/ChangeProcessInstanceVersionCommand.java
jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/DeployProcessCommand.java
jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/ExecuteJobsCommand.java
jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/GetTaskListCommand.java
jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/SignalCommand.java
jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/StartWorkOnTaskCommand.java
Log:
Fixed problems with logging (especially in AbstractTokenBaseCommand & AbstractProcessInstanceBaseCommand where logger wasn't static and resulted in Serialization exceptions). Changed logger to be "protected static final" for all loggers.
Modified: jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/AbstractGetObjectBaseCommand.java
===================================================================
--- jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/AbstractGetObjectBaseCommand.java 2010-06-15 08:40:55 UTC (rev 6415)
+++ jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/AbstractGetObjectBaseCommand.java 2010-06-15 11:23:28 UTC (rev 6416)
@@ -21,7 +21,7 @@
*/
public abstract class AbstractGetObjectBaseCommand extends AbstractBaseCommand {
- static final Log log = LogFactory.getLog(AbstractGetObjectBaseCommand.class);
+ protected static final Log log = LogFactory.getLog(AbstractGetObjectBaseCommand.class);
private static final long serialVersionUID = 1L;
Modified: jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/AbstractProcessInstanceBaseCommand.java
===================================================================
--- jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/AbstractProcessInstanceBaseCommand.java 2010-06-15 08:40:55 UTC (rev 6415)
+++ jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/AbstractProcessInstanceBaseCommand.java 2010-06-15 11:23:28 UTC (rev 6416)
@@ -24,7 +24,7 @@
public abstract class AbstractProcessInstanceBaseCommand extends AbstractBaseCommand
{
private static final long serialVersionUID = 1L;
- protected Log log = LogFactory.getLog(this.getClass());
+ protected static Log log = LogFactory.getLog(AbstractProcessInstanceBaseCommand.class);
private long[] processInstanceIds = null;
private String processName = null;
Modified: jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/AbstractTokenBaseCommand.java
===================================================================
--- jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/AbstractTokenBaseCommand.java 2010-06-15 08:40:55 UTC (rev 6415)
+++ jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/AbstractTokenBaseCommand.java 2010-06-15 11:23:28 UTC (rev 6416)
@@ -29,7 +29,7 @@
*/
public abstract class AbstractTokenBaseCommand implements Command
{
- protected Log log = LogFactory.getLog(this.getClass());
+ protected static final transient Log log = LogFactory.getLog(AbstractTokenBaseCommand.class);
private long[] tokenIds = null;
private String processName = null;
Modified: jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/ChangeProcessInstanceVersionCommand.java
===================================================================
--- jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/ChangeProcessInstanceVersionCommand.java 2010-06-15 08:40:55 UTC (rev 6415)
+++ jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/ChangeProcessInstanceVersionCommand.java 2010-06-15 11:23:28 UTC (rev 6416)
@@ -66,7 +66,7 @@
*/
private int newVersion = -1;
- private static final Log log = LogFactory.getLog(ChangeProcessInstanceVersionCommand.class);
+ protected static final Log log = LogFactory.getLog(ChangeProcessInstanceVersionCommand.class);
/**
* the map configures for every node-name in the old process definition
Modified: jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/DeployProcessCommand.java
===================================================================
--- jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/DeployProcessCommand.java 2010-06-15 08:40:55 UTC (rev 6415)
+++ jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/DeployProcessCommand.java 2010-06-15 11:23:28 UTC (rev 6416)
@@ -25,7 +25,7 @@
private byte[] par;
- private static final Log log = LogFactory.getLog(DeployProcessCommand.class);
+ protected static final Log log = LogFactory.getLog(DeployProcessCommand.class);
public DeployProcessCommand()
{
Modified: jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/ExecuteJobsCommand.java
===================================================================
--- jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/ExecuteJobsCommand.java 2010-06-15 08:40:55 UTC (rev 6415)
+++ jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/ExecuteJobsCommand.java 2010-06-15 11:23:28 UTC (rev 6416)
@@ -28,7 +28,7 @@
private static final long serialVersionUID = -2457066688404533959L;
- private static final Log log = LogFactory.getLog(ExecuteJobsCommand.class);
+ protected static final Log log = LogFactory.getLog(ExecuteJobsCommand.class);
private static final int maxLockTime = 60000;
Modified: jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/GetTaskListCommand.java
===================================================================
--- jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/GetTaskListCommand.java 2010-06-15 08:40:55 UTC (rev 6415)
+++ jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/GetTaskListCommand.java 2010-06-15 11:23:28 UTC (rev 6416)
@@ -24,7 +24,7 @@
private static final long serialVersionUID = -1627380259541998349L;
- static final Log log = LogFactory.getLog(GetTaskListCommand.class);
+ protected static final Log log = LogFactory.getLog(GetTaskListCommand.class);
private String[] actor;
Modified: jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/SignalCommand.java
===================================================================
--- jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/SignalCommand.java 2010-06-15 08:40:55 UTC (rev 6415)
+++ jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/SignalCommand.java 2010-06-15 11:23:28 UTC (rev 6416)
@@ -39,7 +39,7 @@
{
private static final long serialVersionUID = 1L;
- private static Log log = LogFactory.getLog(SignalCommand.class);
+ protected static final Log log = LogFactory.getLog(SignalCommand.class);
private long tokenId = 0;
Modified: jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/StartWorkOnTaskCommand.java
===================================================================
--- jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/StartWorkOnTaskCommand.java 2010-06-15 08:40:55 UTC (rev 6415)
+++ jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/StartWorkOnTaskCommand.java 2010-06-15 11:23:28 UTC (rev 6416)
@@ -15,7 +15,7 @@
private static final long serialVersionUID = 53004484398726736L;
- private static final Log log = LogFactory.getLog(StartWorkOnTaskCommand.class);
+ protected static final Log log = LogFactory.getLog(StartWorkOnTaskCommand.class);
private long taskInstanceId;
13 years, 10 months