public String deployFile(File processFile) { RepositoryService repositoryService = this.processEngine.getRepositoryService(); NewDeployment deployment = repositoryService.createDeployment(); deployment.setName(processFile.getName()); deployment.setTimestamp(System.currentTimeMillis()); if (processFile.getName().endsWith(".xml")) { deployment.addResourceFromFile(processFile); } else if (processFile.getName().endsWith("ar")) { try { FileInputStream fileInputStream = new FileInputStream(processFile); ZipInputStream zipInputStream = new ZipInputStream(fileInputStream); deployment.addResourcesFromZipInputStream(zipInputStream); } catch (Exception e) { throw new RuntimeException("couldn't read business archive "+processFile, e); } } return deployment.deploy(); } }
public byte[] getProcessImage(String processId) { RepositoryService repositoryService = this.processEngine.getRepositoryService(); ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().processDefinitionId(processId).uniqueResult(); String imgRes = processDefinition.getImageResourceName(); InputStream in = repositoryService.getResourceAsStream(processDefinition.getDeploymentId(), imgRes); if (null == in) throw new RuntimeException("Failed to retrieve image resource: " + imgRes); ByteArrayOutputStream out = new ByteArrayOutputStream(); final int BUF_SIZE = 1 << 8; // 1KiB buffer byte[] buffer = new byte[BUF_SIZE]; int bytesRead = -1; try { while ((bytesRead = in.read(buffer)) > -1) { out.write(buffer, 0, bytesRead); } in.close(); } catch (IOException e) { throw new RuntimeException("Failed to read image resource: " + imgRes, e); } byte[] imageBytes = out.toByteArray(); return imageBytes; }
public void suspendDeployment(String id, boolean isSuspended) { RepositoryService repositoryService = this.processEngine.getRepositoryService(); if (isSuspended) repositoryService.suspendDeployment(id); else repositoryService.resumeDeployment(id); }
public List<ProcessDefinitionRef> removeProcessDefinition(String procDefId) { RepositoryService repositoryService = this.processEngine.getRepositoryService(); ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().processDefinitionId(procDefId).uniqueResult(); if (processDefinition != null) { // Todo: this deletes a complete deployment. Currently, there is no way of deleting a procDef only repositoryService.deleteDeploymentCascade(processDefinition.getDeploymentId()); } return getProcessDefinitions(); }
public List<ProcessDefinitionRef> getProcessDefinitions() { RepositoryService repositoryService = this.processEngine.getRepositoryService(); List<ProcessDefinitionRef> results = new ArrayList<ProcessDefinitionRef>(); // active process definitions List<ProcessDefinition> activePds = repositoryService.createProcessDefinitionQuery() .orderAsc(ProcessDefinitionQuery.PROPERTY_NAME) .list(); for (ProcessDefinition processDefinition : activePds) { results.add(ModelAdaptor.adoptDefinition(processDefinition)); } return results; }
public List<DeploymentRef> getDeployments() { List<DeploymentRef> results = new ArrayList<DeploymentRef>(); RepositoryService repositoryService = this.processEngine.getRepositoryService(); List<Deployment> dpls = repositoryService.createDeploymentQuery().list(); for (Deployment dpl : dpls) { DeploymentRef deploymentRef = ModelAdaptor.adoptDeployment(dpl); // active processes for deployment ProcessDefinitionQuery pdQuery = repositoryService.createProcessDefinitionQuery(); pdQuery.deploymentId(dpl.getId()); List<ProcessDefinition> activePds = pdQuery.list(); for (ProcessDefinition procDef : activePds) { deploymentRef.getDefinitions().add(procDef.getId()); } // suspended processes for deployment List<ProcessDefinition> suspendedPds = repositoryService.createProcessDefinitionQuery() .deploymentId(dpl.getId()) .suspended() .list(); for (ProcessDefinition procDef : suspendedPds) { deploymentRef.getDefinitions().add(procDef.getId()); } results.add(deploymentRef); } return results; }
private InputStream loadCSS(String deploymentId) { RepositoryService repoService = processEngine.getRepositoryService(); InputStream in = repoService.getResourceAsStream( deploymentId, PROCESSFORMS_CSS ); return in; } }
repositoryService.suspendDeployment(deploymentRef.getDeploymentId());
public List<ActiveNodeInfo> getNodeInfoForActivities(String processDefinitionId, List<String> activities) { List<ActiveNodeInfo> results = new ArrayList<ActiveNodeInfo>(); RepositoryService repoService = this.processEngine.getRepositoryService(); for (String activityName : activities) { ActivityCoordinates coords = repoService.getActivityCoordinates(processDefinitionId, activityName); results.add(new ActiveNodeInfo(coords.getWidth(), coords.getHeight(), new DiagramNodeInfo(activityName, coords.getX(), coords.getY(), coords.getWidth(), coords.getHeight()))); } return results; } }
public void deleteDeployment(String id) { RepositoryService repositoryService = this.processEngine.getRepositoryService(); repositoryService.deleteDeploymentCascade(id); }
public ProcessDefinitionRef getProcessDefinition(String procDefId) { RepositoryService repositoryService = this.processEngine.getRepositoryService(); ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().processDefinitionId(procDefId).uniqueResult(); return ModelAdaptor.adoptDefinition(processDefinition); }
public List<ActiveNodeInfo> getActiveNodeInfo(String processInstanceId) { List<ActiveNodeInfo> results = new ArrayList<ActiveNodeInfo>(); ProcessInstance pi = processEngine.getExecutionService().findProcessInstanceById(processInstanceId); Set<String> currentActivities = pi.findActiveActivityNames(); RepositoryService repoService = this.processEngine.getRepositoryService(); for (String activityName : currentActivities) { ActivityCoordinates coords = repoService.getActivityCoordinates(pi.getProcessDefinitionId(), activityName); results.add(new ActiveNodeInfo(coords.getWidth(), coords.getHeight(), new DiagramNodeInfo(activityName, coords.getX(), coords.getY(), coords.getWidth(), coords.getHeight()))); } return results; }
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().processDefinitionId(id).uniqueResult(); inputStream = repositoryService.getResourceAsStream(processDefinition.getDeploymentId(), imgRes);
public void deployProcessFromStream(String resourceName, InputStream processDefinition) throws IOException { processEngine.getRepositoryService().createDeployment() .addResourceFromInputStream(resourceName, processDefinition) .deploy(); }
public List<ProcessInstanceRef> getProcessInstances(String procDefId) { ExecutionService execService = this.processEngine.getExecutionService(); List<ProcessInstance> processInstances = execService.createProcessInstanceQuery() .processDefinitionId(procDefId) .list(); // must fetch process definition first to be able to get information about activities RepositoryService repositoryService = this.processEngine.getRepositoryService(); ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().processDefinitionId(procDefId).uniqueResult(); List<ProcessInstanceRef> results = adoptProcessInstances(processInstances, processDefinition); return results; }
private InputStream loadCSS(String executionId) { RepositoryService repoService = processEngine.getRepositoryService(); ExecutionService execService = processEngine.getExecutionService(); Execution execution = execService.findExecutionById(executionId); if (execution != null) { ProcessDefinition definition = repoService.createProcessDefinitionQuery() .processDefinitionId(execution.getProcessDefinitionId()).uniqueResult(); InputStream in = repoService.getResourceAsStream(definition.getDeploymentId(), PROCESSFORMS_CSS); return in; } return null; } }
public void deployProcessFromStream(String resourceName, InputStream processDefinition) throws IOException { processEngine.getRepositoryService().createDeployment() .addResourceFromInputStream(resourceName, processDefinition) .deploy(); }
throw new IllegalArgumentException("Process " + ref.getReferenceId() + " doesn't provide a start form"); ProcessDefinition procDef = repoService.createProcessDefinitionQuery().processDefinitionId(ref.getReferenceId()).uniqueResult(); InputStream template = repoService.getResourceAsStream(procDef.getDeploymentId(), startFormResourceName);
File deploymentFile = new File(deploymentName); String deploymentId = repositoryService.createDeployment() .addResourcesFromZipInputStream(new ZipInputStream(deploymentMetData.getWatch().openStream()))
Execution execution = executionService.findExecutionById(executionId); String procInstId = execution.getProcessInstance().getId(); ProcessDefinition procDef = repoService.createProcessDefinitionQuery() .processDefinitionId(execution.getProcessDefinitionId()) .uniqueResult(); InputStream template = repoService.getResourceAsStream(procDef.getDeploymentId(), name);