org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration#org.activiti.engine.ProcessEngine源码实例Demo

下面列出了org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration#org.activiti.engine.ProcessEngine 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

public static void main(String[] args) {
	// 新建流程引擎
	ProcessEngine engine = ProcessEngines.getDefaultProcessEngine();
	
	IdentityService identityService = engine.getIdentityService();
	
	Random ran = new Random(10);
	for (int i = 0; i < 10; i++) {
		Group group = identityService.newGroup(String.valueOf(i));
		group.setName("Group_" + ran.nextInt(10));
		group.setType("TYPE_" + ran.nextInt(10));
		identityService.saveGroup(group);
	}

	// 关闭流程引擎
	engine.close();
}
 
public static void main(String[] args) throws Exception {
	// 新建流程引擎
	ProcessEngine engine = ProcessEngines.getDefaultProcessEngine();
	// 存储服务
	RepositoryService repositoryService = engine.getRepositoryService();
	// 新建部署构造器
	DeploymentBuilder deploymentBuilder = repositoryService.createDeployment();
	// 新建文件输入流
	FileInputStream fileInputStream = new FileInputStream(new File("resources/datas.zip"));
	// 新建Zip输入流
	ZipInputStream zipInputStream = new ZipInputStream(fileInputStream);
	// 将Zip输入流添加到部署构造器中
	deploymentBuilder.addZipInputStream(zipInputStream);
	// 发布部署构造器
	deploymentBuilder.deploy();
	// 关闭流程引擎
	engine.close();
}
 
public static void main(String[] args) {           
// 新建流程引擎
ProcessEngine engine = ProcessEngines.getDefaultProcessEngine();
// 存储服务
RepositoryService repositoryService = engine.getRepositoryService();
// 新建部署构造器
DeploymentBuilder deploymentBuilder = repositoryService.createDeployment();
// 增加错误的schema文件(包括无效的标签)<test>test</test> 
// 校验报错:发现了以元素 'test' 开头的无效内容。
deploymentBuilder.addClasspathResource("error/schema_error.bpmn");
// 禁用Schema验证
deploymentBuilder.disableSchemaValidation();
// 发布部署构造器
deploymentBuilder.deploy();
// 关闭流程引擎
engine.close();
  }
 
public static void main(String[] args) {
	// 新建流程引擎
	ProcessEngine engine = ProcessEngines.getDefaultProcessEngine();

	IdentityService identityService = engine.getIdentityService();

	List<Group> groups = identityService.createGroupQuery()
			.orderByGroupName().desc().list();

	for (Group group : groups) {
		System.out.println(group.getId() + "---" + group.getName() + "---"
				+ group.getType());
	}

	// 关闭流程引擎
	engine.close();
}
 
源代码5 项目: activiti6-boot2   文件: DbSqlSession.java
protected boolean isUpgradeNeeded(String versionInDatabase) {
  if (ProcessEngine.VERSION.equals(versionInDatabase)) {
    return false;
  }

  String cleanDbVersion = getCleanVersion(versionInDatabase);
  String[] cleanDbVersionSplitted = cleanDbVersion.split("\\.");
  int dbMajorVersion = Integer.valueOf(cleanDbVersionSplitted[0]);
  int dbMinorVersion = Integer.valueOf(cleanDbVersionSplitted[1]);

  String cleanEngineVersion = getCleanVersion(ProcessEngine.VERSION);
  String[] cleanEngineVersionSplitted = cleanEngineVersion.split("\\.");
  int engineMajorVersion = Integer.valueOf(cleanEngineVersionSplitted[0]);
  int engineMinorVersion = Integer.valueOf(cleanEngineVersionSplitted[1]);

  if ((dbMajorVersion > engineMajorVersion) || ((dbMajorVersion <= engineMajorVersion) && (dbMinorVersion > engineMinorVersion))) {
    throw new ActivitiException("Version of activiti database (" + versionInDatabase + ") is more recent than the engine (" + ProcessEngine.VERSION + ")");
  } else if (cleanDbVersion.compareTo(cleanEngineVersion) == 0) {
    // Versions don't match exactly, possibly snapshot is being used
    log.warn("Engine-version is the same, but not an exact match: {} vs. {}. Not performing database-upgrade.", versionInDatabase, ProcessEngine.VERSION);
    return false;
  }
  return true;
}
 
