protected void copyDeploymentValuesToCaseDefinitions(EngineDeployment deployment, List<CaseDefinitionEntity> caseDefinitionEntities) { String tenantId = deployment.getTenantId(); String deploymentId = deployment.getId(); for (CaseDefinitionEntity caseDefinitionEntity : caseDefinitionEntities) { if (tenantId != null) { caseDefinitionEntity.setTenantId(tenantId); } caseDefinitionEntity.setDeploymentId(deploymentId); } }
@Override public void deploy(EngineDeployment deployment, Map<String, Object> deploymentSettings) { LOGGER.debug("Processing app deployment {}", deployment.getName()); ProcessEngineConfigurationImpl processEngineConfiguration = CommandContextUtil.getProcessEngineConfiguration(); DeploymentManager deploymentManager = processEngineConfiguration.getDeploymentManager(); Object appResourceObject = null; DeploymentEntity deploymentEntity = (DeploymentEntity) deployment; Map<String, EngineResource> resources = deploymentEntity.getResources(); for (String resourceName : resources.keySet()) { if (resourceName.endsWith(".app")) { LOGGER.info("Processing app resource {}", resourceName); EngineResource resourceEntity = resources.get(resourceName); byte[] resourceBytes = resourceEntity.getBytes(); appResourceObject = processEngineConfiguration.getAppResourceConverter().convertAppResourceToModel(resourceBytes); } } if (appResourceObject != null) { deploymentManager.getAppResourceCache().add(deployment.getId(), appResourceObject); } } }
@Override public void deploy(EngineDeployment deployment, Map<String, Object> deploymentSettings) { LOGGER.debug("Processing rules deployment {}", deployment.getName()); KnowledgeBuilder knowledgeBuilder = null; DeploymentManager deploymentManager = CommandContextUtil.getProcessEngineConfiguration().getDeploymentManager(); Map<String, EngineResource> resources = deployment.getResources(); for (String resourceName : resources.keySet()) { if (resourceName.endsWith(".drl")) { // is only parsing .drls sufficient? what about other rule dsl's? (@see ResourceType) LOGGER.info("Processing rules resource {}", resourceName); if (knowledgeBuilder == null) { knowledgeBuilder = KnowledgeBuilderFactory.newKnowledgeBuilder(); } EngineResource resourceEntity = resources.get(resourceName); byte[] resourceBytes = resourceEntity.getBytes(); Resource droolsResource = ResourceFactory.newByteArrayResource(resourceBytes); knowledgeBuilder.add(droolsResource, ResourceType.DRL); } } if (knowledgeBuilder != null) { KieBase kieBase = knowledgeBuilder.newKieBase(); deploymentManager.getKnowledgeBaseCache().add(deployment.getId(), kieBase); } } }
@Override public void deploy(EngineDeployment deployment, Map<String, Object> deploymentSettings) { if (!deployment.isNew()) { return; } LOGGER.debug("CmmnDeployer: processing deployment {}", deployment.getName()); CmmnDeploymentBuilder cmmnDeploymentBuilder = null; Map<String, EngineResource> resources = deployment.getResources(); for (String resourceName : resources.keySet()) { if (org.flowable.cmmn.engine.impl.deployer.CmmnDeployer.isCmmnResource(resourceName)) { LOGGER.info("CmmnDeployer: processing resource {}", resourceName); if (cmmnDeploymentBuilder == null) { CmmnRepositoryService cmmnRepositoryService = CommandContextUtil.getCmmnRepositoryService(); cmmnDeploymentBuilder = cmmnRepositoryService.createDeployment().name(deployment.getName()); } cmmnDeploymentBuilder.addBytes(resourceName, resources.get(resourceName).getBytes()); } } if (cmmnDeploymentBuilder != null) { cmmnDeploymentBuilder.parentDeploymentId(deployment.getId()); cmmnDeploymentBuilder.key(deployment.getKey()); if (deployment.getTenantId() != null && deployment.getTenantId().length() > 0) { cmmnDeploymentBuilder.tenantId(deployment.getTenantId()); } cmmnDeploymentBuilder.deploy(); } }
@Override public void deploy(EngineDeployment deployment, Map<String, Object> deploymentSettings) { if (!deployment.isNew()) { return; } LOGGER.debug("BpmnDeployer: processing deployment {}", deployment.getName()); DeploymentBuilder bpmnDeploymentBuilder = null; Map<String, EngineResource> resources = deployment.getResources(); for (String resourceName : resources.keySet()) { if (isBpmnResource(resourceName)) { LOGGER.info("BpmnDeployer: processing resource {}", resourceName); if (bpmnDeploymentBuilder == null) { RepositoryService repositoryService = CommandContextUtil.getProcessEngineConfiguration().getRepositoryService(); bpmnDeploymentBuilder = repositoryService.createDeployment().name(deployment.getName()); } bpmnDeploymentBuilder.addBytes(resourceName, resources.get(resourceName).getBytes()); } } if (bpmnDeploymentBuilder != null) { bpmnDeploymentBuilder.parentDeploymentId(deployment.getId()); bpmnDeploymentBuilder.key(deployment.getKey()); if (deployment.getTenantId() != null && deployment.getTenantId().length() > 0) { bpmnDeploymentBuilder.tenantId(deployment.getTenantId()); } bpmnDeploymentBuilder.deploy(); } }
newAppDefinition.setDescription(appResourceModel.getDescription()); newAppDefinition.setTenantId(deployment.getTenantId()); newAppDefinition.setDeploymentId(deployment.getId()); newAppDefinition.setResourceName(resourceName); appDefinitionEntityManager.insert(newAppDefinition, false); AppDefinitionEntity appDefinitionEntity = getPersistedInstanceOfAppDefinition(appResourceModel.getKey(), deployment.getId(), deployment.getTenantId()); updateCachingAndArtifacts(appDefinitionEntity, appResourceModel, deploymentEntity);
protected ProcessDefinitionEntity transformProcess(BpmnParse bpmnParse, Process process) { ProcessDefinitionEntity currentProcessDefinition = CommandContextUtil.getProcessDefinitionEntityManager().create(); bpmnParse.setCurrentProcessDefinition(currentProcessDefinition); /* * Mapping object model - bpmn xml: processDefinition.id -> generated by activiti engine processDefinition.key -> bpmn id (required) processDefinition.name -> bpmn name (optional) */ currentProcessDefinition.setKey(process.getId()); currentProcessDefinition.setName(process.getName()); currentProcessDefinition.setCategory(bpmnParse.getBpmnModel().getTargetNamespace()); currentProcessDefinition.setDescription(process.getDocumentation()); currentProcessDefinition.setDeploymentId(bpmnParse.getDeployment().getId()); if (bpmnParse.getDeployment().getEngineVersion() != null) { currentProcessDefinition.setEngineVersion(bpmnParse.getDeployment().getEngineVersion()); } createEventListeners(bpmnParse, process.getEventListeners()); if (LOGGER.isDebugEnabled()) { LOGGER.debug("Parsing process {}", currentProcessDefinition.getKey()); } bpmnParse.processFlowElements(process.getFlowElements()); processArtifacts(bpmnParse, process.getArtifacts()); return currentProcessDefinition; }