本文整理匯總了Java中org.activiti.engine.task.TaskQuery.singleResult方法的典型用法代碼示例。如果您正苦於以下問題:Java TaskQuery.singleResult方法的具體用法?Java TaskQuery.singleResult怎麽用?Java TaskQuery.singleResult使用的例子?那麽恭喜您, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類org.activiti.engine.task.TaskQuery的用法示例。

在下文中一共展示了TaskQuery.singleResult方法的29個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於我們的係統推薦出更棒的Java代碼示例。

示例1: testOrderProcessWithCallActivity

​點讚 3

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

@Deployment(resources={

"org/activiti/examples/bpmn/callactivity/orderProcess.bpmn20.xml",

"org/activiti/examples/bpmn/callactivity/checkCreditProcess.bpmn20.xml"

})

public void testOrderProcessWithCallActivity() {

// After the process has started, the 'verify credit history' task should be active

ProcessInstance pi = runtimeService.startProcessInstanceByKey("orderProcess");

TaskQuery taskQuery = taskService.createTaskQuery();

Task verifyCreditTask = taskQuery.singleResult();

assertEquals("Verify credit history", verifyCreditTask.getName());

// Verify with Query API

ProcessInstance subProcessInstance = runtimeService.createProcessInstanceQuery().superProcessInstanceId(pi.getId()).singleResult();

assertNotNull(subProcessInstance);

assertEquals(pi.getId(), runtimeService.createProcessInstanceQuery().subProcessInstanceId(subProcessInstance.getId()).singleResult().getId());

// Completing the task with approval, will end the subprocess and continue the original process

taskService.complete(verifyCreditTask.getId(), CollectionUtil.singletonMap("creditApproved", true));

Task prepareAndShipTask = taskQuery.singleResult();

assertEquals("Prepare and Ship", prepareAndShipTask.getName());

}

開發者ID:logicalhacking,項目名稱:SecureBPMN,代碼行數:22,

示例2: testOrderProcessWithCallActivity

​點讚 3

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

@Deployment(resources={

"org/activiti/examples/bpmn/callactivity/orderProcess.bpmn20.xml",

"org/activiti/examples/bpmn/callactivity/checkCreditProcess.bpmn20.xml"

})

public void testOrderProcessWithCallActivity() {

// After the process has started, the 'verify credit history' task should be active

ProcessInstance pi = runtimeService.startProcessInstanceByKey("orderProcess");

TaskQuery taskQuery = taskService.createTaskQuery();

Task verifyCreditTask = taskQuery.singleResult();

// Completing the task with approval, will end the subprocess and continue the original process

taskService.complete(verifyCreditTask.getId(), CollectionUtil.singletonMap("creditApproved", true));

Task prepareAndShipTask = taskQuery.singleResult();

assertEquals("Prepare and Ship", prepareAndShipTask.getName());

//verify

HistoricProcessInstance historicProcessInstance =

historyService.createHistoricProcessInstanceQuery().superProcessInstanceId(pi.getId()).singleResult();

assertNotNull(historicProcessInstance);

assertTrue(historicProcessInstance.getProcessDefinitionId().contains("checkCreditProcess"));

}

開發者ID:logicalhacking,項目名稱:SecureBPMN,代碼行數:22,

示例3: testCallSimpleSubProcess

​點讚 3

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

@Deployment(resources = {

"org/activiti/engine/test/bpmn/callactivity/CallActivity.testCallSimpleSubProcess.bpmn20.xml",

"org/activiti/engine/test/bpmn/callactivity/simpleSubProcess.bpmn20.xml"

})

public void testCallSimpleSubProcess() {

ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("callSimpleSubProcess");

// one task in the subprocess should be active after starting the process instance

TaskQuery taskQuery = taskService.createTaskQuery();

Task taskBeforeSubProcess = taskQuery.singleResult();

assertEquals("Task before subprocess", taskBeforeSubProcess.getName());

// Completing the task continues the process which leads to calling the subprocess

taskService.complete(taskBeforeSubProcess.getId());

Task taskInSubProcess = taskQuery.singleResult();

assertEquals("Task in subprocess", taskInSubProcess.getName());

// Completing the task in the subprocess, finishes the subprocess

taskService.complete(taskInSubProcess.getId());

Task taskAfterSubProcess = taskQuery.singleResult();

assertEquals("Task after subprocess", taskAfterSubProcess.getName());

// Completing this task end the process instance

taskService.complete(taskAfterSubProcess.getId());

assertProcessEnded(processInstance.getId());

}

開發者ID:logicalhacking,項目名稱:SecureBPMN,代碼行數:27,

示例4: testSubProcessEndsSuperProcess

​點讚 3

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

/**

* Test case for a possible tricky case: reaching the end event

* of the subprocess leads to an end event in the super process instance.

*/

@Deployment(resources = {

"org/activiti/engine/test/bpmn/callactivity/CallActivity.testSubProcessEndsSuperProcess.bpmn20.xml",

"org/activiti/engine/test/bpmn/callactivity/simpleSubProcess.bpmn20.xml" })

public void testSubProcessEndsSuperProcess() {

ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("subProcessEndsSuperProcess");

// one task in the subprocess should be active after starting the process instance

TaskQuery taskQuery = taskService.createTaskQuery();

Task taskBeforeSubProcess = taskQuery.singleResult();

assertEquals("Task in subprocess", taskBeforeSubProcess.getName());

// Completing this task ends the subprocess which leads to the end of the whole process instance

taskService.complete(taskBeforeSubProcess.getId());

assertProcessEnded(processInstance.getId());

assertEquals(0, runtimeService.createExecutionQuery().list().size());

}

開發者ID:logicalhacking,項目名稱:SecureBPMN,代碼行數:21,

