Refine search
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; }
public void destroyCase(CaseContext caseContext) { KieSession kieSession = null; RuntimeEngine localRuntime = findLocalRuntime(caseContext.getContextId()); if (localRuntime != null) { kieSession = localRuntime.getKieSession(); } else { Long ksessionId = mapper.findMapping(caseContext, this.identifier); if (ksessionId != null) { kieSession = factory.findKieSessionById(ksessionId); } } factory.onDispose(kieSession.getIdentifier()); List<ExecutableCommand<?>> cmds = new ArrayList<>(); RemoveMappingCommand removeMapping = new RemoveMappingCommand(mapper, caseContext, getIdentifier()); cmds.add(removeMapping); DestroyKSessionCommand destroy = new DestroyKSessionCommand(kieSession, this); cmds.add(destroy); BatchExecutionCommand batchCmd = new BatchExecutionCommandImpl(cmds); kieSession.execute(batchCmd); }
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();
assertNotNull(manager); RuntimeEngine runtime1 = manager.getRuntimeEngine(CaseContext.get("Case-1")); KieSession ksession1 = runtime1.getKieSession(); List<? extends ProcessInstanceLog> logs = runtime1.getAuditService().findProcessInstances(); assertEquals(1, logs.size()); manager.disposeRuntimeEngine(runtime1); runtime1 = manager.getRuntimeEngine(CaseContext.get("Case-1")); ksession1 = runtime1.getKieSession(); runtime1 = manager.getRuntimeEngine(CaseContext.get("Case-1")); ksession1 = runtime1.getKieSession();
RuntimeEngine runtime1 = manager.getRuntimeEngine(CaseContext.get("Case-1")); List<? extends ProcessInstanceLog> logs = runtime1.getAuditService().findProcessInstances(); assertEquals(1, logs.size()); manager.disposeRuntimeEngine(runtime1); countDownListener.waitTillCompleted(2000); runtime1 = manager.getRuntimeEngine(CaseContext.get("Case-1")); logs = runtime1.getAuditService().findProcessInstances(); assertEquals(1, logs.size()); manager.disposeRuntimeEngine(runtime1); countDownListener.waitTillCompleted(); runtime1 = manager.getRuntimeEngine(CaseContext.get("Case-1")); logs = runtime1.getAuditService().findProcessInstances(); assertEquals(2, logs.size()); manager.disposeRuntimeEngine(runtime1);
private Context<?> getContext() { if ("case".equals(strategy)) { return CaseContext.get(UUID.randomUUID().toString()); } return ProcessInstanceIdContext.get(); } }
/** * Returns new instance of <code>CaseContext</code> with case identifier * @param caseIdentifier unique case identifier * @return */ public static CaseContext get(String caseIdentifier) { return new CaseContext(caseIdentifier); } }
assertNotNull(manager); RuntimeEngine runtime = manager.getRuntimeEngine(CaseContext.get("Case-1")); KieSession ksession = runtime.getKieSession(); long ksession1Id = ksession.getIdentifier(); assertNotNull(ksession); AuditService auditService = runtime.getAuditService();
@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 ); } }
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); AuditService logService = runtime.getAuditService();
public void destroyCase(CaseContext caseContext) { KieSession kieSession = null; RuntimeEngine localRuntime = findLocalRuntime(caseContext.getContextId()); if (localRuntime != null) { kieSession = localRuntime.getKieSession(); } else { Long ksessionId = mapper.findMapping(caseContext, this.identifier); if (ksessionId != null) { kieSession = factory.findKieSessionById(ksessionId); } } factory.onDispose(kieSession.getIdentifier()); List<ExecutableCommand<?>> cmds = new ArrayList<>(); RemoveMappingCommand removeMapping = new RemoveMappingCommand(mapper, caseContext, getIdentifier()); cmds.add(removeMapping); DestroyKSessionCommand destroy = new DestroyKSessionCommand(kieSession, this); cmds.add(destroy); BatchExecutionCommand batchCmd = new BatchExecutionCommandImpl(cmds); kieSession.execute(batchCmd); }
context = CaseContext.get(caseId); kruntime = (KieRuntime) runtime.getKieSession();
context = CaseContext.get(caseId); KieRuntime managedkruntime = (KieRuntime) runtime.getKieSession(); managedkruntime.signalEvent("processInstanceCompleted:" + getId(), this); } catch (SessionNotFoundException e) {
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());
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"); assertEquals(ProcessInstance.STATE_COMPLETED, pi2.getState());
RuntimeEngine runtime = manager.getRuntimeEngine(CaseContext.get("Case-1")); KieSession ksession = runtime.getKieSession(); RuntimeEngine runtime2 = manager.getRuntimeEngine(CaseContext.get("Case-2")); KieSession ksession2 = runtime2.getKieSession(); ksession = runtime.getKieSession(); assertEquals(ksession1Id, ksession.getIdentifier()); 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; }
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 ); } }