提交 61182262 编写于 作者: T Tijs Rademakers

Added delete option to process instance query + move to 5.16.1 version

上级 ee8ca01c
......@@ -10,7 +10,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<properties>
......
......@@ -10,7 +10,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<build>
......
......@@ -10,7 +10,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<properties>
......
......@@ -11,7 +11,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
......
......@@ -11,7 +11,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
......
......@@ -11,7 +11,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<properties>
......
......@@ -10,7 +10,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<dependencies>
......
......@@ -10,7 +10,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<properties>
......
......@@ -11,7 +11,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<properties>
......
......@@ -10,7 +10,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<dependencies>
......
......@@ -49,7 +49,7 @@ package org.activiti.engine;
public interface ProcessEngine extends EngineServices {
/** the version of the activiti library */
public static String VERSION = "5.17-SNAPSHOT";
public static String VERSION = "5.16.1";
/** The name as specified in 'process-engine-name' in
* the activiti.cfg.xml configuration file.
......
......@@ -61,6 +61,12 @@ public interface HistoricProcessInstanceQuery extends Query<HistoricProcessInsta
/** Only select historic process instance that are not yet finished. */
HistoricProcessInstanceQuery unfinished();
/** Only select historic process instances that are deleted. */
HistoricProcessInstanceQuery deleted();
/** Only select historic process instance that are not deleted. */
HistoricProcessInstanceQuery notDeleted();
/** Only select the historic process instances with which the user with the given id is involved. */
HistoricProcessInstanceQuery involvedUser(String userId);
......
......@@ -28,6 +28,7 @@ import org.activiti.engine.impl.interceptor.CommandExecutor;
* @author Tom Baeyens
* @author Falko Menge
* @author Bernd Ruecker
* @author Tijs Rademakers
*/
public class HistoricProcessInstanceQueryImpl extends AbstractVariableQueryImpl<HistoricProcessInstanceQuery, HistoricProcessInstance> implements HistoricProcessInstanceQuery {
......@@ -38,6 +39,8 @@ public class HistoricProcessInstanceQueryImpl extends AbstractVariableQueryImpl<
protected String deploymentId;
protected boolean finished = false;
protected boolean unfinished = false;
protected boolean deleted = false;
protected boolean notDeleted = false;
protected String startedBy;
protected String superProcessInstanceId;
protected boolean excludeSubprocesses;
......@@ -113,6 +116,16 @@ public class HistoricProcessInstanceQueryImpl extends AbstractVariableQueryImpl<
return this;
}
public HistoricProcessInstanceQuery deleted() {
this.deleted = true;
return this;
}
public HistoricProcessInstanceQuery notDeleted() {
this.notDeleted = true;
return this;
}
public HistoricProcessInstanceQuery startedBy(String userId) {
this.startedBy = userId;
return this;
......
......@@ -34,10 +34,15 @@ public class DeleteProcessInstanceCmd implements Command<Void>, Serializable {
}
public Void execute(CommandContext commandContext) {
if(processInstanceId == null) {
if (processInstanceId == null) {
throw new ActivitiIllegalArgumentException("processInstanceId is null");
}
// fill default reason if none provided
if (deleteReason == null) {
deleteReason = "ACTIVITI_DELETED";
}
commandContext
.getExecutionEntityManager()
.deleteProcessInstance(processInstanceId, deleteReason);
......
......@@ -55,14 +55,19 @@ public class DeploymentManager {
if (processDefinitionId == null) {
throw new ActivitiIllegalArgumentException("Invalid process definition id : null");
}
ProcessDefinitionEntity processDefinition = Context
.getCommandContext()
.getProcessDefinitionEntityManager()
.findProcessDefinitionById(processDefinitionId);
if(processDefinition == null) {
throw new ActivitiObjectNotFoundException("no deployed process definition found with id '" + processDefinitionId + "'", ProcessDefinition.class);
// first try the cache
ProcessDefinitionEntity processDefinition = processDefinitionCache.get(processDefinitionId);
if (processDefinition == null) {
processDefinition = Context.getCommandContext()
.getProcessDefinitionEntityManager()
.findProcessDefinitionById(processDefinitionId);
if (processDefinition == null) {
throw new ActivitiObjectNotFoundException("no deployed process definition found with id '" + processDefinitionId + "'", ProcessDefinition.class);
}
processDefinition = resolveProcessDefinition(processDefinition);
}
processDefinition = resolveProcessDefinition(processDefinition);
return processDefinition;
}
......@@ -71,6 +76,7 @@ public class DeploymentManager {
.getCommandContext()
.getProcessDefinitionEntityManager()
.findLatestProcessDefinitionByKey(processDefinitionKey);
if (processDefinition==null) {
throw new ActivitiObjectNotFoundException("no processes deployed with key '"+processDefinitionKey+"'", ProcessDefinition.class);
}
......
......@@ -6,10 +6,10 @@ create table ACT_GE_PROPERTY (
);
insert into ACT_GE_PROPERTY
values ('schema.version', '5.17-SNAPSHOT', 1);
values ('schema.version', '5.16.1', 1);
insert into ACT_GE_PROPERTY
values ('schema.history', 'create(5.17-SNAPSHOT)', 1);
values ('schema.history', 'create(5.16.1)', 1);
insert into ACT_GE_PROPERTY
values ('next.dbid', '1', 1);
......
......@@ -6,10 +6,10 @@ create table ACT_GE_PROPERTY (
);
insert into ACT_GE_PROPERTY
values ('schema.version', '5.17-SNAPSHOT', 1);
values ('schema.version', '5.16.1', 1);
insert into ACT_GE_PROPERTY
values ('schema.history', 'create(5.17-SNAPSHOT)', 1);
values ('schema.history', 'create(5.16.1)', 1);
insert into ACT_GE_PROPERTY
values ('next.dbid', '1', 1);
......
......@@ -6,10 +6,10 @@ create table ACT_GE_PROPERTY (
);
insert into ACT_GE_PROPERTY
values ('schema.version', '5.17-SNAPSHOT', 1);
values ('schema.version', '5.16.1', 1);
insert into ACT_GE_PROPERTY
values ('schema.history', 'create(5.17-SNAPSHOT)', 1);
values ('schema.history', 'create(5.16.1)', 1);
insert into ACT_GE_PROPERTY
values ('next.dbid', '1', 1);
......
......@@ -6,10 +6,10 @@ create table ACT_GE_PROPERTY (
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
insert into ACT_GE_PROPERTY
values ('schema.version', '5.17-SNAPSHOT', 1);
values ('schema.version', '5.16.1', 1);
insert into ACT_GE_PROPERTY
values ('schema.history', 'create(5.17-SNAPSHOT)', 1);
values ('schema.history', 'create(5.16.1)', 1);
insert into ACT_GE_PROPERTY
values ('next.dbid', '1', 1);
......
......@@ -6,10 +6,10 @@ create table ACT_GE_PROPERTY (
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
insert into ACT_GE_PROPERTY
values ('schema.version', '5.17-SNAPSHOT', 1);
values ('schema.version', '5.16.1', 1);
insert into ACT_GE_PROPERTY
values ('schema.history', 'create(5.17-SNAPSHOT)', 1);
values ('schema.history', 'create(5.16.1)', 1);
insert into ACT_GE_PROPERTY
values ('next.dbid', '1', 1);
......
......@@ -6,10 +6,10 @@ create table ACT_GE_PROPERTY (
);
insert into ACT_GE_PROPERTY
values ('schema.version', '5.17-SNAPSHOT', 1);
values ('schema.version', '5.16.1', 1);
insert into ACT_GE_PROPERTY
values ('schema.history', 'create(5.17-SNAPSHOT)', 1);
values ('schema.history', 'create(5.16.1)', 1);
insert into ACT_GE_PROPERTY
values ('next.dbid', '1', 1);
......
......@@ -6,10 +6,10 @@ create table ACT_GE_PROPERTY (
);
insert into ACT_GE_PROPERTY
values ('schema.version', '5.17-SNAPSHOT', 1);
values ('schema.version', '5.16.1', 1);
insert into ACT_GE_PROPERTY
values ('schema.history', 'create(5.17-SNAPSHOT)', 1);
values ('schema.history', 'create(5.16.1)', 1);
insert into ACT_GE_PROPERTY
values ('next.dbid', '1', 1);
......
......@@ -268,6 +268,12 @@
<if test="finished">
and RES.END_TIME_ is not NULL
</if>
<if test="notDeleted">
and RES.DELETE_REASON_ IS NULL
</if>
<if test="deleted">
and RES.DELETE_REASON_ IS NOT NULL
</if>
<if test="involvedUser != null">
and (
exists(select LINK.USER_ID_ from ${prefix}ACT_HI_IDENTITYLINK LINK where USER_ID_ = #{involvedUser} and LINK.PROC_INST_ID_ = RES.ID_)
......
update ACT_GE_PROPERTY set VALUE_ = '5.16.1' where NAME_ = 'schema.version';
\ No newline at end of file
......@@ -203,6 +203,49 @@ public class HistoryServiceTest extends PluggableActivitiTestCase {
}
}
@Deployment(resources = { "org/activiti/engine/test/api/oneTaskProcess.bpmn20.xml" })
public void testHistoricProcessInstanceQueryForDelete() {
String processInstanceId = runtimeService.startProcessInstanceByKey("oneTaskProcess").getId();
runtimeService.deleteProcessInstance(processInstanceId, null);
HistoricProcessInstanceQuery processInstanceQuery = historyService.createHistoricProcessInstanceQuery().processInstanceId(processInstanceId);
assertEquals(1, processInstanceQuery.count());
HistoricProcessInstance processInstance = processInstanceQuery.singleResult();
assertEquals(processInstanceId, processInstance.getId());
assertEquals("ACTIVITI_DELETED", processInstance.getDeleteReason());
processInstanceQuery = historyService.createHistoricProcessInstanceQuery().processInstanceId(processInstanceId).deleted();
assertEquals(1, processInstanceQuery.count());
processInstance = processInstanceQuery.singleResult();
assertEquals(processInstanceId, processInstance.getId());
assertEquals("ACTIVITI_DELETED", processInstance.getDeleteReason());
processInstanceQuery = historyService.createHistoricProcessInstanceQuery().processInstanceId(processInstanceId).notDeleted();
assertEquals(0, processInstanceQuery.count());
historyService.deleteHistoricProcessInstance(processInstanceId);
processInstanceQuery = historyService.createHistoricProcessInstanceQuery().processInstanceId(processInstanceId);
assertEquals(0, processInstanceQuery.count());
processInstanceId = runtimeService.startProcessInstanceByKey("oneTaskProcess").getId();
runtimeService.deleteProcessInstance(processInstanceId, "custom message");
processInstanceQuery = historyService.createHistoricProcessInstanceQuery().processInstanceId(processInstanceId);
assertEquals(1, processInstanceQuery.count());
processInstance = processInstanceQuery.singleResult();
assertEquals(processInstanceId, processInstance.getId());
assertEquals("custom message", processInstance.getDeleteReason());
processInstanceQuery = historyService.createHistoricProcessInstanceQuery().processInstanceId(processInstanceId).deleted();
assertEquals(1, processInstanceQuery.count());
processInstance = processInstanceQuery.singleResult();
assertEquals(processInstanceId, processInstance.getId());
assertEquals("custom message", processInstance.getDeleteReason());
processInstanceQuery = historyService.createHistoricProcessInstanceQuery().processInstanceId(processInstanceId).notDeleted();
assertEquals(0, processInstanceQuery.count());
}
@Deployment(resources = { "org/activiti/engine/test/api/oneTaskProcess.bpmn20.xml", "org/activiti/engine/test/api/runtime/oneTaskProcess2.bpmn20.xml" })
public void testHistoricProcessInstanceQueryByDeploymentId() {
org.activiti.engine.repository.Deployment deployment = repositoryService.createDeploymentQuery().singleResult();
......
......@@ -211,7 +211,7 @@ public class RuntimeServiceTest extends PluggableActivitiTestCase {
.singleResult();
assertNotNull(historicInstance);
assertNull(historicInstance.getDeleteReason());
assertEquals("ACTIVITI_DELETED", historicInstance.getDeleteReason());
}
}
......
......@@ -11,7 +11,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<properties>
......
......@@ -11,7 +11,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<properties>
......
......@@ -10,7 +10,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<properties>
......
......@@ -10,7 +10,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<properties>
......
......@@ -11,7 +11,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<properties>
......
......@@ -10,7 +10,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<properties>
......
......@@ -11,7 +11,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<build>
......
......@@ -79,11 +79,11 @@ public class BlueprintBasicTest {
@Configuration
public Option[] createConfiguration() {
Option[] coreBundles = options(
mavenBundle().groupId("org.activiti").artifactId("activiti-bpmn-model").version("5.17-SNAPSHOT"),
mavenBundle().groupId("org.activiti").artifactId("activiti-bpmn-converter").version("5.17-SNAPSHOT"),
mavenBundle().groupId("org.activiti").artifactId("activiti-process-validation").version("5.17-SNAPSHOT"),
mavenBundle().groupId("org.activiti").artifactId("activiti-image-generator").version("5.17-SNAPSHOT"),
mavenBundle().groupId("org.activiti").artifactId("activiti-engine").version("5.17-SNAPSHOT"),
mavenBundle().groupId("org.activiti").artifactId("activiti-bpmn-model").version("5.16.1"),
mavenBundle().groupId("org.activiti").artifactId("activiti-bpmn-converter").version("5.16.1"),
mavenBundle().groupId("org.activiti").artifactId("activiti-process-validation").version("5.16.1"),
mavenBundle().groupId("org.activiti").artifactId("activiti-image-generator").version("5.16.1"),
mavenBundle().groupId("org.activiti").artifactId("activiti-engine").version("5.16.1"),
mavenBundle().groupId("org.apache.commons").artifactId("commons-lang3").version("3.3.2"),
mavenBundle().groupId("com.fasterxml.jackson.core").artifactId("jackson-core").version("2.2.3"),
mavenBundle().groupId("com.fasterxml.jackson.core").artifactId("jackson-databind").version("2.2.3"),
......
......@@ -11,7 +11,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<properties>
......
......@@ -10,7 +10,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<properties>
......
......@@ -10,7 +10,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<dependencies>
......
......@@ -10,7 +10,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<properties>
......
......@@ -8,7 +8,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<properties>
......
......@@ -9,7 +9,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<properties>
......
......@@ -10,7 +10,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<build>
......
......@@ -11,7 +11,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<properties>
......
......@@ -10,7 +10,7 @@
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<build>
......
......@@ -14,7 +14,7 @@
</parent>
<packaging>pom</packaging>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<spring.framework.version>4.0.6.RELEASE</spring.framework.version>
......
......@@ -8,7 +8,7 @@
<artifactId>activiti-dbclean</artifactId>
<packaging>pom</packaging>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
<dependencies>
<dependency>
......
......@@ -6,13 +6,13 @@
<name>Activiti - Upgrade Fetcher</name>
<groupId>org.activiti</groupId>
<artifactId>activiti-upgrade-fetcher</artifactId>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
<parent>
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.17-SNAPSHOT</version>
<version>5.16.1</version>
</parent>
<dependencies>
......
......@@ -23,7 +23,7 @@
<book>
<bookinfo><title>Activiti 5.17-SNAPSHOT User Guide</title></bookinfo>
<bookinfo><title>Activiti 5.16.1 User Guide</title></bookinfo>
<toc />
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册