use of org.activiti.engine.impl.ProcessEngineImpl in project Activiti by Activiti.
the class ReplayRunTest method testProcessInstanceStartEvents.
@Test
public void testProcessInstanceStartEvents() throws Exception {
ProcessEngineImpl processEngine = initProcessEngine();
TaskService taskService = processEngine.getTaskService();
RuntimeService runtimeService = processEngine.getRuntimeService();
Map<String, Object> variables = new HashMap<String, Object>();
variables.put(TEST_VARIABLE, TEST_VALUE);
ProcessInstance processInstance = runtimeService.startProcessInstanceByKey(USERTASK_PROCESS, BUSINESS_KEY, variables);
Task task = taskService.createTaskQuery().taskDefinitionKey("userTask").singleResult();
TimeUnit.MILLISECONDS.sleep(50);
taskService.complete(task.getId());
final SimulationDebugger simRun = new ReplaySimulationRun(processEngine, getReplayHandlers(processInstance.getId()));
simRun.init(new NoExecutionVariableScope());
// original process is finished - there should not be any running process instance/task
assertEquals(0, runtimeService.createProcessInstanceQuery().processDefinitionKey(USERTASK_PROCESS).count());
assertEquals(0, taskService.createTaskQuery().taskDefinitionKey("userTask").count());
simRun.step();
// replay process was started
assertEquals(1, runtimeService.createProcessInstanceQuery().processDefinitionKey(USERTASK_PROCESS).count());
// there should be one task
assertEquals(1, taskService.createTaskQuery().taskDefinitionKey("userTask").count());
simRun.step();
// userTask was completed - replay process was finished
assertEquals(0, runtimeService.createProcessInstanceQuery().processDefinitionKey(USERTASK_PROCESS).count());
assertEquals(0, taskService.createTaskQuery().taskDefinitionKey("userTask").count());
simRun.close();
processEngine.close();
ProcessEngines.destroy();
}
use of org.activiti.engine.impl.ProcessEngineImpl in project Activiti by Activiti.
the class EventRecorderTestUtils method closeProcessEngine.
public static void closeProcessEngine(ProcessEngine processEngine, ActivitiEventListener listener) {
if (listener != null) {
final ProcessEngineConfigurationImpl processEngineConfiguration = ((ProcessEngineImpl) processEngine).getProcessEngineConfiguration();
processEngineConfiguration.getEventDispatcher().removeEventListener(listener);
}
processEngine.close();
}
use of org.activiti.engine.impl.ProcessEngineImpl in project Activiti by Activiti.
the class AbstractPlaybackTest method runPlayback.
private void runPlayback() throws Throwable {
SimulationDebugger simDebugger = null;
try {
// init simulation run
Clock clock = new ThreadLocalClock(new DefaultClockFactory());
FactoryBean<ProcessEngineImpl> simulationProcessEngineFactory = new SimulationProcessEngineFactory(ProcessEngineConfiguration.createProcessEngineConfigurationFromResourceDefault());
final SimpleSimulationRun.Builder builder = new SimpleSimulationRun.Builder();
builder.processEngine(simulationProcessEngineFactory.getObject()).eventCalendar((new SimpleEventCalendarFactory(clock, new SimulationEventComparator(), listener.getSimulationEvents())).getObject()).eventHandlers(getHandlers());
simDebugger = builder.build();
simDebugger.init(new NoExecutionVariableScope());
this.processEngine = SimulationRunContext.getProcessEngine();
initializeServices();
deploymentIdFromDeploymentAnnotation = TestHelper.annotationDeploymentSetUp(processEngine, getClass(), getName());
simDebugger.runContinue();
_checkStatus();
} catch (AssertionFailedError e) {
log.warn("Playback simulation {} has failed", getName());
log.error(EMPTY_LINE);
log.error("ASSERTION FAILED: {}", e, e);
exception = e;
throw e;
} catch (Throwable e) {
log.warn("Playback simulation {} has failed", getName());
log.error(EMPTY_LINE);
log.error("EXCEPTION: {}", e, e);
exception = e;
throw e;
} finally {
if (simDebugger != null) {
TestHelper.annotationDeploymentTearDown(processEngine, deploymentIdFromDeploymentAnnotation, getClass(), getName());
simDebugger.close();
assertAndEnsureCleanDb();
}
this.processEngineConfiguration.getClock().reset();
// Can't do this in the teardown, as the teardown will be called as part of the super.runBare
closeDownProcessEngine();
}
}
use of org.activiti.engine.impl.ProcessEngineImpl in project Activiti by Activiti.
the class DbSchemaUpdate method main.
public static void main(String[] args) {
ProcessEngineImpl processEngine = (ProcessEngineImpl) ProcessEngines.getDefaultProcessEngine();
CommandExecutor commandExecutor = processEngine.getProcessEngineConfiguration().getCommandExecutor();
CommandConfig config = new CommandConfig().transactionNotSupported();
commandExecutor.execute(config, new Command<Object>() {
public Object execute(CommandContext commandContext) {
commandContext.getSession(DbSqlSession.class).dbSchemaUpdate();
return null;
}
});
}
use of org.activiti.engine.impl.ProcessEngineImpl in project Activiti by Activiti.
the class ReplayEventLogTest method initProcessEngine.
private ProcessEngineImpl initProcessEngine() {
ProcessEngineConfigurationImpl configuration = getProcessEngineConfiguration();
ProcessEngineImpl processEngine = (ProcessEngineImpl) configuration.buildProcessEngine();
processEngine.getRepositoryService().createDeployment().addClasspathResource(THE_USERTASK_PROCESS).deploy();
return processEngine;
}
Aggregations