示例5: testTimerOnCallActivity

​點讚 3

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

@Deployment(resources = {

"org/activiti/engine/test/bpmn/callactivity/CallActivity.testTimerOnCallActivity.bpmn20.xml",

"org/activiti/engine/test/bpmn/callactivity/simpleSubProcess.bpmn20.xml"})

public void testTimerOnCallActivity() {

Date startTime = ClockUtil.getCurrentTime();

// After process start, the task in the subprocess should be active

runtimeService.startProcessInstanceByKey("timerOnCallActivity");

TaskQuery taskQuery = taskService.createTaskQuery();

Task taskInSubProcess = taskQuery.singleResult();

assertEquals("Task in subprocess", taskInSubProcess.getName());

// When the timer on the subprocess is fired, the complete subprocess is destroyed

ClockUtil.setCurrentTime(new Date(startTime.getTime() + (6 * 60 * 1000))); // + 6 minutes, timer fires on 5 minutes

waitForJobExecutorToProcessAllJobs(10000, 100);

Task escalatedTask = taskQuery.singleResult();

assertEquals("Escalated Task", escalatedTask.getName());

// Completing the task ends the complete process

taskService.complete(escalatedTask.getId());

assertEquals(0, runtimeService.createExecutionQuery().list().size());

}

開發者ID:logicalhacking,項目名稱:SecureBPMN,代碼行數:24,

示例6: testQueryByCandidateGroupIn

​點讚 3

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

public void testQueryByCandidateGroupIn() {

List groups = Arrays.asList("management", "accountancy");

TaskQuery query = taskService.createTaskQuery().taskCandidateGroupIn(groups);

assertEquals(5, query.count());

assertEquals(5, query.list().size());

try {

query.singleResult();

fail("expected exception");

} catch (ActivitiException e) {

// OK

}

// Unexisting groups or groups that don't have candidate tasks shouldn't influence other results

groups = Arrays.asList("management", "accountancy", "sales", "unexising");

query = taskService.createTaskQuery().taskCandidateGroupIn(groups);

assertEquals(5, query.count());

assertEquals(5, query.list().size());

}

開發者ID:iotsap,項目名稱:FiWare-Template-Handler,代碼行數:19,

示例7: testOrderProcessWithCallActivity

​點讚 3

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

@Deployment(resources = { "org/activiti/examples/bpmn/callactivity/orderProcess.bpmn20.xml",

"org/activiti/examples/bpmn/callactivity/checkCreditProcess.bpmn20.xml" })

public void testOrderProcessWithCallActivity() {

// After the process has started, the 'verify credit history' task should be

// active

ProcessInstance pi = runtimeService.startProcessInstanceByKey("orderProcess");

TaskQuery taskQuery = taskService.createTaskQuery();

Task verifyCreditTask = taskQuery.singleResult();

// Completing the task with approval, will end the subprocess and continue

// the original process

taskService.complete(verifyCreditTask.getId(), CollectionUtil.singletonMap("creditApproved", true));

Task prepareAndShipTask = taskQuery.singleResult();

assertEquals("Prepare and Ship", prepareAndShipTask.getName());

// verify

HistoricProcessInstance historicProcessInstance = historyService.createHistoricProcessInstanceQuery().superProcessInstanceId(pi.getId()).singleResult();

assertNotNull(historicProcessInstance);

assertTrue(historicProcessInstance.getProcessDefinitionId().contains("checkCreditProcess"));

}

開發者ID:springvelocity,項目名稱:xbpm5,代碼行數:21,

示例8: testSimple

​點讚 3

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

@Deployment

public void testSimple() {

ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("myProc");

TaskQuery taskQuery = taskService.createTaskQuery();

Task userTask = taskQuery.singleResult();

assertEquals("userTask1", userTask.getName());

taskService.complete(userTask.getId(), CollectionUtil.singletonMap("myVar", "test789"));

assertProcessEnded(processInstance.getId());

List variables = historyService.createHistoricVariableInstanceQuery().list();

assertEquals(1, variables.size());

HistoricVariableInstanceEntity historicVariable = (HistoricVariableInstanceEntity) variables.get(0);

assertEquals("test456", historicVariable.getTextValue());

assertEquals(5, historyService.createHistoricActivityInstanceQuery().count());

assertEquals(3, historyService.createHistoricDetailQuery().count());

}

開發者ID:springvelocity,項目名稱:xbpm5,代碼行數:21,

示例9: testTimerOnCallActivity

​點讚 3

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

@Deployment(resources = {

"org/activiti/engine/test/bpmn/callactivity/CallActivity.testTimerOnCallActivity.bpmn20.xml",

"org/activiti/engine/test/bpmn/callactivity/simpleSubProcess.bpmn20.xml"})

public void testTimerOnCallActivity() {

Date startTime = ClockUtil.getCurrentTime();

// After process start, the task in the subprocess should be active

runtimeService.startProcessInstanceByKey("timerOnCallActivity");

TaskQuery taskQuery = taskService.createTaskQuery();

Task taskInSubProcess = taskQuery.singleResult();

assertEquals("Task in subprocess", taskInSubProcess.getName());

// When the timer on the subprocess is fired, the complete subprocess is destroyed

ClockUtil.setCurrentTime(new Date(startTime.getTime() + (6 * 60 * 1000))); // + 6 minutes, timer fires on 5 minutes

waitForJobExecutorToProcessAllJobs(10000, 5000L);

Task escalatedTask = taskQuery.singleResult();

assertEquals("Escalated Task", escalatedTask.getName());

// Completing the task ends the complete process

taskService.complete(escalatedTask.getId());

assertEquals(0, runtimeService.createExecutionQuery().list().size());

}