源代码6 项目: activiti6-boot2   文件: MuleVMTest.java
@Test
public void send() throws Exception {
  Assert.assertTrue(muleContext.isStarted());

  ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
  RepositoryService repositoryService = processEngine.getRepositoryService();
  Deployment deployment = repositoryService.createDeployment()
      .addClasspathResource("org/activiti5/mule/testVM.bpmn20.xml")
      .deploymentProperty(DeploymentProperties.DEPLOY_AS_ACTIVITI5_PROCESS_DEFINITION, Boolean.TRUE)
      .deploy();

  RuntimeService runtimeService = processEngine.getRuntimeService();
  ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("muleProcess");
  Assert.assertFalse(processInstance.isEnded());
  Object result = runtimeService.getVariable(processInstance.getProcessInstanceId(), "theVariable");
  Assert.assertEquals(30, result);
  runtimeService.deleteProcessInstance(processInstance.getId(), "test");

  processEngine.getHistoryService().deleteHistoricProcessInstance(processInstance.getId());
  repositoryService.deleteDeployment(deployment.getId());
  assertAndEnsureCleanDb(processEngine);
  ProcessEngines.destroy();
}
 
@Test
public void testLaunchingGatewayProcessDefinition() throws Exception {
    AnnotationConfigApplicationContext applicationContext = this.context(InboundGatewayConfiguration.class);
    
    RepositoryService repositoryService = applicationContext.getBean(RepositoryService.class);
    RuntimeService runtimeService = applicationContext.getBean(RuntimeService.class);
    ProcessEngine processEngine = applicationContext.getBean(ProcessEngine.class);

    Assert.assertNotNull("the process engine should not be null", processEngine);
    Assert.assertNotNull("we should have a default repositoryService included", repositoryService);
    String integrationGatewayProcess = "integrationGatewayProcess";
    List<ProcessDefinition> processDefinitionList = repositoryService.createProcessDefinitionQuery()
            .processDefinitionKey(integrationGatewayProcess)
            .list();
    ProcessDefinition processDefinition = processDefinitionList.iterator().next();
    Assert.assertEquals(processDefinition.getKey(), integrationGatewayProcess);
    Map<String, Object> vars = new HashMap<String, Object>();
    vars.put("customerId", 232);
    ProcessInstance processInstance = runtimeService.startProcessInstanceByKey(integrationGatewayProcess, vars);
    Assert.assertNotNull("the processInstance should not be null", processInstance);
    org.junit.Assert.assertTrue(
            applicationContext.getBean(InboundGatewayConfiguration.AnalysingService.class)
                    .getStringAtomicReference().get().equals(projectId));
}
 
@Override
public void onProcessEngineClosed(ProcessEngine processEngine) {
  LOG.info("--------------------- Callback for engine end");
  if (dataSource != null) {
    LOG.info("--------------------- Closing datasource");
    dataSource.close();
  }

  if (transactionManager != null) {
    transactionManager.shutdown();
  }
}
 
源代码9 项目: activiti-in-action-codes   文件: ActivitiUtils.java
/**
 * 单例模式获取引擎对象
 */
public static ProcessEngine getProcessEngine() {
    if (processEngine == null) {
  /*
   * 使用默认的配置文件名称(activiti.cfg.xml)创建引擎对象
   */
        processEngine = ProcessEngineConfiguration.createProcessEngineConfigurationFromResourceDefault().buildProcessEngine();
    }
    return processEngine;
}
 
@Test
public void testService() throws Exception {
    assertNotNull(runtimeService);

    ProcessEngine processEngine = factoryBean.getObject();
    assertNotNull(processEngine.getRuntimeService());
}
 
