本文整理汇总了Java中org.activiti.engine.runtime.Execution.getId方法的典型用法代码示例。如果您正苦于以下问题:Java Execution.getId方法的具体用法?Java Execution.getId怎么用?Java Execution.getId使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.activiti.engine.runtime.Execution
的用法示例。
在下文中一共展示了Execution.getId方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getExecutionId
import org.activiti.engine.runtime.Execution; //导入方法依赖的package包/类
private String getExecutionId(String processId, String activityId, long timeoutInMillis) {
long deadline = System.currentTimeMillis() + timeoutInMillis;
while (true) {
Execution execution = engine.getRuntimeService()
.createExecutionQuery()
.processInstanceId(processId)
.activityId(activityId)
.singleResult();
if (execution != null && execution.getParentId() != null) {
return execution.getId();
}
if (isPastDeadline(deadline)) {
IllegalStateException timeoutException = new IllegalStateException(
format(Messages.PROCESS_STEP_NOT_REACHED_BEFORE_TIMEOUT, activityId, processId));
LOGGER.error(timeoutException.toString(), timeoutException);
throw timeoutException;
}
try {
Thread.sleep(GET_EXECUTION_RETRY_INTERVAL_MS);
} catch (InterruptedException e) {
throw new IllegalStateException(e);
}
}
}
示例2: getVariablesByProcInstId
import org.activiti.engine.runtime.Execution; //导入方法依赖的package包/类
@Override
public Map<String, Object> getVariablesByProcInstId(String procInstId) {
List<Execution> executions = runtimeService.createExecutionQuery().processInstanceId(procInstId).list();
String executionId = "";
for (Execution execution : executions) {
if (StringUtils.isNullOrEmpty(execution.getParentId())) {
executionId = execution.getId();
}
}
return runtimeService.getVariables(executionId);
}
示例3: testCompetingJoins
import org.activiti.engine.runtime.Execution; //导入方法依赖的package包/类
@Deployment
public void testCompetingJoins() throws Exception {
ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("CompetingJoinsProcess");
Execution execution1 = runtimeService
.createExecutionQuery()
.processInstanceId(processInstance.getId())
.activityId("wait1")
.singleResult();
Execution execution2 = runtimeService
.createExecutionQuery()
.processInstanceId(processInstance.getId())
.activityId("wait2")
.singleResult();
log.fine("test thread starts thread one");
SignalThread threadOne = new SignalThread(execution1.getId());
threadOne.startAndWaitUntilControlIsReturned();
log.fine("test thread continues to start thread two");
SignalThread threadTwo = new SignalThread(execution2.getId());
threadTwo.startAndWaitUntilControlIsReturned();
log.fine("test thread notifies thread 1");
threadOne.proceedAndWaitTillDone();
assertNull(threadOne.exception);
log.fine("test thread notifies thread 2");
threadTwo.proceedAndWaitTillDone();
assertNotNull(threadTwo.exception);
assertTextPresent("was updated by another transaction concurrently", threadTwo.exception.getMessage());
}