本文整理了Java中org.camunda.bpm.engine.RepositoryService.suspendProcessDefinitionById
方法的一些代码示例,展示了RepositoryService.suspendProcessDefinitionById
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。RepositoryService.suspendProcessDefinitionById
方法的具体详情如下:
包路径:org.camunda.bpm.engine.RepositoryService
类名称:RepositoryService
方法名:suspendProcessDefinitionById
[英]Suspends the process definition with the given id. If a process definition is in state suspended, it will not be possible to start new process instances based on the process definition. Note: all the process instances of the process definition will still be active (ie. not suspended)!
Note: for more complex suspend commands use #updateProcessDefinitionSuspensionState().
[中]挂起具有给定id的流程定义。如果流程定义处于挂起状态,则无法基于流程定义启动新的流程实例。注意:流程定义的所有流程实例仍将处于活动状态(即未暂停)!
注意:对于更复杂的挂起命令,请使用#updateProcessDefinitionSuspendionState()。
代码示例来源:origin: camunda/camunda-bpm-platform
public Void call() throws Exception {
repositoryService.suspendProcessDefinitionById(processDefinitionId);
return null;
}
});
代码示例来源:origin: camunda/camunda-bpm-platform
@Deployment(resources = "org/camunda/bpm/engine/test/api/runtime/MessageCorrelationTest.testMessageStartEventCorrelation.bpmn20.xml")
@Test
public void testSuspendedProcessDefinition() {
String processDefinitionId = repositoryService.createProcessDefinitionQuery().singleResult().getId();
repositoryService.suspendProcessDefinitionById(processDefinitionId);
Map<String, Object> variables = new HashMap<String, Object>();
variables.put("aKey", "aValue");
try {
runtimeService.correlateMessage("newInvoiceMessage", new HashMap<String, Object>(), variables);
fail("It should not be possible to correlate a message to a suspended process definition.");
} catch (MismatchingMessageCorrelationException e) {
// expected
}
}
代码示例来源:origin: camunda/camunda-bpm-platform
@Test
public void testSuspendProcessDefinitionExcludingInstances() {
Map<String, Object> params = new HashMap<String, Object>();
params.put("suspended", true);
params.put("includeProcessInstances", false);
given()
.pathParam("id", MockProvider.EXAMPLE_PROCESS_DEFINITION_ID)
.contentType(ContentType.JSON)
.body(params)
.then()
.expect()
.statusCode(Status.NO_CONTENT.getStatusCode())
.when()
.put(SINGLE_PROCESS_DEFINITION_SUSPENDED_URL);
verify(repositoryServiceMock).suspendProcessDefinitionById(MockProvider.EXAMPLE_PROCESS_DEFINITION_ID, false, null);
}
代码示例来源:origin: camunda/camunda-bpm-platform
public void testSuspendProcessDefinitionById() {
// given
String processDefinitionId = selectProcessDefinitionByKey(ONE_TASK_PROCESS_KEY).getId();
createGrantAuthorization(PROCESS_DEFINITION, ONE_TASK_PROCESS_KEY, userId, UPDATE);
// when
repositoryService.suspendProcessDefinitionById(processDefinitionId);
// then
ProcessDefinition definition = selectProcessDefinitionByKey(ONE_TASK_PROCESS_KEY);
assertTrue(definition.isSuspended());
}
代码示例来源:origin: camunda/camunda-bpm-platform
@Deployment(resources={"org/camunda/bpm/engine/test/api/repository/processOne.bpmn20.xml"})
public void testSuspendAlreadySuspendedProcessDefinition() {
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().singleResult();
assertFalse(processDefinition.isSuspended());
repositoryService.suspendProcessDefinitionById(processDefinition.getId());
try {
repositoryService.suspendProcessDefinitionById(processDefinition.getId());
processDefinition = repositoryService.createProcessDefinitionQuery().singleResult();
assertTrue(processDefinition.isSuspended());
} catch (Exception e) {
fail("Should be successful");
}
}
代码示例来源:origin: camunda/camunda-bpm-platform
@Deployment(resources={
"org/camunda/bpm/engine/test/api/repository/processOne.bpmn20.xml",
"org/camunda/bpm/engine/test/api/repository/processTwo.bpmn20.xml"
})
public void testQueryForActiveDefinitions() {
// default = all definitions
List<ProcessDefinition> processDefinitionList = repositoryService.createProcessDefinitionQuery()
.list();
assertEquals(2, processDefinitionList.size());
assertEquals(2, repositoryService.createProcessDefinitionQuery().active().count());
ProcessDefinition processDefinition = processDefinitionList.get(0);
repositoryService.suspendProcessDefinitionById(processDefinition.getId());
assertEquals(2, repositoryService.createProcessDefinitionQuery().count());
assertEquals(1, repositoryService.createProcessDefinitionQuery().active().count());
}
代码示例来源:origin: camunda/camunda-bpm-platform
@Deployment(resources={
"org/camunda/bpm/engine/test/api/repository/processOne.bpmn20.xml",
"org/camunda/bpm/engine/test/api/repository/processTwo.bpmn20.xml"
})
public void testQueryForSuspendedDefinitions() {
// default = all definitions
List<ProcessDefinition> processDefinitionList = repositoryService.createProcessDefinitionQuery()
.list();
assertEquals(2, processDefinitionList.size());
assertEquals(2, repositoryService.createProcessDefinitionQuery().active().count());
ProcessDefinition processDefinition = processDefinitionList.get(0);
repositoryService.suspendProcessDefinitionById(processDefinition.getId());
assertEquals(2, repositoryService.createProcessDefinitionQuery().count());
assertEquals(1, repositoryService.createProcessDefinitionQuery().suspended().count());
}
代码示例来源:origin: camunda/camunda-bpm-platform
@Test
@Deployment(resources = {ONE_TASK_PROCESS})
public void testQueryProcessDefinitionOperationsById() {
// given
process = runtimeService.startProcessInstanceByKey("oneTaskProcess");
// when
repositoryService.suspendProcessDefinitionById(process.getProcessDefinitionId(), true, null);
repositoryService.activateProcessDefinitionById(process.getProcessDefinitionId(), true, null);
// then
assertEquals(0, query().entityType(PROCESS_DEFINITION).count());
}
代码示例来源:origin: camunda/camunda-bpm-platform
public void testSuspendProcessDefinitionByIdIncludingInstancesWithUpdateInstancePermissionOnProcessDefinition() {
// given
String processDefinitionId = selectProcessDefinitionByKey(ONE_TASK_PROCESS_KEY).getId();
createGrantAuthorization(PROCESS_DEFINITION, ONE_TASK_PROCESS_KEY, userId, UPDATE, UPDATE_INSTANCE);
startProcessInstanceByKey(ONE_TASK_PROCESS_KEY);
// when
repositoryService.suspendProcessDefinitionById(processDefinitionId, true, null);
// then
ProcessDefinition definition = selectProcessDefinitionByKey(ONE_TASK_PROCESS_KEY);
assertTrue(definition.isSuspended());
ProcessInstance instance = selectSingleProcessInstance();
assertTrue(instance.isSuspended());
}
代码示例来源:origin: camunda/camunda-bpm-platform
public void testSuspendProcessDefinitionByIdWithoutAuthorization() {
// given
String processDefinitionId = selectProcessDefinitionByKey(ONE_TASK_PROCESS_KEY).getId();
try {
// when
repositoryService.suspendProcessDefinitionById(processDefinitionId);
fail("Exception expected: It should not be possible to suspend the process definition");
} catch (AuthorizationException e) {
// then
String message = e.getMessage();
assertTextPresent(userId, message);
assertTextPresent(UPDATE.getName(), message);
assertTextPresent(ONE_TASK_PROCESS_KEY, message);
assertTextPresent(PROCESS_DEFINITION.resourceName(), message);
}
}
代码示例来源:origin: camunda/camunda-bpm-platform
public void testSuspendProcessDefinitionByIdIncludingInstancesWithUpdatePermissionOnAnyProcessInstance() {
// given
String processDefinitionId = selectProcessDefinitionByKey(ONE_TASK_PROCESS_KEY).getId();
createGrantAuthorization(PROCESS_DEFINITION, ONE_TASK_PROCESS_KEY, userId, UPDATE);
startProcessInstanceByKey(ONE_TASK_PROCESS_KEY);
createGrantAuthorization(PROCESS_INSTANCE, ANY, userId, UPDATE);
// when
repositoryService.suspendProcessDefinitionById(processDefinitionId, true, null);
// then
ProcessDefinition definition = selectProcessDefinitionByKey(ONE_TASK_PROCESS_KEY);
assertTrue(definition.isSuspended());
ProcessInstance instance = selectSingleProcessInstance();
assertTrue(instance.isSuspended());
}
代码示例来源:origin: camunda/camunda-bpm-platform
@Deployment
public void testJobIsExecutedOnProcessDefinitionSuspend() {
Date now = new Date();
ClockUtil.setCurrentTime(now);
// Suspending the process definition should not stop the execution of jobs
// Added this test because in previous implementations, this was the case.
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().singleResult();
runtimeService.startProcessInstanceById(processDefinition.getId());
repositoryService.suspendProcessDefinitionById(processDefinition.getId());
assertEquals(1, managementService.createJobQuery().count());
// The jobs should simply be executed
Job job = managementService.createJobQuery().singleResult();
managementService.executeJob(job.getId());
assertEquals(0, managementService.createJobQuery().count());
}
代码示例来源:origin: camunda/camunda-bpm-platform
@Deployment(resources = {"org/camunda/bpm/engine/test/bpmn/event/signal/SignalEventTest.signalStartEvent.bpmn20.xml"})
@Test
public void testSuspendedProcessWithSignalStartEvent() {
// event subscription for signal start event
assertEquals(1, runtimeService.createEventSubscriptionQuery().eventType("signal").eventName("alert").count());
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().singleResult();
repositoryService.suspendProcessDefinitionById(processDefinition.getId());
runtimeService.signalEventReceived("alert");
// the signal should not start a process instance for the suspended process definition
assertEquals(0, taskService.createTaskQuery().count());
}
代码示例来源:origin: camunda/camunda-bpm-platform
@Deployment(resources = {"org/camunda/bpm/engine/test/api/repository/ProcessDefinitionSuspensionTest.testSuspendStartTimerOnProcessDefinitionSuspension.bpmn20.xml"})
public void testSuspendStartTimerOnProcessDefinitionSuspensionById() {
ProcessDefinition pd = repositoryService.createProcessDefinitionQuery().singleResult();
Job startTimer = managementService.createJobQuery().timers().singleResult();
assertFalse(startTimer.isSuspended());
// when
repositoryService.suspendProcessDefinitionById(pd.getId());
// then
// refresh job
startTimer = managementService.createJobQuery().timers().singleResult();
assertTrue(startTimer.isSuspended());
}
代码示例来源:origin: camunda/camunda-bpm-platform
@Deployment(resources = {
"org/camunda/bpm/engine/test/bpmn/event/signal/SignalEventTest.signalStartEvent.bpmn20.xml",
"org/camunda/bpm/engine/test/bpmn/event/signal/SignalEventTests.throwAlertSignal.bpmn20.xml"})
@Test
public void testIntermediateThrowingSignalEventWithSuspendedSignalStartEvent() {
// event subscription for signal start event
assertEquals(1, runtimeService.createEventSubscriptionQuery().eventType("signal").eventName("alert").count());
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().processDefinitionKey("startBySignal").singleResult();
repositoryService.suspendProcessDefinitionById(processDefinition.getId());
// start a process instance to throw a signal
runtimeService.startProcessInstanceByKey("throwSignal");
// the signal should not start a new process instance of the suspended process definition
assertEquals(0, taskService.createTaskQuery().count());
}
代码示例来源:origin: camunda/camunda-bpm-platform
@Deployment(resources={"org/camunda/bpm/engine/test/api/repository/processOne.bpmn20.xml"})
public void testSuspendActivateProcessDefinitionById() {
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().singleResult();
assertFalse(processDefinition.isSuspended());
// suspend
repositoryService.suspendProcessDefinitionById(processDefinition.getId());
processDefinition = repositoryService.createProcessDefinitionQuery().singleResult();
assertTrue(processDefinition.isSuspended());
// activate
repositoryService.activateProcessDefinitionById(processDefinition.getId());
processDefinition = repositoryService.createProcessDefinitionQuery().singleResult();
assertFalse(processDefinition.isSuspended());
}
代码示例来源:origin: camunda/camunda-bpm-platform
@Deployment(resources = {"org/camunda/bpm/engine/test/api/repository/ProcessDefinitionSuspensionTest.testSuspendStartTimerOnProcessDefinitionSuspension.bpmn20.xml"})
public void testActivateStartTimerOnProcessDefinitionSuspensionById() {
ProcessDefinition pd = repositoryService.createProcessDefinitionQuery().singleResult();
repositoryService.suspendProcessDefinitionById(pd.getId());
Job startTimer = managementService.createJobQuery().timers().singleResult();
assertTrue(startTimer.isSuspended());
// when
repositoryService.activateProcessDefinitionById(pd.getId());
// then
// refresh job
startTimer = managementService.createJobQuery().timers().singleResult();
assertFalse(startTimer.isSuspended());
}
代码示例来源:origin: camunda/camunda-bpm-platform
@Deployment(resources={"org/camunda/bpm/engine/test/api/runtime/oneTaskProcess.bpmn20.xml"})
public void testStartBeforeActivityForSuspendProcessDefinition() {
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().singleResult();
//start process instance
runtimeService.startProcessInstanceById(processDefinition.getId());
ProcessInstance processInstance = runtimeService.createProcessInstanceQuery().singleResult();
// Suspend process definition
repositoryService.suspendProcessDefinitionById(processDefinition.getId(), true, null);
// try to start before activity for suspended processDefinition
try {
runtimeService.createProcessInstanceModification(processInstance.getId()).startBeforeActivity("theTask").execute();
fail("Exception is expected but not thrown");
} catch(SuspendedEntityInteractionException e) {
assertTextPresentIgnoreCase("is suspended", e.getMessage());
}
}
代码示例来源:origin: camunda/camunda-bpm-platform
@Deployment(resources={"org/camunda/bpm/engine/test/api/runtime/oneTaskProcess.bpmn20.xml"})
public void testStartAfterActivityForSuspendProcessDefinition() {
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().singleResult();
//start process instance
runtimeService.startProcessInstanceById(processDefinition.getId());
ProcessInstance processInstance = runtimeService.createProcessInstanceQuery().singleResult();
// Suspend process definition
repositoryService.suspendProcessDefinitionById(processDefinition.getId(), true, null);
// try to start after activity for suspended processDefinition
try {
runtimeService.createProcessInstanceModification(processInstance.getId()).startAfterActivity("theTask").execute();
fail("Exception is expected but not thrown");
} catch(SuspendedEntityInteractionException e) {
assertTextPresentIgnoreCase("is suspended", e.getMessage());
}
}
代码示例来源:origin: camunda/camunda-bpm-platform
@Deployment(resources={"org/camunda/bpm/engine/test/api/runtime/oneTaskProcess.bpmn20.xml"})
public void testContinueProcessAfterProcessDefinitionSuspend() {
// Start Process Instance
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().singleResult();
runtimeService.startProcessInstanceByKey(processDefinition.getKey());
// Verify one task is created
Task task = taskService.createTaskQuery().singleResult();
assertNotNull(task);
assertEquals(1, runtimeService.createProcessInstanceQuery().count());
// Suspend process definition
repositoryService.suspendProcessDefinitionById(processDefinition.getId());
// Process should be able to continue
taskService.complete(task.getId());
assertEquals(0, runtimeService.createProcessInstanceQuery().count());
}
内容来源于网络,如有侵权,请联系作者删除!