@Test
public void testService() throws Exception {
    assertNotNull(runtimeService);

    ProcessEngine processEngine = factoryBean.getObject();
    assertNotNull(processEngine.getRuntimeService());
}
 
@Test
public void givenDifferentNameXMLConfig_whenGetProcessEngineConfig_thenGotResult() {
    ProcessEngineConfiguration processEngineConfiguration = ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("my.activiti.cfg.xml");
    ProcessEngine processEngine = processEngineConfiguration.buildProcessEngine();
    assertNotNull(processEngine);
    assertEquals("baeldung", processEngine.getProcessEngineConfiguration().getJdbcUsername());
}
 
public static void main(String[] args) throws Exception {
	// 创建流程引擎
	ProcessEngine engine = ProcessEngines.getDefaultProcessEngine();
	// 得到流程存储服务对象
	RepositoryService repositoryService = engine.getRepositoryService();
	// 部署一份流程文件与相应的流程图文件
	Deployment dep = repositoryService.createDeployment()
			.addClasspathResource("MyFirstProcess.bpmn").deploy();
	// 查询流程定义
	ProcessDefinition def = repositoryService
			.createProcessDefinitionQuery().deploymentId(dep.getId())
			.singleResult();
	// 查询资源文件
	InputStream is = repositoryService.getProcessDiagram(def.getId());
	// 将输入流转换为图片对象
	BufferedImage image = ImageIO.read(is);
	// 保存为图片文件
	File file = new File("resources/result.png");
	if (!file.exists()) {
		file.createNewFile();
	}
	FileOutputStream fos = new FileOutputStream(file);
	ImageIO.write(image, "png", fos);
	fos.close();
	is.close();
	// 关闭流程引擎
	engine.close();
}
 
源代码14 项目: opscenter   文件: ModelTest.java
@RequestMapping("create")
public void createModel(HttpServletRequest request, HttpServletResponse response){
    try{
        String modelName = "modelName";
        String modelKey = "modelKey";
        String description = "description";

        ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();

        RepositoryService repositoryService = processEngine.getRepositoryService();

        ObjectMapper objectMapper = new ObjectMapper();
        ObjectNode editorNode = objectMapper.createObjectNode();
        editorNode.put("id", "canvas");
        editorNode.put("resourceId", "canvas");
        ObjectNode stencilSetNode = objectMapper.createObjectNode();
        stencilSetNode.put("namespace", "http://b3mn.org/stencilset/bpmn2.0#");
        editorNode.put("stencilset", stencilSetNode);
        Model modelData = repositoryService.newModel();

        ObjectNode modelObjectNode = objectMapper.createObjectNode();
        modelObjectNode.put(ModelDataJsonConstants.MODEL_NAME, modelName);
        modelObjectNode.put(ModelDataJsonConstants.MODEL_REVISION, 1);
        modelObjectNode.put(ModelDataJsonConstants.MODEL_DESCRIPTION, description);
        modelData.setMetaInfo(modelObjectNode.toString());
        modelData.setName(modelName);
        modelData.setKey(modelKey);

        //保存模型
        repositoryService.saveModel(modelData);
        repositoryService.addModelEditorSource(modelData.getId(), editorNode.toString().getBytes("utf-8"));
        response.sendRedirect(request.getContextPath() + "/modeler.html?modelId=" + modelData.getId());
    }catch (Exception e){
    }
}
 
源代码15 项目: CrazyWorkflowHandoutsActiviti6   文件: ListGroup.java
public static void main(String[] args) {
	// 新建流程引擎
	ProcessEngine engine = ProcessEngines.getDefaultProcessEngine();
	
	IdentityService identityService = engine.getIdentityService();
	
	List<Group> groups = identityService.createGroupQuery().list();
	
	for (Group group : groups) {
		System.out.println(group.getId() + "---" + group.getName() + "---" + group.getType());
	}		

	// 关闭流程引擎
	engine.close();
}
 
/**
 * 此测试会失败,因为本例没有配置oracle驱动
 */