開發者ID:springvelocity,項目名稱:xbpm5,代碼行數:24,

示例10: getTaskInstance

​點讚 2

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

public Task getTaskInstance(String taskId)

{

TaskQuery taskQuery = taskService.createTaskQuery().taskId(taskId);

if(!deployWorkflowsInTenant) {

taskQuery.processVariableValueEquals(ActivitiConstants.VAR_TENANT_DOMAIN, TenantUtil.getCurrentDomain());

}

return taskQuery.singleResult();

}

開發者ID:Alfresco,項目名稱:alfresco-repository,代碼行數:9,

示例11: testQueryNoCriteria

​點讚 2

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

public void testQueryNoCriteria() {

TaskQuery query = taskService.createTaskQuery();

assertEquals(12, query.count());

assertEquals(12, query.list().size());

try {

query.singleResult();

fail("expected exception");

} catch (ActivitiException e) {

// OK

}

}

開發者ID:logicalhacking,項目名稱:SecureBPMN,代碼行數:12,

示例12: testQueryByName

​點讚 2

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

public void testQueryByName() {

TaskQuery query = taskService.createTaskQuery().taskName("testTask");

assertEquals(6, query.list().size());

assertEquals(6, query.count());

try {

query.singleResult();

fail("expected exception");

} catch (ActivitiException e) {

// OK

}

}

開發者ID:logicalhacking,項目名稱:SecureBPMN,代碼行數:13,

示例13: testQueryByDescription

​點讚 2

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

public void testQueryByDescription() {

TaskQuery query = taskService.createTaskQuery().taskDescription("testTask description");

assertEquals(6, query.list().size());

assertEquals(6, query.count());

try {

query.singleResult();

fail();

} catch (ActivitiException e) {}

}

開發者ID:logicalhacking,項目名稱:SecureBPMN,代碼行數:11,

示例14: testQueryByPriority

​點讚 2

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

public void testQueryByPriority() {

TaskQuery query = taskService.createTaskQuery().taskPriority(10);

assertEquals(2, query.list().size());

assertEquals(2, query.count());

try {

query.singleResult();

fail();

} catch (ActivitiException e) {}

query = taskService.createTaskQuery().taskPriority(100);

assertNull(query.singleResult());

assertEquals(0, query.list().size());

assertEquals(0, query.count());

query = taskService.createTaskQuery().taskMinPriority(50);

assertEquals(3, query.list().size());

query = taskService.createTaskQuery().taskMinPriority(10);

assertEquals(5, query.list().size());

query = taskService.createTaskQuery().taskMaxPriority(10);

assertEquals(9, query.list().size());

query = taskService.createTaskQuery().taskMaxPriority(3);

assertEquals(6, query.list().size());

}

開發者ID:logicalhacking,項目名稱:SecureBPMN,代碼行數:28,

示例15: testQueryByCandidateGroup

​點讚 2

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

public void testQueryByCandidateGroup() {

TaskQuery query = taskService.createTaskQuery().taskCandidateGroup("management");

assertEquals(3, query.count());

assertEquals(3, query.list().size());

try {

query.singleResult();

fail("expected exception");

} catch (ActivitiException e) {

// OK

}

query = taskService.createTaskQuery().taskCandidateGroup("sales");

assertEquals(0, query.count());

assertEquals(0, query.list().size());

}

開發者ID:logicalhacking,項目名稱:SecureBPMN,代碼行數:16,

示例16: IGNORE_testSimpleSubProcessWithConcurrentTimer

​點讚 2

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

/**

* A test case that has a timer attached to the subprocess,

* where 2 concurrent paths are defined when the timer fires.

*/

@Deployment

public void IGNORE_testSimpleSubProcessWithConcurrentTimer() {

Date startTime = new Date();

// After staring the process, the task in the subprocess should be active

ProcessInstance pi = runtimeService.startProcessInstanceByKey("simpleSubProcessWithConcurrentTimer");

TaskQuery taskQuery = taskService

.createTaskQuery()

.processInstanceId(pi.getId())

.orderByTaskName()

.asc();

Task subProcessTask = taskQuery.singleResult();

assertEquals("Task in subprocess", subProcessTask.getName());

// When the timer is fired (after 2 hours), two concurrent paths should be created

Job job = managementService.createJobQuery().singleResult();

managementService.executeJob(job.getId());

List tasksAfterTimer = taskQuery.list();

assertEquals(2, tasksAfterTimer.size());

Task taskAfterTimer1 = tasksAfterTimer.get(0);

Task taskAfterTimer2 = tasksAfterTimer.get(1);

assertEquals("Task after timer 1", taskAfterTimer1.getName());

assertEquals("Task after timer 2", taskAfterTimer2.getName());

// Completing the two tasks should end the process instance

taskService.complete(taskAfterTimer1.getId());

taskService.complete(taskAfterTimer2.getId());

assertProcessEnded(pi.getId());

}

開發者ID:logicalhacking,項目名稱:SecureBPMN,代碼行數:37,

示例17: testTwoSubProcessInParallelWithinSubProcess

​點讚 2

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

@Deployment

public void testTwoSubProcessInParallelWithinSubProcess() {

ProcessInstance pi = runtimeService.startProcessInstanceByKey("twoSubProcessInParallelWithinSubProcess");

TaskQuery taskQuery = taskService

.createTaskQuery()

.processInstanceId(pi.getId())

.orderByTaskName()

.asc();

List tasks = taskQuery.list();

// After process start, both tasks in the subprocesses should be active

Task taskA = tasks.get(0);

Task taskB = tasks.get(1);

assertEquals("Task in subprocess A", taskA.getName());

assertEquals("Task in subprocess B", taskB.getName());

// Completing both tasks should active the tasks outside the subprocesses

taskService.complete(taskA.getId());

taskService.complete(taskB.getId());

Task taskAfterSubProcess = taskQuery.singleResult();

assertEquals("Task after subprocess", taskAfterSubProcess.getName());

// Completing this task should end the process

taskService.complete(taskAfterSubProcess.getId());

assertProcessEnded(pi.getId());

}

