private Context<?> getContext() { if ("case".equals(strategy)) { return CaseContext.get(UUID.randomUUID().toString()); } return ProcessInstanceIdContext.get(); } }
protected KieRuntime getKieRuntimeForSubprocess() { KieRuntime kruntime = ((ProcessInstance) getProcessInstance()).getKnowledgeRuntime(); RuntimeManager manager = (RuntimeManager) kruntime.getEnvironment().get(EnvironmentName.RUNTIME_MANAGER); if (manager != null) { org.kie.api.runtime.manager.Context<?> context = ProcessInstanceIdContext.get(); String caseId = (String) kruntime.getEnvironment().get(EnvironmentName.CASE_ID); if (caseId != null) { context = CaseContext.get(caseId); } RuntimeEngine runtime = manager.getRuntimeEngine(context); kruntime = (KieRuntime) runtime.getKieSession(); } return kruntime; }
context = CaseContext.get(caseId);
@Test(timeout=10000) public void testPerCaseMultiInstanceCallactivityCompleteAtTheSameTime() { RuntimeEnvironment environment = createEnvironment(); manager = RuntimeManagerFactory.Factory.get().newPerCaseRuntimeManager(environment, "first"); assertNotNull(manager); testMultiInstanceCallactivityCompleteAtTheSameTime(CaseContext.get("CASE-00000001")); }
private void startProcessWithParamsAndTrigger(String processId, Map<String, Object> params, String type, boolean dispose) { RuntimeManager manager = (RuntimeManager) kruntime.getEnvironment().get(EnvironmentName.RUNTIME_MANAGER); if (manager != null) { org.kie.api.runtime.manager.Context<?> context = ProcessInstanceIdContext.get(); String caseId = (String) kruntime.getEnvironment().get(EnvironmentName.CASE_ID); if (caseId != null) { context = CaseContext.get(caseId); } RuntimeEngine runtime = manager.getRuntimeEngine(context); KieSession ksession = runtime.getKieSession(); try { ksession.execute(new StartProcessWithTypeCommand(processId, params, type)); } finally { if (dispose) { manager.disposeRuntimeEngine(runtime); } } } else { startProcess( processId, params, type ); } }
context = CaseContext.get(caseId);
assertNotNull(manager); RuntimeEngine runtime = manager.getRuntimeEngine(CaseContext.get("Case-1")); KieSession ksession = runtime.getKieSession(); long ksession1Id = ksession.getIdentifier();
assertNotNull(manager); RuntimeEngine runtime = manager.getRuntimeEngine(CaseContext.get("CASE-001")); KieSession ksession = runtime.getKieSession(); runtime = manager.getRuntimeEngine(CaseContext.get("CASE-001")); runtime.getKieSession(); TaskService taskService = runtime.getTaskService(); runtime = manager.getRuntimeEngine(CaseContext.get("CASE-001")); AuditService auditService = runtime.getAuditService();
public void cancel() { super.cancel(); if (getSubProcessNode() == null || !getSubProcessNode().isIndependent()) { ProcessInstance processInstance = null; InternalKnowledgeRuntime kruntime = ((ProcessInstance) getProcessInstance()).getKnowledgeRuntime(); RuntimeManager manager = (RuntimeManager) kruntime.getEnvironment().get(EnvironmentName.RUNTIME_MANAGER); if (manager != null) { try { org.kie.api.runtime.manager.Context<?> context = ProcessInstanceIdContext.get(processInstanceId); String caseId = (String) kruntime.getEnvironment().get(EnvironmentName.CASE_ID); if (caseId != null) { context = CaseContext.get(caseId); } RuntimeEngine runtime = manager.getRuntimeEngine(context); KieRuntime managedkruntime = (KieRuntime) runtime.getKieSession(); processInstance = (ProcessInstance) managedkruntime.getProcessInstance(processInstanceId); } catch (SessionNotFoundException e) { // in case no session is found for parent process let's skip signal for process instance completion } } else { processInstance = (ProcessInstance) kruntime.getProcessInstance(processInstanceId); } if (processInstance != null) { processInstance.setState(ProcessInstance.STATE_ABORTED); } } }
RuntimeEngine runtime = manager.getRuntimeEngine(CaseContext.get("Case-1")); KieSession ksession = runtime.getKieSession(); long ksession1Id = ksession.getIdentifier(); runtime = manager.getRuntimeEngine(CaseContext.get("Case-1")); ksession = runtime.getKieSession(); ksession.abortProcessInstance(pi1.getId());
assertNotNull(manager); RuntimeEngine runtime1 = manager.getRuntimeEngine(CaseContext.get("Case-1")); KieSession ksession1 = runtime1.getKieSession(); runtime1 = manager.getRuntimeEngine(CaseContext.get("Case-1")); ksession1 = runtime1.getKieSession(); runtime1 = manager.getRuntimeEngine(CaseContext.get("Case-1")); ksession1 = runtime1.getKieSession();
RuntimeEngine runtime = manager.getRuntimeEngine(CaseContext.get("Case-1")); KieSession ksession = runtime.getKieSession(); manager.disposeRuntimeEngine(runtime); runtime = manager.getRuntimeEngine(CaseContext.get("Case-1")); ksession = runtime.getKieSession(); ProcessInstance pi2 = ksession.startProcess("ScriptTask");
assertNotNull(manager); RuntimeEngine runtime = manager.getRuntimeEngine(CaseContext.get("Case-1")); KieSession ksession = runtime.getKieSession(); runtime = manager.getRuntimeEngine(CaseContext.get("Case-1")); ksession = runtime.getKieSession(); ksession.getWorkItemManager().completeWorkItem(1, null);
RuntimeEngine runtime = manager.getRuntimeEngine(CaseContext.get("Case-1")); KieSession ksession = runtime.getKieSession(); RuntimeEngine runtime2 = manager.getRuntimeEngine(CaseContext.get("Case-2")); KieSession ksession2 = runtime2.getKieSession(); runtime = manager.getRuntimeEngine(CaseContext.get("Case-1")); ksession = runtime.getKieSession(); assertEquals(ksession1Id, ksession.getIdentifier()); runtime2 = manager.getRuntimeEngine(CaseContext.get("Case-2")); ksession2 = runtime2.getKieSession(); assertEquals(ksession2Id, ksession2.getIdentifier());
protected KieRuntime getKieRuntimeForSubprocess() { KieRuntime kruntime = ((ProcessInstance) getProcessInstance()).getKnowledgeRuntime(); RuntimeManager manager = (RuntimeManager) kruntime.getEnvironment().get(EnvironmentName.RUNTIME_MANAGER); if (manager != null) { org.kie.api.runtime.manager.Context<?> context = ProcessInstanceIdContext.get(); String caseId = (String) kruntime.getEnvironment().get(EnvironmentName.CASE_ID); if (caseId != null) { context = CaseContext.get(caseId); } RuntimeEngine runtime = manager.getRuntimeEngine(context); kruntime = (KieRuntime) runtime.getKieSession(); } return kruntime; }
context = CaseContext.get(caseId);
private void startProcessWithParamsAndTrigger(String processId, Map<String, Object> params, String type, boolean dispose) { RuntimeManager manager = (RuntimeManager) kruntime.getEnvironment().get(EnvironmentName.RUNTIME_MANAGER); if (manager != null) { org.kie.api.runtime.manager.Context<?> context = ProcessInstanceIdContext.get(); String caseId = (String) kruntime.getEnvironment().get(EnvironmentName.CASE_ID); if (caseId != null) { context = CaseContext.get(caseId); } RuntimeEngine runtime = manager.getRuntimeEngine(context); KieSession ksession = runtime.getKieSession(); try { ksession.execute(new StartProcessWithTypeCommand(processId, params, type)); } finally { if (dispose) { manager.disposeRuntimeEngine(runtime); } } } else { startProcess( processId, params, type ); } }
context = CaseContext.get(caseId);
public void cancel() { super.cancel(); if (getSubProcessNode() == null || !getSubProcessNode().isIndependent()) { ProcessInstance processInstance = null; InternalKnowledgeRuntime kruntime = ((ProcessInstance) getProcessInstance()).getKnowledgeRuntime(); RuntimeManager manager = (RuntimeManager) kruntime.getEnvironment().get(EnvironmentName.RUNTIME_MANAGER); if (manager != null) { try { org.kie.api.runtime.manager.Context<?> context = ProcessInstanceIdContext.get(processInstanceId); String caseId = (String) kruntime.getEnvironment().get(EnvironmentName.CASE_ID); if (caseId != null) { context = CaseContext.get(caseId); } RuntimeEngine runtime = manager.getRuntimeEngine(context); KieRuntime managedkruntime = (KieRuntime) runtime.getKieSession(); processInstance = (ProcessInstance) managedkruntime.getProcessInstance(processInstanceId); } catch (SessionNotFoundException e) { // in case no session is found for parent process let's skip signal for process instance completion } } else { processInstance = (ProcessInstance) kruntime.getProcessInstance(processInstanceId); } if (processInstance != null) { processInstance.setState(ProcessInstance.STATE_ABORTED); } } }