@Test
public void specialName() {
    ProcessEngineConfiguration.createProcessEngineConfigurationFromResourceDefault().setProcessEngineName("oracleEngine").setJdbcDriver("oracle.jdbc.Driver")
            .setJdbcUrl("jdbc:oracle:thin:@localhost:1521:XE").setJdbcUsername("dbusername").setJdbcPassword("password").setDatabaseType("oracle")
            .buildProcessEngine();
    ProcessEngine oracleEngine = ProcessEngines.getProcessEngine("oracleEngine");
    assertNotNull(oracleEngine);
}
 
源代码17 项目: activiti-in-action-codes   文件: ActivitiUtils.java
/**
 * 单例模式获取引擎对象
 */
public static ProcessEngine getProcessEngine() {
    if (processEngine == null) {
  /*
   * 使用默认的配置文件名称(activiti.cfg.xml)创建引擎对象
   */
        processEngine = ProcessEngineConfiguration.createProcessEngineConfigurationFromResourceDefault().buildProcessEngine();
    }
    return processEngine;
}
 
@Override
public void generateTestData(ProcessEngine processEngine) {
    RepositoryService repositoryService = processEngine.getRepositoryService();
    repositoryService.createDeployment().addClasspathResource("migrationProcess.bpmn20.xml").deploy();

    RuntimeService runtimeService = processEngine.getRuntimeService();
    runtimeService.startProcessInstanceByKey("receiveTask", "activitiv5-migrate-process");
}
 
源代码19 项目: alfresco-repository   文件: ActivitiUtil.java
public ActivitiUtil(ProcessEngine engine, boolean deployWorkflowsInTenant, boolean retentionHistoricProcessInstance)
{
    this.repoService = engine.getRepositoryService();
    this.runtimeService = engine.getRuntimeService();
    this.taskService = engine.getTaskService();
    this.historyService = engine.getHistoryService();
    this.formService = engine.getFormService();
    this.managementService = engine.getManagementService();
    this.deployWorkflowsInTenant = deployWorkflowsInTenant;
    this.retentionHistoricProcessInstance = retentionHistoricProcessInstance;
}
 
@Test
public void testService() throws Exception {
    assertNotNull(runtimeService);

    ProcessEngine processEngine = factoryBean.getObject();
    assertNotNull(processEngine.getRuntimeService());
}
 
public DefaultTaskFlowControlService(RuntimeActivityDefinitionManager activitiesCreationStore,
		ProcessEngine processEngine, String processId)
{
	_activitiesCreationStore = activitiesCreationStore;
	_processEngine = processEngine;
	_processInstanceId = processId;

	String processDefId = _processEngine.getRuntimeService().createProcessInstanceQuery()
			.processInstanceId(_processInstanceId).singleResult().getProcessDefinitionId();

	_processDefinition = ProcessDefinitionUtils.getProcessDefinition(_processEngine, processDefId);
}
 
源代码22 项目: activiti6-boot2   文件: TestHelper.java
public static ProcessEngine getProcessEngine(String configurationResource) {
  ProcessEngine processEngine = processEngines.get(configurationResource);
  if (processEngine == null) {
    log.debug("==== BUILDING PROCESS ENGINE ========================================================================");
    processEngine = ProcessEngineConfiguration.createProcessEngineConfigurationFromResource(configurationResource).buildProcessEngine();
    log.debug("==== PROCESS ENGINE CREATED =========================================================================");
    processEngines.put(configurationResource, processEngine);
  }
  return processEngine;
}
 