開發者ID:logicalhacking,項目名稱:SecureBPMN,代碼行數:28,

示例18: testTwoNestedSubProcessesInParallelWithTimer

​點讚 2

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

@Deployment

public void testTwoNestedSubProcessesInParallelWithTimer() {

Date startTime = new Date();

ProcessInstance pi = runtimeService.startProcessInstanceByKey("nestedParallelSubProcessesWithTimer");

TaskQuery taskQuery = taskService

.createTaskQuery()

.processInstanceId(pi.getId())

.orderByTaskName()

.asc();

List tasks = taskQuery.list();

// After process start, both tasks in the subprocesses should be active

Task taskA = tasks.get(0);

Task taskB = tasks.get(1);

assertEquals("Task in subprocess A", taskA.getName());

assertEquals("Task in subprocess B", taskB.getName());

// Firing the timer should destroy all three subprocesses and activate the task after the timer

// ClockUtil.setCurrentTime(new Date(startTime.getTime() + (2 * 60 * 60 * 1000 ) + 1000));

// waitForJobExecutorToProcessAllJobs(5000L, 50L);

Job job = managementService.createJobQuery().singleResult();

managementService.executeJob(job.getId());

Task taskAfterTimer = taskQuery.singleResult();

assertEquals("Task after timer", taskAfterTimer.getName());

// Completing the task should end the process instance

taskService.complete(taskAfterTimer.getId());

assertProcessEnded(pi.getId());

}

開發者ID:logicalhacking,項目名稱:SecureBPMN,代碼行數:33,

示例19: testCallActivityByExpression

​點讚 2

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

@Deployment(resources = {

"org/activiti/spring/test/expression/callactivity/CallActivityBasedOnSpringBeansExpressionTest.testCallActivityByExpression.bpmn20.xml",

"org/activiti/spring/test/expression/callactivity/simpleSubProcess.bpmn20.xml" })

public void testCallActivityByExpression() throws Exception {

// Start process (main)

ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("testCallActivityByExpression");

// one task in the subprocess should be active after starting the process instance

TaskQuery taskQuery = taskService.createTaskQuery();

Task taskBeforeSubProcess = taskQuery.singleResult();

assertEquals("Task before subprocess", taskBeforeSubProcess.getName());

// Completing the task continues the process which leads to calling the subprocess. The sub process we want to

// call is passed in as a variable into this task

taskService.complete(taskBeforeSubProcess.getId());

Task taskInSubProcess = taskQuery.singleResult();

assertEquals("Task in subprocess", taskInSubProcess.getName());

// Completing the task in the subprocess, finishes the subprocess

taskService.complete(taskInSubProcess.getId());

Task taskAfterSubProcess = taskQuery.singleResult();

assertEquals("Task after subprocess", taskAfterSubProcess.getName());

// Completing this task end the process instance

taskService.complete(taskAfterSubProcess.getId());

assertProcessEnded(processInstance.getId());

}

開發者ID:iotsap,項目名稱:FiWare-Template-Handler,代碼行數:28,

示例20: IGNORE_testSimpleSubProcessWithConcurrentTimer

​點讚 2

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

/**

* A test case that has a timer attached to the subprocess,

* where 2 concurrent paths are defined when the timer fires.

*/

@Deployment

public void IGNORE_testSimpleSubProcessWithConcurrentTimer() {

// After staring the process, the task in the subprocess should be active

ProcessInstance pi = runtimeService.startProcessInstanceByKey("simpleSubProcessWithConcurrentTimer");

TaskQuery taskQuery = taskService

.createTaskQuery()

.processInstanceId(pi.getId())

.orderByTaskName()

.asc();

Task subProcessTask = taskQuery.singleResult();

assertEquals("Task in subprocess", subProcessTask.getName());

// When the timer is fired (after 2 hours), two concurrent paths should be created

Job job = managementService.createJobQuery().singleResult();

managementService.executeJob(job.getId());

List tasksAfterTimer = taskQuery.list();

assertEquals(2, tasksAfterTimer.size());

Task taskAfterTimer1 = tasksAfterTimer.get(0);

Task taskAfterTimer2 = tasksAfterTimer.get(1);

assertEquals("Task after timer 1", taskAfterTimer1.getName());

assertEquals("Task after timer 2", taskAfterTimer2.getName());

// Completing the two tasks should end the process instance

taskService.complete(taskAfterTimer1.getId());

taskService.complete(taskAfterTimer2.getId());

assertProcessEnded(pi.getId());

}

開發者ID:iotsap,項目名稱:FiWare-Template-Handler,代碼行數:35,

示例21: testTwoNestedSubProcessesInParallelWithTimer

​點讚 2

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

@Deployment

public void testTwoNestedSubProcessesInParallelWithTimer() {

// Date startTime = new Date();

ProcessInstance pi = runtimeService.startProcessInstanceByKey("nestedParallelSubProcessesWithTimer");

TaskQuery taskQuery = taskService

.createTaskQuery()

.processInstanceId(pi.getId())

.orderByTaskName()

.asc();

List tasks = taskQuery.list();

// After process start, both tasks in the subprocesses should be active

Task taskA = tasks.get(0);

Task taskB = tasks.get(1);

assertEquals("Task in subprocess A", taskA.getName());

assertEquals("Task in subprocess B", taskB.getName());

// Firing the timer should destroy all three subprocesses and activate the task after the timer

// ClockUtil.setCurrentTime(new Date(startTime.getTime() + (2 * 60 * 60 * 1000 ) + 1000));

// waitForJobExecutorToProcessAllJobs(5000L, 50L);

Job job = managementService.createJobQuery().singleResult();

managementService.executeJob(job.getId());

Task taskAfterTimer = taskQuery.singleResult();

assertEquals("Task after timer", taskAfterTimer.getName());

// Completing the task should end the process instance

taskService.complete(taskAfterTimer.getId());

assertProcessEnded(pi.getId());

}

