public ProcessDefinition deployAndEnableProcessWithActor(final DesignProcessDefinition designProcessDefinition, final String actorName, final List<User> users) throws BonitaException { final BusinessArchive businessArchive = new BusinessArchiveBuilder().createNewBusinessArchive().setProcessDefinition(designProcessDefinition).done(); return deployAndEnableProcessWithActor(businessArchive, actorName, users); }
public ProcessDefinition deployAndEnableProcessWithActor(final DesignProcessDefinition designProcessDefinition, final List<String> actorsName, final List<User> users) throws BonitaException { return deployAndEnableProcessWithActor(new BusinessArchiveBuilder().createNewBusinessArchive().setProcessDefinition(designProcessDefinition).done(), actorsName, users); }
public ProcessDefinition deployAndEnableProcessWithActor(final DesignProcessDefinition designProcessDefinition, final Map<String, List<User>> actorUsers) throws BonitaException { return deployAndEnableProcessWithActor(new BusinessArchiveBuilder().createNewBusinessArchive().setProcessDefinition(designProcessDefinition).done(), actorUsers); }
public BusinessArchive exportBusinessArchive(long processDefinitionId, DesignProcessDefinition designProcessDefinition) throws InvalidBusinessArchiveFormatException, SBonitaException { final BusinessArchiveBuilder businessArchiveBuilder = new BusinessArchiveBuilder().createNewBusinessArchive(); businessArchiveBuilder.setProcessDefinition(designProcessDefinition); for (BusinessArchiveArtifactManager businessArchiveArtifactManager : getArtifactManagers()) { businessArchiveArtifactManager.exportToBusinessArchive(processDefinitionId, businessArchiveBuilder); } return businessArchiveBuilder.done(); }
@Override public ProcessDefinition deploy(final DesignProcessDefinition designProcessDefinition) throws AlreadyExistsException, ProcessDeployException { try { final BusinessArchive businessArchive = new BusinessArchiveBuilder().createNewBusinessArchive().setProcessDefinition(designProcessDefinition) .done(); return deploy(businessArchive); } catch (final InvalidBusinessArchiveFormatException e) { throw new ProcessDeployException(e); } }
@Override public ProcessDefinition deployAndEnableProcess(final DesignProcessDefinition designProcessDefinition) throws ProcessDeployException, ProcessEnablementException, AlreadyExistsException, InvalidProcessDefinitionException { BusinessArchive businessArchive; try { businessArchive = new BusinessArchiveBuilder().createNewBusinessArchive().setProcessDefinition(designProcessDefinition).done(); } catch (final InvalidBusinessArchiveFormatException e) { throw new InvalidProcessDefinitionException(e.getMessage()); } return deployAndEnableProcess(businessArchive); }
public ProcessDefinition deployAndEnableProcessWithActor(final DesignProcessDefinition designProcessDefinition, final String actorName, final long userId) throws BonitaException { final BusinessArchive businessArchive = new BusinessArchiveBuilder().createNewBusinessArchive().setProcessDefinition(designProcessDefinition).done(); final ProcessDefinition processDefinition = deployProcess(businessArchive); getProcessAPI().addUserToActor(actorName, processDefinition, userId); getProcessAPI().enableProcess(processDefinition.getId()); return processDefinition; }
public ProcessDefinition deployAndEnableProcessWithActor(final DesignProcessDefinition designProcessDefinition, final String actorName, final Role role) throws BonitaException { final ProcessDefinition processDefinition = deployProcess( new BusinessArchiveBuilder().createNewBusinessArchive().setProcessDefinition(designProcessDefinition).done()); addMappingOfActorsForRole(actorName, role.getId(), processDefinition); getProcessAPI().enableProcess(processDefinition.getId()); return processDefinition; }
public ProcessDefinition deployAndEnableProcessWithActor(final DesignProcessDefinition designProcessDefinition, final String actorName, final Role... roles) throws BonitaException { final ProcessDefinition processDefinition = deployProcess( new BusinessArchiveBuilder().createNewBusinessArchive().setProcessDefinition(designProcessDefinition).done()); for (final Role role : roles) { addMappingOfActorsForRole(actorName, role.getId(), processDefinition); } getProcessAPI().enableProcess(processDefinition.getId()); return processDefinition; }
public ProcessDefinition deployAndEnableProcessWithActor(final DesignProcessDefinition designProcessDefinition, final String actorName, final Role role, final Group group) throws BonitaException { final ProcessDefinition processDefinition = deployProcess( new BusinessArchiveBuilder().createNewBusinessArchive().setProcessDefinition(designProcessDefinition).done()); addMappingOfActorsForRoleAndGroup(actorName, role.getId(), group.getId(), processDefinition); getProcessAPI().enableProcess(processDefinition.getId()); return processDefinition; }
public ProcessDefinition deployAndEnableProcessWithActor(final DesignProcessDefinition designProcessDefinition, final String actorName, final Group group) throws BonitaException { final ProcessDefinition processDefinition = deployProcess( new BusinessArchiveBuilder().createNewBusinessArchive().setProcessDefinition(designProcessDefinition).done()); getProcessAPI().addGroupToActor(actorName, group.getId(), processDefinition); getProcessAPI().enableProcess(processDefinition.getId()); return processDefinition; }
@Test public void createBusinessArchiveFolder() throws Exception { final ProcessDefinitionBuilder processDefinitionBuilder = new ProcessDefinitionBuilder().createNewInstance("MyProcess", "1.0"); final DesignProcessDefinition process = processDefinitionBuilder.done(); final BusinessArchive businessArchive = new BusinessArchiveBuilder().createNewBusinessArchive().setProcessDefinition(process).done(); BusinessArchiveFactory.writeBusinessArchiveToFolder(businessArchive, tempFolder); assertTrue(tempFolder.exists()); assertTrue(tempFolder.isDirectory()); final File file = getFile(ProcessDefinitionBARContribution.PROCESS_DEFINITION_XML); assertTrue(file.exists()); assertFalse(file.isDirectory()); }
@Test public void exportBusinessArchiveAsFile() throws Exception { final ProcessDefinitionBuilder processDefinitionBuilder = new ProcessDefinitionBuilder().createNewInstance("MyProcess", "1.0"); final BusinessArchive businessArchive = new BusinessArchiveBuilder().createNewBusinessArchive().setProcessDefinition(processDefinitionBuilder.done()) .done(); BusinessArchiveFactory.writeBusinessArchiveToFile(businessArchive, barFile); assertTrue(barFile.exists()); assertFalse(barFile.isDirectory()); }
@Test public void createBusinessArchiveFromFile() throws Exception { final ProcessDefinitionBuilder processDefinitionBuilder = new ProcessDefinitionBuilder().createNewInstance("MyProcess", "1.0"); final DesignProcessDefinition process = processDefinitionBuilder.done(); final BusinessArchive businessArchive = new BusinessArchiveBuilder().createNewBusinessArchive().setProcessDefinition(process).done(); BusinessArchiveFactory.writeBusinessArchiveToFolder(businessArchive, tempFolder); BusinessArchiveFactory.businessArchiveFolderToFile(barFile, tempFolder.getAbsolutePath()); assertTrue(barFile.exists()); final BusinessArchive businessArchive2 = BusinessArchiveFactory.readBusinessArchive(barFile); final ProcessDefinition result = businessArchive2.getProcessDefinition(); assertEquals(process, result); }
@Test public void manageBusinessArchiveResources() throws Exception { final ProcessDefinitionBuilder processDefinitionBuilder = new ProcessDefinitionBuilder().createNewInstance("MyProcess", "1.0"); final BusinessArchive businessArchive = new BusinessArchiveBuilder().createNewBusinessArchive().setProcessDefinition(processDefinitionBuilder.done()) .addExternalResource(new BarResource("dummy.txt", new byte[] { 'a', 'b', 'c', 'd' })).done(); // Add a resource to the biz archive: BusinessArchiveFactory.writeBusinessArchiveToFile(businessArchive, barFile); // read from the file final BusinessArchive readBusinessArchive = BusinessArchiveFactory.readBusinessArchive(barFile); assertTrue("Added resource not found in BusinessArchive", readBusinessArchive.getResources().containsKey("resources/dummy.txt")); }
@Test public void formMappingInBarShouldBeWrittenAndReadProperly() throws Exception { final DesignProcessDefinition designProcessDefinition = new ProcessDefinitionBuilder().createNewInstance("MethCookingPlanning", "Season 5").done(); final FormMappingModel formMappingModel = new FormMappingModel(); formMappingModel.addFormMapping(new FormMappingDefinition("/?myPageTokenID", FormMappingType.PROCESS_START, FormMappingTarget.INTERNAL)); formMappingModel.addFormMapping(new FormMappingDefinition("someExternalPage", FormMappingType.TASK, FormMappingTarget.URL, "requestTask")); final BusinessArchive businessArchive = new BusinessArchiveBuilder().createNewBusinessArchive().setProcessDefinition(designProcessDefinition) .setFormMappings(formMappingModel).done(); BusinessArchiveFactory.writeBusinessArchiveToFile(businessArchive, barFile); final BusinessArchive readBusinessArchive = BusinessArchiveFactory.readBusinessArchive(barFile); assertThat(readBusinessArchive.getFormMappingModel().getFormMappings()).as("Form Mapping should be found in BusinessArchive").hasSize(2); }
@Test public void addingEmptyResource_to_BusinessArchive_should_throw_exception() throws Exception { final BusinessArchiveBuilder builder = new BusinessArchiveBuilder().createNewBusinessArchive() .setProcessDefinition(new ProcessDefinitionBuilder().createNewInstance("Dummy", "11.01").done()); expectedEx.expect(IllegalArgumentException.class); expectedEx.expectMessage("You are trying to add file resources/dummy.txt with empty content into the BusinessArchive (bar file)." + " Either add content to this file, or remove it from the resources."); builder.addExternalResource(new BarResource("dummy.txt", new byte[] {})); }
@Test public void addingNullResource_to_BusinessArchive_should_throw_exception() throws Exception { final BusinessArchiveBuilder builder = new BusinessArchiveBuilder().createNewBusinessArchive() .setProcessDefinition(new ProcessDefinitionBuilder().createNewInstance("Dummy", "11.02").done()); expectedEx.expect(IllegalArgumentException.class); expectedEx.expectMessage("You are trying to add file resources/dummy.txt with empty content into the BusinessArchive (bar file)." + " Either add content to this file, or remove it from the resources."); builder.addExternalResource(new BarResource("dummy.txt", null)); }
@Test public void addingEmptyDocument_to_BusinessArchive_should_throw_exception() throws Exception { final BusinessArchiveBuilder builder = new BusinessArchiveBuilder().createNewBusinessArchive() .setProcessDefinition(new ProcessDefinitionBuilder().createNewInstance("EmptyDoc", "7.3").done()); expectedEx.expect(IllegalArgumentException.class); expectedEx.expectMessage("You are trying to add file documents/resume.pdf with empty content into the BusinessArchive (bar file)." + " Either add content to this file, or remove it from the resources."); builder.addDocumentResource(new BarResource("resume.pdf", new byte[] {})); }
@Test(expected = InvalidBusinessArchiveFormatException.class) public void invalidBOSHashIsRejected() throws Exception { final ProcessDefinitionBuilder processDefinitionBuilder = new ProcessDefinitionBuilder().createNewInstance("MyBOSProcess", "1.0"); final DesignProcessDefinition process = processDefinitionBuilder.done(); final BusinessArchive businessArchive = new BusinessArchiveBuilder().createNewBusinessArchive().setProcessDefinition(process).done(); BusinessArchiveFactory.writeBusinessArchiveToFolder(businessArchive, tempFolder); final File infoFile = getFile(ProcessDefinitionBARContribution.PROCESS_INFOS_FILE); IOUtil.writeContentToFile("bad process infos", infoFile); BusinessArchiveFactory.readBusinessArchive(tempFolder); }