[jbpm-commits] JBoss JBPM SVN: r4859 - in jbpm4/trunk/modules: api/src/main/java/org/jbpm/api/model and 15 other directories.
do-not-reply at jboss.org
do-not-reply at jboss.org
Wed May 20 10:07:38 EDT 2009
Author: tom.baeyens at jboss.com
Date: 2009-05-20 10:07:38 -0400 (Wed, 20 May 2009)
New Revision: 4859
Added:
jbpm4/trunk/modules/integration/form-plugin/.classpath
jbpm4/trunk/modules/integration/form-plugin/.project
jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/deploy/ImageTest.java
jbpm4/trunk/modules/test-db/src/test/resources/org/jbpm/test/deploy/
jbpm4/trunk/modules/test-db/src/test/resources/org/jbpm/test/deploy/ImageTest.jpdl.xml
jbpm4/trunk/modules/test-db/src/test/resources/org/jbpm/test/deploy/ImageTest.png
Modified:
jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/ProcessDefinition.java
jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/ProcessDefinitionQuery.java
jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/OpenProcessDefinition.java
jbpm4/trunk/modules/enterprise/src/test/java/org/jbpm/test/deployer/DeployerTestServlet.java
jbpm4/trunk/modules/integration/console/src/main/java/org/jbpm/integration/console/ProcessManagementImpl.java
jbpm4/trunk/modules/integration/form-plugin/src/main/java/org/jbpm/integration/console/forms/TaskDispatcherPluginImpl.java
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/repository/JpdlDeployer.java
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/xml/JpdlParser.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/GetResourceAsStreamCmd.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ProcessDefinitionImpl.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/query/ProcessDefinitionQueryImpl.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/repository/RepositorySessionImpl.java
jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/process/ActivityCoordinatesTest.java
jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/process/DeploymentResourcesTest.java
jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/process/ProcessDefinitionQueryTest.java
jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/process/RepositoryServiceTest.java
Log:
JBPM-2269 added image resource support for process definitions
Modified: jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/ProcessDefinition.java
===================================================================
--- jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/ProcessDefinition.java 2009-05-20 12:37:04 UTC (rev 4858)
+++ jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/ProcessDefinition.java 2009-05-20 14:07:38 UTC (rev 4859)
@@ -51,4 +51,8 @@
/** references the deployment in which this process definition is
* deployed. */
long getDeploymentDbid();
+
+ /** the name of the resource in the deployment which contains the image
+ * file for this process */
+ String getImageResourceName();
}
Modified: jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/ProcessDefinitionQuery.java
===================================================================
--- jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/ProcessDefinitionQuery.java 2009-05-20 12:37:04 UTC (rev 4858)
+++ jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/ProcessDefinitionQuery.java 2009-05-20 14:07:38 UTC (rev 4859)
@@ -34,10 +34,10 @@
String PROPERTY_VERSION = "versionProperty.longValue";
String PROPERTY_DEPLOYMENT_TIMESTAMP = "deployment.timestamp";
- ProcessDefinitionQuery id(String id);
- ProcessDefinitionQuery key(String key);
- ProcessDefinitionQuery nameLike(String name);
- ProcessDefinitionQuery name(String name);
+ ProcessDefinitionQuery processDefinitionId(String processDefinitionId);
+ ProcessDefinitionQuery processDefinitionKey(String key);
+ ProcessDefinitionQuery processDefinitionNameLike(String name);
+ ProcessDefinitionQuery processDefinitionName(String name);
ProcessDefinitionQuery deploymentDbid(long deploymentDbid);
ProcessDefinitionQuery suspended();
Modified: jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/OpenProcessDefinition.java
===================================================================
--- jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/OpenProcessDefinition.java 2009-05-20 12:37:04 UTC (rev 4858)
+++ jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/OpenProcessDefinition.java 2009-05-20 14:07:38 UTC (rev 4859)
@@ -56,6 +56,4 @@
/** the initial activity of this process definition */
Activity getInitial();
- /** retrieves an attachment of a process definition */
- byte[] getAttachment(String name);
}
\ No newline at end of file
Modified: jbpm4/trunk/modules/enterprise/src/test/java/org/jbpm/test/deployer/DeployerTestServlet.java
===================================================================
--- jbpm4/trunk/modules/enterprise/src/test/java/org/jbpm/test/deployer/DeployerTestServlet.java 2009-05-20 12:37:04 UTC (rev 4858)
+++ jbpm4/trunk/modules/enterprise/src/test/java/org/jbpm/test/deployer/DeployerTestServlet.java 2009-05-20 14:07:38 UTC (rev 4859)
@@ -61,7 +61,7 @@
RepositoryService repositoryService = processEngine.getRepositoryService();
ProcessDefinition def = repositoryService.createProcessDefinitionQuery()
- .key(JBPM_DEPLOYER_TEST_V5)
+ .processDefinitionKey(JBPM_DEPLOYER_TEST_V5)
.orderDesc(ProcessDefinitionQuery.PROPERTY_VERSION)
.uniqueResult();
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 2009-05-20 12:37:04 UTC (rev 4858)
+++ jbpm4/trunk/modules/integration/console/src/main/java/org/jbpm/integration/console/ProcessManagementImpl.java 2009-05-20 14:07:38 UTC (rev 4859)
@@ -78,7 +78,7 @@
{
RepositoryService repositoryService = this.processEngine.getRepositoryService();
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery()
- .id(procDefId)
+ .processDefinitionId(procDefId)
.uniqueResult();
return ModelAdaptor.adoptDefinition(processDefinition);
@@ -98,7 +98,7 @@
RepositoryService repositoryService = this.processEngine.getRepositoryService();
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery()
- .id(procDefId)
+ .processDefinitionId(procDefId)
.uniqueResult();
if (processDefinition!=null) {
repositoryService.deleteDeploymentCascade(processDefinition.getDeploymentDbid());
Added: jbpm4/trunk/modules/integration/form-plugin/.classpath
===================================================================
--- jbpm4/trunk/modules/integration/form-plugin/.classpath (rev 0)
+++ jbpm4/trunk/modules/integration/form-plugin/.classpath 2009-05-20 14:07:38 UTC (rev 4859)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" output="target/classes" path="src/main/java"/>
+ <classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
+ <classpathentry kind="output" path="target/classes"/>
+</classpath>
Property changes on: jbpm4/trunk/modules/integration/form-plugin/.classpath
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: jbpm4/trunk/modules/integration/form-plugin/.project
===================================================================
--- jbpm4/trunk/modules/integration/form-plugin/.project (rev 0)
+++ jbpm4/trunk/modules/integration/form-plugin/.project 2009-05-20 14:07:38 UTC (rev 4859)
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>integration-forms-plugin</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.maven.ide.eclipse.maven2Nature</nature>
+ </natures>
+</projectDescription>
Property changes on: jbpm4/trunk/modules/integration/form-plugin/.project
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: jbpm4/trunk/modules/integration/form-plugin/src/main/java/org/jbpm/integration/console/forms/TaskDispatcherPluginImpl.java
===================================================================
--- jbpm4/trunk/modules/integration/form-plugin/src/main/java/org/jbpm/integration/console/forms/TaskDispatcherPluginImpl.java 2009-05-20 12:37:04 UTC (rev 4858)
+++ jbpm4/trunk/modules/integration/form-plugin/src/main/java/org/jbpm/integration/console/forms/TaskDispatcherPluginImpl.java 2009-05-20 14:07:38 UTC (rev 4859)
@@ -110,7 +110,7 @@
RepositoryService repoService = processEngine.getRepositoryService();
ProcessDefinitionQuery query = repoService.createProcessDefinitionQuery();
- query.id(processId);
+ query.processDefinitionId(processId);
ProcessDefinition procDef = query.uniqueResult();
// check if a template exists
Modified: jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/repository/JpdlDeployer.java
===================================================================
--- jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/repository/JpdlDeployer.java 2009-05-20 12:37:04 UTC (rev 4858)
+++ jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/repository/JpdlDeployer.java 2009-05-20 14:07:38 UTC (rev 4859)
@@ -59,6 +59,11 @@
JpdlProcessDefinition processDefinition = (JpdlProcessDefinition) parse.getDocumentObject();
if ((processDefinition != null) && (processDefinition.getName() != null)) {
String processDefinitionName = processDefinition.getName();
+
+ String imageResourceName = resourceName.substring(0, resourceName.lastIndexOf(".jpdl.xml"))+".png";
+ if (deployment.getResourceNames().contains(imageResourceName)) {
+ processDefinition.setImageResourceName(imageResourceName);
+ }
processDefinition.setDeploymentDbid(deployment.getDbid());
@@ -101,7 +106,7 @@
RepositorySession repositorySession = Environment.getFromCurrent(RepositorySession.class);
List<ProcessDefinition> existingProcesses = repositorySession.createProcessDefinitionQuery()
- .name(processDefinitionName)
+ .processDefinitionName(processDefinitionName)
.list();
for (ProcessDefinition existingProcess: existingProcesses) {
@@ -111,7 +116,7 @@
}
existingProcesses = repositorySession.createProcessDefinitionQuery()
- .key(processDefinitionKey)
+ .processDefinitionKey(processDefinitionKey)
.list();
for (ProcessDefinition existingProcess: existingProcesses) {
@@ -131,7 +136,7 @@
RepositorySession repositorySession = Environment.getFromCurrent(RepositorySession.class);
ProcessDefinition existingProcessDefinition = repositorySession.createProcessDefinitionQuery()
- .id(id)
+ .processDefinitionId(id)
.uniqueResult();
if (existingProcessDefinition != null) {
deployment.addProblem("process '" + id + "' already exists");
@@ -146,7 +151,7 @@
ProcessDefinition latestDeployedVersion = repositorySession
.createProcessDefinitionQuery()
- .key(key)
+ .processDefinitionKey(key)
.orderDesc(ProcessDefinitionQuery.PROPERTY_VERSION)
.page(0, 1)
.uniqueResult();
Modified: jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/xml/JpdlParser.java
===================================================================
--- jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/xml/JpdlParser.java 2009-05-20 12:37:04 UTC (rev 4858)
+++ jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/xml/JpdlParser.java 2009-05-20 14:07:38 UTC (rev 4859)
@@ -87,6 +87,8 @@
};
static BindingsParser bindingsParser = new BindingsParser();
+ static final String CATEGORY_ACTIVITY = "activity";
+ static final String CATEGORY_EVENT_LISTENER = "eventlistener";
public JpdlParser() {
initialize();
@@ -115,7 +117,7 @@
.getDocumentObject();
for (JpdlBinding binding: activityBindings) {
- binding.setCategory("activity");
+ binding.setCategory(CATEGORY_ACTIVITY);
bindings.addBinding(binding);
}
@@ -138,7 +140,7 @@
.getDocumentObject();
for (JpdlBinding binding: activityBindings) {
- binding.setCategory("eventlistener");
+ binding.setCategory(CATEGORY_EVENT_LISTENER);
bindings.addBinding(binding);
}
@@ -230,7 +232,7 @@
&& !"timer".equals(tagName)
&& !"swimlane".equals(tagName)
) {
- JpdlBinding activityBinding = (JpdlBinding) getBinding(nestedElement, "activity");
+ JpdlBinding activityBinding = (JpdlBinding) getBinding(nestedElement, CATEGORY_ACTIVITY);
if (activityBinding != null) {
ActivityImpl activity = compositeElement.createActivity();
parse.pushObject(activity);
@@ -343,7 +345,7 @@
}
for (Element eventListenerElement: XmlUtil.elements(element)) {
- JpdlBinding eventBinding = (JpdlBinding) getBinding(eventListenerElement, "eventlistener");
+ JpdlBinding eventBinding = (JpdlBinding) getBinding(eventListenerElement, CATEGORY_EVENT_LISTENER);
if (eventBinding!=null) {
EventListener eventListener = (EventListener) eventBinding.parse(eventListenerElement, parse, this);
EventListenerReference eventListenerReference = event.createEventListenerReference(eventListener);
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 2009-05-20 12:37:04 UTC (rev 4858)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/builder/ProcessDefinitionBuilder.java 2009-05-20 14:07:38 UTC (rev 4859)
@@ -94,17 +94,6 @@
return this;
}
- public ProcessDefinitionBuilder attachment(String name, InputStream inputStream) {
- processDefinition.addAttachment(name, inputStream);
- return this;
- }
-
- public ProcessDefinitionBuilder attachment(String name, byte[] bytes) {
- processDefinition.addAttachment(name, bytes);
- return this;
- }
-
-
protected void addUnresolvedFlow(UnresolvedFlow unresolvedFlow) {
unresolvedFlows.add(unresolvedFlow);
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/GetResourceAsStreamCmd.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/GetResourceAsStreamCmd.java 2009-05-20 12:37:04 UTC (rev 4858)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/GetResourceAsStreamCmd.java 2009-05-20 14:07:38 UTC (rev 4859)
@@ -44,7 +44,6 @@
public InputStream execute(Environment environment) {
RepositorySession repositorySession = environment.get(RepositorySession.class);
- InputStream resourceStream = repositorySession.getResourceAsStream(deploymentDbid, resourceName);
- return resourceStream;
+ return repositorySession.getResourceAsStream(deploymentDbid, resourceName);
}
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ProcessDefinitionImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ProcessDefinitionImpl.java 2009-05-20 12:37:04 UTC (rev 4858)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ProcessDefinitionImpl.java 2009-05-20 14:07:38 UTC (rev 4859)
@@ -21,8 +21,6 @@
*/
package org.jbpm.pvm.internal.model;
-import java.io.ByteArrayInputStream;
-import java.io.InputStream;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
@@ -33,9 +31,7 @@
import org.jbpm.api.env.Environment;
import org.jbpm.api.model.OpenProcessDefinition;
import org.jbpm.internal.log.Log;
-import org.jbpm.pvm.internal.lob.Lob;
import org.jbpm.pvm.internal.task.TaskDefinitionImpl;
-import org.jbpm.pvm.internal.util.IoUtil;
/**
* @author Tom Baeyens
@@ -74,9 +70,9 @@
protected Map<String, TaskDefinitionImpl> taskDefinitions;
- /** the attachments */
- protected Map<String, Lob> attachments;
+ protected String imageResourceName = null;
+
public ProcessDefinitionImpl() {
this.processDefinition = this;
}
@@ -146,40 +142,6 @@
return null;
}
- // attachments //////////////////////////////////////////////////////////////
-
- public void addAttachment(String name, InputStream inputStream) {
- byte[] bytes = IoUtil.readBytes(inputStream);
- addAttachment(name, bytes);
- }
-
- public void addAttachment(String name, byte[] bytes) {
- Lob lob = new Lob(bytes);
- if (attachments==null) {
- attachments = new HashMap<String, Lob>();
- }
- attachments.put(name, lob);
- }
-
- public byte[] getAttachment(String name) {
- if (attachments==null) {
- return null;
- }
- Lob lob = attachments.get(name);
- if (lob==null) {
- return null;
- }
- return lob.extractBytes();
- }
-
- public InputStream getAttachmentInputStream(String name) {
- byte[] bytes = getAttachment(name);
- if (bytes==null) {
- return null;
- }
- return new ByteArrayInputStream(bytes);
- }
-
// basic methods ////////////////////////////////////////////////////////////
public String toString() {
@@ -230,4 +192,10 @@
public void setDeploymentDbid(long deploymentDbid) {
this.deploymentDbid = deploymentDbid;
}
+ public String getImageResourceName() {
+ return imageResourceName;
+ }
+ public void setImageResourceName(String imageResourceName) {
+ this.imageResourceName = imageResourceName;
+ }
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/query/ProcessDefinitionQueryImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/query/ProcessDefinitionQueryImpl.java 2009-05-20 12:37:04 UTC (rev 4858)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/query/ProcessDefinitionQueryImpl.java 2009-05-20 14:07:38 UTC (rev 4859)
@@ -30,6 +30,7 @@
import org.jbpm.api.ProcessDefinition;
import org.jbpm.api.ProcessDefinitionQuery;
import org.jbpm.api.cmd.CommandService;
+import org.jbpm.api.env.Environment;
import org.jbpm.api.session.RepositorySession;
import org.jbpm.pvm.internal.model.ProcessDefinitionImpl;
import org.jbpm.pvm.internal.repository.DeploymentImpl;
@@ -73,14 +74,10 @@
List<ProcessDefinition> processDefinitions = new ArrayList<ProcessDefinition>();
for (Map<String, Object> properties: propertyMaps) {
- ProcessDefinitionImpl processDefinition = new ProcessDefinitionImpl();
- processDefinition.setName((String)properties.get("name"));
- processDefinition.setKey((String)properties.get("key"));
- processDefinition.setId((String)properties.get("id"));
- processDefinition.setDeploymentDbid((Long)properties.get("deploymentDbid"));
- Long versionLong = (Long)properties.get("version");
- processDefinition.setVersion(versionLong.intValue());
-
+ Long deploymentDbid = (Long)properties.get("deploymentDbid");
+ String objectName = (String)properties.get("objectName");
+ RepositorySession repositorySession = Environment.getFromCurrent(RepositorySession.class);
+ ProcessDefinitionImpl processDefinition = (ProcessDefinitionImpl) repositorySession.getObject(deploymentDbid, objectName);
processDefinitions.add(processDefinition);
}
@@ -89,11 +86,8 @@
public String hql() {
StringBuffer hql = new StringBuffer();
- hql.append("select new map( idProperty.objectName as name, " +
- "idProperty.stringValue as id," +
- "idProperty.deployment.dbid as deploymentDbid, " +
- "keyProperty.stringValue as key, " +
- "versionProperty.longValue as version ) ");
+ hql.append("select new map( idProperty.objectName as objectName, " +
+ "idProperty.deployment.dbid as deploymentDbid ) ");
hql.append("from ");
hql.append(DeploymentImpl.class.getName());
hql.append(" as deployment, ");
@@ -157,12 +151,12 @@
return (ProcessDefinition) untypedUniqueResult();
}
- public ProcessDefinitionQuery id(String id) {
+ public ProcessDefinitionQuery processDefinitionId(String id) {
this.id = id;
return this;
}
- public ProcessDefinitionQuery key(String key) {
+ public ProcessDefinitionQuery processDefinitionKey(String key) {
this.key = key;
return this;
}
@@ -172,12 +166,12 @@
return this;
}
- public ProcessDefinitionQuery nameLike(String name) {
+ public ProcessDefinitionQuery processDefinitionNameLike(String name) {
this.nameLike = name;
return this;
}
- public ProcessDefinitionQuery name(String name) {
+ public ProcessDefinitionQuery processDefinitionName(String name) {
this.name = name;
return this;
}
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/repository/RepositorySessionImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/repository/RepositorySessionImpl.java 2009-05-20 12:37:04 UTC (rev 4858)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/repository/RepositorySessionImpl.java 2009-05-20 14:07:38 UTC (rev 4859)
@@ -33,10 +33,10 @@
import org.jbpm.api.Problem;
import org.jbpm.api.ProcessDefinition;
import org.jbpm.api.ProcessDefinitionQuery;
-import org.jbpm.api.client.ClientProcessDefinition;
import org.jbpm.api.session.RepositorySession;
import org.jbpm.internal.log.Log;
import org.jbpm.pvm.internal.model.ExecutionImpl;
+import org.jbpm.pvm.internal.model.ProcessDefinitionImpl;
import org.jbpm.pvm.internal.query.ProcessDefinitionQueryImpl;
/**
@@ -142,7 +142,7 @@
public InputStream getResourceAsStream(long deploymentDbid, String resourceName) {
DeploymentImpl deployment = getDeployment(deploymentDbid);
if (deployment==null) {
- throw new JbpmException("deployment "+deploymentDbid+" doesn't exist");
+ return null;
}
return deployment.getResourceAsStream(resourceName);
}
@@ -153,9 +153,9 @@
return new ProcessDefinitionQueryImpl(session);
}
- public ClientProcessDefinition findProcessDefinitionByKey(String processDefinitionKey) {
+ public ProcessDefinitionImpl findProcessDefinitionByKey(String processDefinitionKey) {
ProcessDefinition processDefinition = createProcessDefinitionQuery()
- .key(processDefinitionKey)
+ .processDefinitionKey(processDefinitionKey)
.orderDesc(ProcessDefinitionQuery.PROPERTY_VERSION)
.page(0, 1)
.uniqueResult();
@@ -167,21 +167,26 @@
return null;
}
- public ClientProcessDefinition findProcessDefinitionById(String processDefinitionId) {
- DeploymentProperty deploymentProperty = (DeploymentProperty) session.createQuery(
- "select deploymentProperty " +
- "from "+DeploymentProperty.class.getName()+" as deploymentProperty " +
- "where deploymentProperty.key = '"+DeploymentImpl.KEY_PROCESS_DEFINITION_ID+"' " +
- " and deploymentProperty.stringValue = '"+processDefinitionId+"' "
- ).setMaxResults(1).uniqueResult();
+ public ProcessDefinitionImpl findProcessDefinitionById(String processDefinitionId) {
+ DeploymentProperty deploymentProperty = findDeploymentPropertyByProcessDefinitionId(processDefinitionId);
if (deploymentProperty!=null) {
long deploymentDbid = deploymentProperty.getDeployment().getDbid();
String objectName = deploymentProperty.getObjectName();
- return (ClientProcessDefinition) getObject(deploymentDbid, objectName);
+ return (ProcessDefinitionImpl) getObject(deploymentDbid, objectName);
}
return null;
}
+
+ public DeploymentProperty findDeploymentPropertyByProcessDefinitionId(String processDefinitionId) {
+ DeploymentProperty deploymentProperty = (DeploymentProperty) session.createQuery(
+ "select deploymentProperty " +
+ "from "+DeploymentProperty.class.getName()+" as deploymentProperty " +
+ "where deploymentProperty.key = '"+DeploymentImpl.KEY_PROCESS_DEFINITION_ID+"' " +
+ " and deploymentProperty.stringValue = '"+processDefinitionId+"' "
+ ).setMaxResults(1).uniqueResult();
+ return deploymentProperty;
+ }
}
Added: jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/deploy/ImageTest.java
===================================================================
--- jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/deploy/ImageTest.java (rev 0)
+++ jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/deploy/ImageTest.java 2009-05-20 14:07:38 UTC (rev 4859)
@@ -0,0 +1,62 @@
+/*
+ * 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.test.deploy;
+
+import java.io.InputStream;
+import java.util.Arrays;
+
+import org.jbpm.api.ProcessDefinition;
+import org.jbpm.pvm.internal.util.IoUtil;
+import org.jbpm.test.JbpmTestCase;
+
+
+/**
+ * @author Tom Baeyens
+ */
+public class ImageTest extends JbpmTestCase {
+
+ public void testImage() {
+ long deploymentDbid = repositoryService
+ .createDeployment()
+ .addResourceFromClasspath("org/jbpm/test/deploy/ImageTest.jpdl.xml")
+ .addResourceFromClasspath("org/jbpm/test/deploy/ImageTest.png")
+ .deploy();
+
+ ProcessDefinition processDefinition = repositoryService
+ .createProcessDefinitionQuery()
+ .processDefinitionKey("ImageTest")
+ .uniqueResult();
+
+ String imageResourceName = processDefinition.getImageResourceName();
+ assertEquals("org/jbpm/test/deploy/ImageTest.png", imageResourceName);
+
+ InputStream inputStream = repositoryService.getResourceAsStream(processDefinition.getDeploymentDbid(), imageResourceName);
+ byte[] imageBytes = IoUtil.readBytes(inputStream);
+
+ inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream("org/jbpm/test/deploy/ImageTest.png");
+ byte[] expectedImageBytes = IoUtil.readBytes(inputStream);
+
+ assertTrue(Arrays.equals(expectedImageBytes, imageBytes));
+
+ repositoryService.deleteDeploymentCascade(deploymentDbid);
+ }
+}
Property changes on: jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/deploy/ImageTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/process/ActivityCoordinatesTest.java
===================================================================
--- jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/process/ActivityCoordinatesTest.java 2009-05-20 12:37:04 UTC (rev 4858)
+++ jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/process/ActivityCoordinatesTest.java 2009-05-20 14:07:38 UTC (rev 4859)
@@ -41,7 +41,7 @@
);
String processDefinitionId = repositoryService.createProcessDefinitionQuery()
- .key("ActivityCoordinatesProcess")
+ .processDefinitionKey("ActivityCoordinatesProcess")
.uniqueResult()
.getId();
@@ -63,7 +63,7 @@
);
String processDefinitionId = repositoryService.createProcessDefinitionQuery()
- .key("ActivityCoordinatesProcess")
+ .processDefinitionKey("ActivityCoordinatesProcess")
.uniqueResult()
.getId();
Modified: jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/process/DeploymentResourcesTest.java
===================================================================
--- jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/process/DeploymentResourcesTest.java 2009-05-20 12:37:04 UTC (rev 4858)
+++ jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/process/DeploymentResourcesTest.java 2009-05-20 14:07:38 UTC (rev 4859)
@@ -78,7 +78,7 @@
registerDeployment(deploymentDbid);
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery()
- .key("Resource")
+ .processDefinitionKey("Resource")
.uniqueResult();
assertNotNull(processDefinition);
Modified: jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/process/ProcessDefinitionQueryTest.java
===================================================================
--- jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/process/ProcessDefinitionQueryTest.java 2009-05-20 12:37:04 UTC (rev 4858)
+++ jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/process/ProcessDefinitionQueryTest.java 2009-05-20 14:07:38 UTC (rev 4859)
@@ -73,7 +73,7 @@
);
List<ProcessDefinition> processDefinitions = repositoryService.createProcessDefinitionQuery()
- .nameLike("%make%")
+ .processDefinitionNameLike("%make%")
.orderAsc(ProcessDefinitionQuery.PROPERTY_NAME)
.list();
@@ -126,7 +126,7 @@
);
List<ProcessDefinition> processDefinitions = repositoryService.createProcessDefinitionQuery()
- .nameLike("make%")
+ .processDefinitionNameLike("make%")
.orderAsc(ProcessDefinitionQuery.PROPERTY_ID)
.list();
Modified: jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/process/RepositoryServiceTest.java
===================================================================
--- jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/process/RepositoryServiceTest.java 2009-05-20 12:37:04 UTC (rev 4858)
+++ jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/process/RepositoryServiceTest.java 2009-05-20 14:07:38 UTC (rev 4859)
@@ -43,7 +43,7 @@
);
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery()
- .key("Insurance_claim")
+ .processDefinitionKey("Insurance_claim")
.orderDesc(ProcessDefinitionQuery.PROPERTY_VERSION)
.page(0,1)
.uniqueResult();
@@ -63,7 +63,7 @@
);
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery()
- .key("ICL")
+ .processDefinitionKey("ICL")
.orderDesc(ProcessDefinitionQuery.PROPERTY_VERSION)
.page(0,1)
.uniqueResult();
@@ -85,7 +85,7 @@
);
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery()
- .key("Name_with_spaces")
+ .processDefinitionKey("Name_with_spaces")
.orderDesc(ProcessDefinitionQuery.PROPERTY_VERSION)
.page(0,1)
.uniqueResult();
@@ -101,7 +101,7 @@
deployMultipleVersionsOfProcesses();
List<ProcessDefinition> processDefinitions = repositoryService.createProcessDefinitionQuery()
- .key("nuclear_fusion")
+ .processDefinitionKey("nuclear_fusion")
.orderDesc(ProcessDefinitionQuery.PROPERTY_VERSION)
.list();
assertNotNull(processDefinitions);
@@ -121,7 +121,7 @@
deployMultipleVersionsOfProcesses();
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery()
- .key("nuclear_fusion")
+ .processDefinitionKey("nuclear_fusion")
.orderDesc(ProcessDefinitionQuery.PROPERTY_VERSION)
.page(0,1)
.uniqueResult();
@@ -141,7 +141,7 @@
// load it
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery()
- .id("given-33")
+ .processDefinitionId("given-33")
.uniqueResult();
assertNotNull(processDefinition);
@@ -224,7 +224,7 @@
// look it up again
List<ProcessDefinition> processDefinitions = repositoryService.createProcessDefinitionQuery()
- .key("versionme")
+ .processDefinitionKey("versionme")
.orderDesc(ProcessDefinitionQuery.PROPERTY_VERSION)
.list();
@@ -243,7 +243,7 @@
// look them up again
processDefinitions = repositoryService.createProcessDefinitionQuery()
- .key("versionme")
+ .processDefinitionKey("versionme")
.orderDesc(ProcessDefinitionQuery.PROPERTY_VERSION)
.list();
@@ -263,7 +263,7 @@
// load it
List<ProcessDefinition> processDefinitions = repositoryService.createProcessDefinitionQuery()
- .key("takethis")
+ .processDefinitionKey("takethis")
.list();
assertNotNull(processDefinitions);
Added: jbpm4/trunk/modules/test-db/src/test/resources/org/jbpm/test/deploy/ImageTest.jpdl.xml
===================================================================
--- jbpm4/trunk/modules/test-db/src/test/resources/org/jbpm/test/deploy/ImageTest.jpdl.xml (rev 0)
+++ jbpm4/trunk/modules/test-db/src/test/resources/org/jbpm/test/deploy/ImageTest.jpdl.xml 2009-05-20 14:07:38 UTC (rev 4859)
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<process name="ImageTest" xmlns="http://jbpm.org/4.0/jpdl">
+
+ <start g="20,20,48,48">
+ <transition to="wait"/>
+ </start>
+
+ <state name="wait" g="115,17,88,52" />
+
+</process>
Property changes on: jbpm4/trunk/modules/test-db/src/test/resources/org/jbpm/test/deploy/ImageTest.jpdl.xml
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: jbpm4/trunk/modules/test-db/src/test/resources/org/jbpm/test/deploy/ImageTest.png
===================================================================
(Binary files differ)
Property changes on: jbpm4/trunk/modules/test-db/src/test/resources/org/jbpm/test/deploy/ImageTest.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
More information about the jbpm-commits
mailing list