開發者ID:iotsap,項目名稱:FiWare-Template-Handler,代碼行數:33,

示例22: testChangeType

​點讚 2

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

@Deployment(resources={

"org/activiti/engine/test/history/oneTaskProcess.bpmn20.xml"

})

public void testChangeType() {

ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("oneTaskProcess");

TaskQuery taskQuery = taskService.createTaskQuery();

Task task = taskQuery.singleResult();

assertEquals("my task", task.getName());

// no type change

runtimeService.setVariable(processInstance.getId(), "firstVar", "123");

assertEquals("123", getHistoricVariable("firstVar").getValue());

runtimeService.setVariable(processInstance.getId(), "firstVar", "456");

assertEquals("456", getHistoricVariable("firstVar").getValue());

runtimeService.setVariable(processInstance.getId(), "firstVar", "789");

assertEquals("789", getHistoricVariable("firstVar").getValue());

// type is changed from text to integer and back again. same result expected(?)

runtimeService.setVariable(processInstance.getId(), "secondVar", "123");

assertEquals("123", getHistoricVariable("secondVar").getValue());

runtimeService.setVariable(processInstance.getId(), "secondVar", 456);

// there are now 2 historic variables, so the following does not work

assertEquals(456, getHistoricVariable("secondVar").getValue());

runtimeService.setVariable(processInstance.getId(), "secondVar", "789");

// there are now 3 historic variables, so the following does not work

assertEquals("789", getHistoricVariable("secondVar").getValue());

taskService.complete(task.getId());

assertProcessEnded(processInstance.getId());

}

開發者ID:springvelocity,項目名稱:xbpm5,代碼行數:32,

示例23: getValidTask

​點讚 2

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

/**

* Get a valid {@link org.activiti.engine.task.Task} based on the given task id. Checks if current logged

* in user is assignee/owner/involved with the task. In case true was passed for "validIfClaimable",

* the task is also valid if the current logged in user is a candidate for claiming the task.

*

* @throws EntityNotFoundException when the task was not found

* @throws PermissionDeniedException when the current logged in user isn't allowed to access task.

*/

protected org.activiti.engine.task.Task getValidTask(String taskId)

{

if (taskId == null)

{

throw new InvalidArgumentException("Task id is required.");

}

TaskQuery query = activitiProcessEngine.getTaskService()

.createTaskQuery()

.taskId(taskId);

if (authorityService.isAdminAuthority(AuthenticationUtil.getRunAsUser()))

{

// Admin is allowed to read all tasks in the current tenant

if (tenantService.isEnabled())

{

query.processVariableValueEquals(ActivitiConstants.VAR_TENANT_DOMAIN, TenantUtil.getCurrentDomain());

}

}

else

{

// If non-admin user, involvement in the task is required (either owner, assignee or externally involved).

query.taskInvolvedUser(AuthenticationUtil.getRunAsUser());

}

org.activiti.engine.task.Task taskInstance = query.singleResult();

if (taskInstance == null)

{

// Either the task doesn't exist or the user is not involved directly. We can differentiate by

// checking if the task exists without applying the additional filtering

taskInstance = activitiProcessEngine.getTaskService()

.createTaskQuery()

.taskId(taskId)

.singleResult();

if (taskInstance == null)

{

// Full error message will be "Task with id: 'id' was not found"

throw new EntityNotFoundException(taskId);

}

else

{

// Task is not yet finished, so potentially claimable. If user is part of a "candidateGroup", the task is accessible to the

// user regardless of not being involved/owner/assignee

boolean isTaskClaimable = activitiProcessEngine.getTaskService()

.createTaskQuery()

.taskCandidateGroupIn(new ArrayList(authorityService.getAuthoritiesForUser(AuthenticationUtil.getRunAsUser())))

.taskId(taskId)

.count() == 1;

if (isTaskClaimable == false)

{

throw new PermissionDeniedException();

}

}

}

return taskInstance;

}

開發者ID:Alfresco,項目名稱:alfresco-remote-api,代碼行數:68,

示例24: test210TestQueryByIdentityLink

​點讚 2

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

@Test