源代码23 项目: activiti6-boot2   文件: DbSqlSession.java
public void dbSchemaCheckVersion() {
  try {
    String dbVersion = getDbVersion();
    if (!ProcessEngine.VERSION.equals(dbVersion)) {
      throw new ActivitiWrongDbException(ProcessEngine.VERSION, dbVersion);
    }

    String errorMessage = null;
    if (!isEngineTablePresent()) {
      errorMessage = addMissingComponent(errorMessage, "engine");
    }
    if (dbSqlSessionFactory.isDbHistoryUsed() && !isHistoryTablePresent()) {
      errorMessage = addMissingComponent(errorMessage, "history");
    }
    if (dbSqlSessionFactory.isDbIdentityUsed() && !isIdentityTablePresent()) {
      errorMessage = addMissingComponent(errorMessage, "identity");
    }

    if (errorMessage != null) {
      throw new ActivitiException("Activiti database problem: " + errorMessage);
    }

  } catch (Exception e) {
    if (isMissingTablesException(e)) {
      throw new ActivitiException(
          "no activiti tables in db. set <property name=\"databaseSchemaUpdate\" to value=\"true\" or value=\"create-drop\" (use create-drop for testing only!) in bean processEngineConfiguration in activiti.cfg.xml for automatic schema creation",
          e);
    } else {
      if (e instanceof RuntimeException) {
        throw (RuntimeException) e;
      } else {
        throw new ActivitiException("couldn't get db schema version", e);
      }
    }
  }

  log.debug("activiti db schema check successful");
}
 
@Test
public void givenNoXMLConfig_whenCreateInMemProcessEngineConfig_thenCreated() {
    ProcessEngineConfiguration processEngineConfiguration = ProcessEngineConfiguration.createStandaloneInMemProcessEngineConfiguration();
    ProcessEngine processEngine = processEngineConfiguration
      .setJdbcUrl("jdbc:h2:mem:my-own-in-mem-db;DB_CLOSE_DELAY=1000")
      .buildProcessEngine();
    assertNotNull(processEngine);
    assertEquals("sa", processEngine.getProcessEngineConfiguration().getJdbcUsername());
}
 
源代码25 项目: activiti6-boot2   文件: SpringActivitiTestCase.java
@Override
protected void initializeProcessEngine() {
  ContextConfiguration contextConfiguration = getClass().getAnnotation(ContextConfiguration.class);
  String[] value = contextConfiguration.value();
  boolean hasOneArg = value != null && value.length == 1;
  String key = hasOneArg ? value[0] : ProcessEngine.class.getName();
  ProcessEngine engine = this.cachedProcessEngines.containsKey(key) ? this.cachedProcessEngines.get(key) : this.applicationContext.getBean(ProcessEngine.class);

  this.cachedProcessEngines.put(key, engine);
  this.processEngine = engine;
}
 
@Override
public ProcessEngine buildProcessEngine() {
  ProcessEngine processEngine = super.buildProcessEngine();
  ProcessEngines.setInitialized(true);
  autoDeployResources(processEngine);
  return processEngine;
}
 
@Bean(name = "processEngine")
public ProcessEngine processEngine() {
  // Safe to call the getObject() on the @Bean annotated
  // processEngineFactoryBean(), will be
  // the fully initialized object instanced from the factory and will NOT
  // be created more than once
  try {
    return processEngineFactoryBean().getObject();
  } catch (Exception e) {
    throw new RuntimeException(e);
  }
}
 
@Override
protected void onBootstrap(ApplicationEvent event) {
	
	this.processEngine = getApplicationContext().getBean(ProcessEngine.class);
	
	if (workflowAdminService.isEngineEnabled(ActivitiConstants.ENGINE_ID)) 
	{
		((ProcessEngineImpl)processEngine).getProcessEngineConfiguration().getJobExecutor().start();
	}
}
 
源代码29 项目: activiti6-boot2   文件: EventRecorderTestUtils.java
public static void closeProcessEngine(ProcessEngine processEngine, ActivitiEventListener listener) {
  if (listener != null) {
    final ProcessEngineConfigurationImpl processEngineConfiguration = ((ProcessEngineImpl) processEngine).getProcessEngineConfiguration();
    processEngineConfiguration.getEventDispatcher().removeEventListener(listener);
  }
  processEngine.close();
}
 
@Test
public void testService() throws Exception {
    assertNotNull(runtimeService);

    ProcessEngine processEngine = factoryBean.getObject();
    assertNotNull(processEngine.getRuntimeService());
}