@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(); } }
@Override public void deploy(EngineDeployment deployment, Map<String, Object> deploymentSettings) { LOGGER.debug("Processing deployment {}", deployment.getName()); CmmnParseResult parseResult = new CmmnParseResult(deployment); for (EngineResource resource : deployment.getResources().values()) { if (isCmmnResource(resource.getName())) { LOGGER.debug("Processing CMMN resource {}", resource.getName()); parseResult.merge(cmmnParser.parse(resource)); } } verifyCaseDefinitionsDoNotShareKeys(parseResult.getAllCaseDefinitions()); copyDeploymentValuesToCaseDefinitions(parseResult.getDeployment(), parseResult.getAllCaseDefinitions()); setResourceNamesOnCaseDefinitions(parseResult); createAndPersistNewDiagramsIfNeeded(parseResult); setCaseDefinitionDiagramNames(parseResult); if (deployment.isNew()) { Map<CaseDefinitionEntity, CaseDefinitionEntity> mapOfNewCaseDefinitionToPreviousVersion = getPreviousVersionsOfCaseDefinitions(parseResult); setCaseDefinitionVersionsAndIds(parseResult, mapOfNewCaseDefinitionToPreviousVersion); persistCaseDefinitions(parseResult); } else { makeCaseDefinitionsConsistentWithPersistedVersions(parseResult); } updateCachingAndArtifacts(parseResult); }
@Override public void deploy(EngineDeployment deployment, Map<String, Object> deploymentSettings) { LOGGER.debug("Processing app deployment {}", deployment.getName());
@Override public void deploy(EngineDeployment deployment, Map<String, Object> deploymentSettings) { LOGGER.debug("Processing deployment {}", deployment.getName());