public void test210TestQueryByIdentityLink() throws Exception {

final String TEST_NAME = "test210TestQueryByIdentityLink";

TestUtil.displayTestTile(this, TEST_NAME);

login(userAdministrator);

TaskService taskService = activitiEngine.getTaskService();

TaskQuery tq = taskService.createTaskQuery();

org.activiti.engine.task.Task task = tq.singleResult();

System.out.println("Task = " + task);

assertNotNull("No task", task);

final String TASK_NAME = "Approve assigning Role1a to jack";

List linksBefore = taskService.getIdentityLinksForTask(task.getId());

System.out.println("Identity links (before)" + linksBefore);

taskService.addUserIdentityLink(task.getId(), "123", CommonProcessVariableNames.MIDPOINT_ASSIGNEE);

taskService.addUserIdentityLink(task.getId(), "456", CommonProcessVariableNames.MIDPOINT_ASSIGNEE);

List linksAfter = taskService.getIdentityLinksForTask(task.getId());

System.out.println("Identity links (after)" + linksAfter);

TaskQuery tq1 = taskService.createTaskQuery()

.taskInvolvedUser("UserType:"+userLead1Oid)

.taskName(TASK_NAME);

assertFound(tq1, "involved user (assignee)");

assertFound(taskService.createTaskQuery()

.taskInvolvedUser("123")

.taskName(TASK_NAME),

"involved user (midpoint-assignee 123)");

assertFound(taskService.createTaskQuery()

.taskInvolvedUser("456")

.taskName(TASK_NAME),

"involved user (midpoint-assignee 456)");

assertNotFound(taskService.createTaskQuery()

.taskInvolvedUser("123xxx")

.taskName(TASK_NAME),

"involved user (wrong user)");

assertFound(taskService.createTaskQuery()

.taskInvolvedUser("123;124")

.taskName(TASK_NAME),

"involved user (123 or 124)");

assertFound(taskService.createTaskQuery()

.taskInvolvedUser("124;123")

.taskName(TASK_NAME),

"involved user (124 or 123)");

assertNotFound(taskService.createTaskQuery()

.taskInvolvedUser("124x;123x")

.taskName(TASK_NAME),

"involved user (124x or 123x)");

assertFound(taskService.createTaskQuery()

.or()

.taskInvolvedUser("123")

.taskCandidateGroup("xxxxxxx")

.endOr()

.taskName(TASK_NAME),

"involved user (123 or candidate group xxxxxxx)");

assertFound(taskService.createTaskQuery()

.or()

.taskInvolvedUser("123;124")

.taskCandidateGroup("xxxxxxx")

.endOr()

.taskName(TASK_NAME),

"involved user (123 or 124 or candidate group xxxxxxx)");

assertNotFound(taskService.createTaskQuery()

.or()

.taskInvolvedUser("123x;124x")

.taskCandidateGroup("xxxxxxx")

.endOr()

.taskName(TASK_NAME),

"involved user (123x or 124x or candidate group xxxxxxx)");

}

開發者ID:Pardus-Engerek,項目名稱:engerek,代碼行數:80,

示例25: assertFound

​點讚 2

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

private void assertFound(TaskQuery tq1, String desc) {

LOGGER.trace("Executing query {}", desc);

org.activiti.engine.task.Task task1 = tq1.singleResult();

System.out.println("Task for " + desc + ": " + task1);

assertNotNull("No task for " + desc, task1);

}

開發者ID:Pardus-Engerek,項目名稱:engerek,代碼行數:7,

示例26: assertNotFound

​點讚 2

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

private void assertNotFound(TaskQuery tq1, String desc) {

LOGGER.trace("Executing query {}", desc);

org.activiti.engine.task.Task task1 = tq1.singleResult();

System.out.println("Task for " + desc + ": " + task1);

assertNull("Found task for " + desc + " even if there shouldn't be one", task1);

}

開發者ID:Pardus-Engerek,項目名稱:engerek,代碼行數:7,

示例27: testSubProcessWithDataInputOutput

​點讚 2

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

/**

* Test case for handing over process variables to a sub process

*/

@Deployment(resources = {

"org/activiti/engine/test/bpmn/callactivity/CallActivity.testSubProcessDataInputOutput.bpmn20.xml",

"org/activiti/engine/test/bpmn/callactivity/simpleSubProcess.bpmn20.xml" })

public void testSubProcessWithDataInputOutput() {

Map vars = new HashMap();

vars.put("superVariable", "Hello from the super process.");

ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("subProcessDataInputOutput", vars);

// one task in the subprocess should be active after starting the process instance

TaskQuery taskQuery = taskService.createTaskQuery();

Task taskBeforeSubProcess = taskQuery.singleResult();

assertEquals("Task in subprocess", taskBeforeSubProcess.getName());

assertEquals("Hello from the super process.", runtimeService.getVariable(taskBeforeSubProcess.getProcessInstanceId(), "subVariable"));

assertEquals("Hello from the super process.", taskService.getVariable(taskBeforeSubProcess.getId(), "subVariable"));

runtimeService.setVariable(taskBeforeSubProcess.getProcessInstanceId(), "subVariable", "Hello from sub process.");

// super variable is unchanged

assertEquals("Hello from the super process.", runtimeService.getVariable(processInstance.getId(), "superVariable"));

// Completing this task ends the subprocess which leads to a task in the super process

taskService.complete(taskBeforeSubProcess.getId());

// one task in the subprocess should be active after starting the process instance

Task taskAfterSubProcess = taskQuery.singleResult();

assertEquals("Task in super process", taskAfterSubProcess.getName());

assertEquals("Hello from sub process.", runtimeService.getVariable(processInstance.getId(), "superVariable"));

assertEquals("Hello from sub process.", taskService.getVariable(taskAfterSubProcess.getId(), "superVariable"));

vars.clear();

vars.put("x", new Long(5));

// Completing this task ends the super process which leads to a task in the super process

taskService.complete(taskAfterSubProcess.getId(), vars);

// now we are the second time in the sub process but passed variables via expressions

Task taskInSecondSubProcess = taskQuery.singleResult();

assertEquals("Task in subprocess", taskInSecondSubProcess.getName());

assertEquals(10l, runtimeService.getVariable(taskInSecondSubProcess.getProcessInstanceId(), "y"));

assertEquals(10l, taskService.getVariable(taskInSecondSubProcess.getId(), "y"));

// Completing this task ends the subprocess which leads to a task in the super process

taskService.complete(taskInSecondSubProcess.getId());

// one task in the subprocess should be active after starting the process instance

Task taskAfterSecondSubProcess = taskQuery.singleResult();

assertEquals("Task in super process", taskAfterSecondSubProcess.getName());

assertEquals(15l, runtimeService.getVariable(taskAfterSecondSubProcess.getProcessInstanceId(), "z"));

assertEquals(15l, taskService.getVariable(taskAfterSecondSubProcess.getId(), "z"));

// and end last task in Super process

taskService.complete(taskAfterSecondSubProcess.getId());

assertProcessEnded(processInstance.getId());

assertEquals(0, runtimeService.createExecutionQuery().list().size());

}

