public WorkflowNode createNode(String name, String definitionName, String defaultTitle, String defaultDescription, String type, boolean isTaskNode, WorkflowTransition... transitions) { String displayId = definitionName + ".node."+name; String title = getLabel(displayId, TITLE_LABEL, defaultTitle); String description = getLabel(displayId, DESC_LABEL, defaultDescription, title); return new WorkflowNode(name, title, description, type, isTaskNode, transitions); }
public WorkflowTaskDefinition getTaskDefinition(PvmActivity activity, String taskFormKey, String processKey, boolean isStart) { WorkflowNode node = getNode(activity, processKey, true); String taskDefId = taskFormKey == null ? node.getName() : taskFormKey; return factory.createTaskDefinition(taskDefId, node, taskFormKey, isStart); }
private String getTransitionValues(WorkflowTask item) { WorkflowTransition[] transitions = item.getDefinition().getNode().getTransitions(); if (transitions == null || transitions.length == 0) { return ""; } return buildTransitionString(item, transitions); }
for (WorkflowPath path : paths) out.println("path id: " + path.getId() + " , node: " + path.getNode().getName()); out.println("path: " + path.getId() + " , node: " + path.getNode().getName() + " , active: " + path.isActive()); List<WorkflowTask> tasks = workflowService.getTasksForWorkflowPath(path.getId()); for (WorkflowTask task : tasks) for (WorkflowTransition transition : path.getNode().getTransitions()) out.print("id: " + timer.getId() + " , name: " + timer.getName() + " , due date: " + timer.getDueDate() + " , path: " + timer.getPath().getId() + " , node: " + timer.getPath().getNode().getName() + " , process: " + timer.getPath().getInstance().getId()); if (timer.getTask() != null) out.println("state: " + task.getState()); out.println("path: " + task.getPath().getId()); out.println("transitions: " + task.getDefinition().getNode().getTransitions().length); for (WorkflowTransition transition : task.getDefinition().getNode().getTransitions()) out.println("path: " + ((currentPath == null) ? "None" : currentPath.getId() + " , node: " + currentPath.getNode().getTitle()));
@Test public void testCompletedTaskInWorkflowWithSubProcess() { WorkflowDefinition definition = deployDefinition(ACTIVITI_TEST_WITH_SUB_PROCESS_XML); String workflowDefId = definition.getId(); List<WorkflowTaskDefinition> taskDefs = workflowService.getTaskDefinitions(workflowDefId); assertEquals(2, taskDefs.size()); // Prior to the fix for MNT-17601 this list only contained "Alfresco start". assertEquals("Alfresco start", taskDefs.get(0).getNode().getTitle()); assertEquals("Alfresco User Task", taskDefs.get(1).getNode().getTitle()); }
/** * {@inheritDoc} */ @Override public String toString() { return "WorkflowPath[id=" + id + ",instance=" + instance.toString() + ",active=" + active + ",node=" + ((node != null) ? node.toString() : "null") + "]"; } }
assertEquals(workflowInstanceId, timer.getPath().getInstance().getId()); assertNotNull(timer.getPath().getNode()); assertTrue(timer.getPath().getNode().isTaskNode());
for (WorkflowPath path : paths) out.println("path id: " + path.getId() + " , node: " + path.getNode().getName()); out.println("path: " + path.getId() + " , node: " + path.getNode().getName() + " , active: " + path.isActive()); List<WorkflowTask> tasks = workflowService.getTasksForWorkflowPath(path.getId()); for (WorkflowTask task : tasks) for (WorkflowTransition transition : path.getNode().getTransitions()) out.print("id: " + timer.getId() + " , name: " + timer.getName() + " , due date: " + timer.getDueDate() + " , path: " + timer.getPath().getId() + " , node: " + timer.getPath().getNode().getName() + " , process: " + timer.getPath().getInstance().getId()); if (timer.getTask() != null) out.println("state: " + task.getState()); out.println("path: " + task.getPath().getId()); out.println("transitions: " + task.getDefinition().getNode().getTransitions().length); for (WorkflowTransition transition : task.getDefinition().getNode().getTransitions()) out.println("path: " + ((currentPath == null) ? "None" : currentPath.getId() + " , node: " + currentPath.getNode().getTitle()));
/** * {@inheritDoc} */ @Override public String toString() { return "WorkflowPath[id=" + id + ",instance=" + instance.toString() + ",active=" + active + ",node=" + ((node != null) ? node.toString() : "null") + "]"; } }
public WorkflowTaskDefinition getTaskDefinition(PvmActivity activity, String taskFormKey, String processKey, boolean isStart) { WorkflowNode node = getNode(activity, processKey, true); String taskDefId = taskFormKey == null ? node.getName() : taskFormKey; return factory.createTaskDefinition(taskDefId, node, taskFormKey, isStart); }
public WorkflowNode createNode(String name, String definitionName, String defaultTitle, String defaultDescription, String type, boolean isTaskNode, WorkflowTransition... transitions) { String displayId = definitionName + ".node."+name; String title = getLabel(displayId, TITLE_LABEL, defaultTitle); String description = getLabel(displayId, DESC_LABEL, defaultDescription, title); return new WorkflowNode(name, title, description, type, isTaskNode, transitions); }
private String getTransitionValues(WorkflowTask item) { WorkflowTransition[] transitions = item.getDefinition().getNode().getTransitions(); if (transitions == null || transitions.length == 0) { return ""; } return buildTransitionString(item, transitions); }
@Test public void testSignal() throws Exception { WorkflowDefinition def = deployTestSignallingDefinition(); ProcessInstance processInstance = runtime.startProcessInstanceById(BPMEngineRegistry.getLocalId(def.getId())); String procId = processInstance.getId(); List<String> nodeIds = runtime.getActiveActivityIds(procId); assertEquals(1, nodeIds.size()); assertEquals("task1", nodeIds.get(0)); String pathId = BPMEngineRegistry.createGlobalId(ActivitiConstants.ENGINE_ID, procId); WorkflowPath path = workflowEngine.signal(pathId, null); assertEquals(pathId, path.getId()); assertEquals("task2", path.getNode().getName()); assertEquals(pathId, path.getInstance().getId()); assertTrue(path.isActive()); nodeIds = runtime.getActiveActivityIds(procId); assertEquals(1, nodeIds.size()); assertEquals("task2", nodeIds.get(0)); // Should end the WorkflowInstance path = workflowEngine.signal(pathId, null); assertEquals(pathId, path.getId()); assertNull(path.getNode()); assertEquals(pathId, path.getInstance().getId()); assertFalse(path.isActive()); }
private WorkflowTaskDefinition makeTaskDefinition(WorkflowTransition... transitions) { String id = "DefinitionId"; TypeDefinition metadata = makeTypeDef(); WorkflowNode node = new WorkflowNode("", "", "", "", true, transitions); return new WorkflowTaskDefinition(id, node, metadata); }
/** * Get the available transition ids. * * @return ScriptableHashMap */ public ScriptableHashMap<String, String> getTransitions() { ScriptableHashMap<String, String> transitions = new ScriptableHashMap<String, String>(); WorkflowNode workflowNode = task.getPath().getNode(); if (workflowNode != null) { for (WorkflowTransition transition : workflowNode.getTransitions()) { transitions.put(transition.getId(), transition.getTitle()); } } return transitions; }
@Test public void testGetDefinitionById() throws Exception { WorkflowDefinition definition = deployTestTaskDefinition(); WorkflowDefinition result = workflowEngine.getDefinitionById(definition.getId()); assertNotNull("The workflow definition was not found!", result); assertEquals(definition.getId(), result.getId()); assertEquals(definition.getDescription(), result.getDescription()); assertEquals(definition.getName(), result.getName()); assertEquals(definition.getTitle(), result.getTitle()); assertEquals(definition.getVersion(), result.getVersion()); WorkflowTaskDefinition resultStartDef = result.getStartTaskDefinition(); assertNotNull("Start task is null!", resultStartDef); WorkflowTaskDefinition originalStartDef = definition.getStartTaskDefinition(); assertEquals("Start task Id does not match!", originalStartDef.getId(), resultStartDef.getId()); WorkflowNode resultNode = resultStartDef.getNode(); assertNotNull("Start Task Node is null!", resultNode); assertEquals("Start Task Node Name does not match!", originalStartDef.getNode().getName(), resultNode.getName()); TypeDefinition metaData = resultStartDef.getMetadata(); assertNotNull("Start Task Metadata is null!", metaData); assertEquals("Start Task Metadata name does not match!", originalStartDef.getMetadata().getName(), metaData.getName()); workflowEngine.undeployDefinition(definition.getId()); WorkflowDefinition nullResult = workflowEngine.getDefinitionById(definition.getId()); assertNull("The workflow definition was found but should be null!", nullResult); }
private WorkflowTaskDefinition makeTaskDefinition() { String id = "foo$startTaskDefId"; TypeDefinition metadata = makeTypeDef(); WorkflowNode node = new WorkflowNode("", "", "", "", false); return new WorkflowTaskDefinition(id, node, metadata); }
/** * Get the available transition ids. * * @return ScriptableHashMap */ public ScriptableHashMap<String, String> getTransitions() { ScriptableHashMap<String, String> transitions = new ScriptableHashMap<String, String>(); WorkflowNode workflowNode = task.getPath().getNode(); if (workflowNode != null) { for (WorkflowTransition transition : workflowNode.getTransitions()) { transitions.put(transition.getId(), transition.getTitle()); } } return transitions; }
String nodeName = node.getName();
private WorkflowTask makeTask(WorkflowTransition... transitions) { String id = TASK_ID; String title = "Test"; WorkflowTaskState state = WorkflowTaskState.IN_PROGRESS; WorkflowTaskDefinition taskDef = makeTaskDefinition(transitions); Map<QName, Serializable> properties = makeTaskProperties(); WorkflowDefinition definition = new WorkflowDefinition("42", "Test", "1.0", "Test", "Test", null); NodeRef wfPackage = PCKG_NODE; WorkflowInstance instance = new WorkflowInstance(null, definition, null, null, wfPackage, null, true, null, null); WorkflowNode node = new WorkflowNode("", "", "", "", true, new WorkflowTransition[0]); WorkflowPath path = new WorkflowPath(null, instance, node, true); return new WorkflowTask(id, taskDef, null, title, null, state, path, properties); }