開發者ID:logicalhacking,項目名稱:SecureBPMN,代碼行數:61,

示例28: test210TestQueryByIdentityLink

​點讚 2

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

@Test

public void test210TestQueryByIdentityLink() throws Exception {

final String TEST_NAME = "test210TestQueryByIdentityLink";

TestUtil.displayTestTitle(this, TEST_NAME);

login(userAdministrator);

TaskService taskService = activitiEngine.getTaskService();

TaskQuery tq = taskService.createTaskQuery();

org.activiti.engine.task.Task task = tq.singleResult();

System.out.println("Task = " + task);

assertNotNull("No task", task);

final String TASK_NAME = "Assigning role \"Role1a\" to user \"jack\"";

List linksBefore = taskService.getIdentityLinksForTask(task.getId());

System.out.println("Identity links (before)" + linksBefore);

taskService.addUserIdentityLink(task.getId(), "123", CommonProcessVariableNames.MIDPOINT_ASSIGNEE);

taskService.addUserIdentityLink(task.getId(), "456", CommonProcessVariableNames.MIDPOINT_ASSIGNEE);

List linksAfter = taskService.getIdentityLinksForTask(task.getId());

System.out.println("Identity links (after)" + linksAfter);

TaskQuery tq1 = taskService.createTaskQuery()

.taskInvolvedUser("UserType:"+userLead1Oid)

.taskName(TASK_NAME);

assertFound(tq1, "involved user (assignee)");

assertFound(taskService.createTaskQuery()

.taskInvolvedUser("123")

.taskName(TASK_NAME),

"involved user (midpoint-assignee 123)");

assertFound(taskService.createTaskQuery()

.taskInvolvedUser("456")

.taskName(TASK_NAME),

"involved user (midpoint-assignee 456)");

assertNotFound(taskService.createTaskQuery()

.taskInvolvedUser("123xxx")

.taskName(TASK_NAME),

"involved user (wrong user)");

assertFound(taskService.createTaskQuery()

.taskInvolvedUser("123;124")

.taskName(TASK_NAME),

"involved user (123 or 124)");

assertFound(taskService.createTaskQuery()

.taskInvolvedUser("124;123")

.taskName(TASK_NAME),

"involved user (124 or 123)");

assertNotFound(taskService.createTaskQuery()

.taskInvolvedUser("124x;123x")

.taskName(TASK_NAME),

"involved user (124x or 123x)");

assertFound(taskService.createTaskQuery()

.or()

.taskInvolvedUser("123")

.taskCandidateGroup("xxxxxxx")

.endOr()

.taskName(TASK_NAME),

"involved user (123 or candidate group xxxxxxx)");

assertFound(taskService.createTaskQuery()

.or()

.taskInvolvedUser("123;124")

.taskCandidateGroup("xxxxxxx")

.endOr()

.taskName(TASK_NAME),

"involved user (123 or 124 or candidate group xxxxxxx)");

assertNotFound(taskService.createTaskQuery()

.or()

.taskInvolvedUser("123x;124x")

.taskCandidateGroup("xxxxxxx")

.endOr()

.taskName(TASK_NAME),

"involved user (123x or 124x or candidate group xxxxxxx)");

}

開發者ID:Evolveum,項目名稱:midpoint,代碼行數:80,

示例29: testCallSequentialSubProcessWithExpressions

​點讚 2

import org.activiti.engine.task.TaskQuery; //導入方法依賴的package包/類

@Deployment(resources = { "org/activiti/engine/test/bpmn/callactivity/CallActivity.testCallSequentialSubProcess.bpmn20.xml",

"org/activiti/engine/test/bpmn/callactivity/CallActivity.testCallSimpleSubProcessWithExpressions.bpmn20.xml",

"org/activiti/engine/test/bpmn/callactivity/simpleSubProcess.bpmn20.xml",

"org/activiti/engine/test/bpmn/callactivity/simpleSubProcess2.bpmn20.xml"})

public void testCallSequentialSubProcessWithExpressions() {

ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("callSequentialSubProcess");

// FIRST sub process calls simpleSubProcess

// one task in the subprocess should be active after starting the process

// instance

TaskQuery taskQuery = taskService.createTaskQuery();

Task taskBeforeSubProcess = taskQuery.singleResult();

assertEquals("Task before subprocess", taskBeforeSubProcess.getName());

// Completing the task continues the process which leads to calling the

// subprocess. The sub process we want to call is passed in as a variable

// into this task

taskService.setVariable(taskBeforeSubProcess.getId(), "simpleSubProcessExpression", "simpleSubProcess");

taskService.complete(taskBeforeSubProcess.getId());

Task taskInSubProcess = taskQuery.singleResult();

assertEquals("Task in subprocess", taskInSubProcess.getName());

// Completing the task in the subprocess, finishes the subprocess

taskService.complete(taskInSubProcess.getId());

Task taskAfterSubProcess = taskQuery.singleResult();

assertEquals("Task after subprocess", taskAfterSubProcess.getName());

// Completing this task end the process instance

taskService.complete(taskAfterSubProcess.getId());

// SECOND sub process calls simpleSubProcess2

// one task in the subprocess should be active after starting the process

// instance

taskQuery = taskService.createTaskQuery();

taskBeforeSubProcess = taskQuery.singleResult();

assertEquals("Task before subprocess", taskBeforeSubProcess.getName());

// Completing the task continues the process which leads to calling the

// subprocess. The sub process we want to call is passed in as a variable

// into this task

taskService.setVariable(taskBeforeSubProcess.getId(), "simpleSubProcessExpression", "simpleSubProcess2");

taskService.complete(taskBeforeSubProcess.getId());

taskInSubProcess = taskQuery.singleResult();

assertEquals("Task in subprocess 2", taskInSubProcess.getName());

// Completing the task in the subprocess, finishes the subprocess

taskService.complete(taskInSubProcess.getId());

taskAfterSubProcess = taskQuery.singleResult();

assertEquals("Task after subprocess", taskAfterSubProcess.getName());

// Completing this task end the process instance

taskService.complete(taskAfterSubProcess.getId());

assertProcessEnded(processInstance.getId());

}

開發者ID:springvelocity,項目名稱:xbpm5,代碼行數:59,

注:本文中的org.activiti.engine.task.TaskQuery.singleResult方法示例整理自Github/MSDocs等源碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。

java singleresult方法_Java TaskQuery.singleResult方法代碼示例相关推荐

  1. java try finally connectoin close_Java SocketChannel類代碼示例

    本文整理匯總了Java中io.netty.channel.socket.SocketChannel類的典型用法代碼示例.如果您正苦於以下問題:Java SocketChannel類的具體用法?Java ...

  2. java file.canexecute_Java File canExecute()用法及代碼示例

    canExecute()函數是Java中File類的一部分.此函數確定程序是否可以執行由抽象路徑名表示的指定文件.如果文件路徑存在並且允許應用程序執行文件,則此方法將返回true.否則它將返回fals ...

  3. java中getfield_Java Class getField()用法及代碼示例

    java.lang.Class類的getField()方法用於獲取此類的指定字段,該字段是公共字段及其成員.該方法以Field對象的形式返回此類的指定字段. 用法: public Field getF ...

  4. java bidi_Java Bidi類代碼示例

    本文整理匯總了Java中java.text.Bidi類的典型用法代碼示例.如果您正苦於以下問題:Java Bidi類的具體用法?Java Bidi怎麽用?Java Bidi使用的例子?那麽恭喜您, 這 ...

  5. java中reject方法作用_Java BindingResult.rejectValue方法代碼示例

    本文整理匯總了Java中org.springframework.validation.BindingResult.rejectValue方法的典型用法代碼示例.如果您正苦於以下問題:Java Bind ...

  6. java touch创建文件_Java FileUtils.touch方法代碼示例

    本文整理匯總了Java中org.apache.commons.io.FileUtils.touch方法的典型用法代碼示例.如果您正苦於以下問題:Java FileUtils.touch方法的具體用法? ...

  7. java使用drawtext重叠_Java Graphics.drawText方法代碼示例

    本文整理匯總了Java中org.eclipse.draw2d.Graphics.drawText方法的典型用法代碼示例.如果您正苦於以下問題:Java Graphics.drawText方法的具體用法 ...

  8. java getitem方法_Java Datasource.getItem方法代碼示例

    本文整理匯總了Java中com.haulmont.cuba.gui.data.Datasource.getItem方法的典型用法代碼示例.如果您正苦於以下問題:Java Datasource.getI ...

  9. java fileitem 识别图片大小_Java FileItem.getSize方法代碼示例

    本文整理匯總了Java中org.apache.commons.fileupload.FileItem.getSize方法的典型用法代碼示例.如果您正苦於以下問題:Java FileItem.getSi ...

  10. java nio keyiterator.remove()_Java SelectionKey.isValid方法代碼示例

    本文整理匯總了Java中java.nio.channels.SelectionKey.isValid方法的典型用法代碼示例.如果您正苦於以下問題:Java SelectionKey.isValid方法 ...

最新文章

  1. android-学习1 配置环境
  2. Pywinauto 应用后端类型选择错误:AttributeError: ‘NoneType‘ object has no attribute ‘backend‘. 原因及解决办法
  3. 为什么硅谷公司对Android不感冒?
  4. 计算机机房坏境设施演练,计算机机房环境设施应急演练方案
  5. 在.NET Core 中使用Quartz.NET
  6. 多任务学习模型之ESMM介绍与实现
  7. orcle mysql 查询_Oracle与Mysql的高级查询与难点sql
  8. 华中科大10年计算机考研复试机试
  9. Pentium 4处理器架构/微架构/流水线 (4) - NetBurst框图
  10. node生成uuid
  11. mysql高级操作_MySQL数据库的高级操作
  12. mysql启动和常用语法实战回顾
  13. 静态方法和类方法之间的区别
  14. jpa oracle 传参int类型判空_SQL查询:Oracle、mysql、HQL查询语句差异
  15. GitHub 使用教程图文详解(转)
  16. 357.计算各个位数不同的数字个数
  17. excel下载模版(数据字典)
  18. 微信抖音工具箱头像制作壁纸小程序带改图制图流量主功能搭建动态社群人脉助手
  19. less-calc()
  20. cpu排行计算机专业,cpu性能天梯图,详细教您电脑cpu排行榜

热门文章

  1. Vue 浏览器兼容性
  2. OpenCV绘制朱利亚(Julia)集合图形
  3. 朱利亚 matlab分形图,【分形之美 02】分形图像怎么画?详解曼德勃罗朱利亚分形绘制方法...
  4. 网传固态硬盘因为TRIM指令一经删除无法恢复是以讹传讹
  5. 关于msp430系列单片机的一些入门心得(新手向)
  6. 数据库系列(4):关系型数据库
  7. 判断一元二次方程完整版(有无虚根)
  8. 一个能够让你快速从html结构生成css结构的vscode插件
  9. 运放的相位补偿 ?
  10. Unity强化学习之ML-Agents的使用