/** * @return a deep copy of the workflow instance * Note: This does not copy the following fields: * <ul> * <li>endTime</li> * <li>taskToDomain</li> * <li>failedReferenceTaskNames</li> * <li>externalInputPayloadStoragePath</li> * <li>externalOutputPayloadStoragePath</li> * </ul> */ public Workflow copy() { Workflow copy = new Workflow(); copy.setInput(input); copy.setOutput(output); copy.setStatus(status); copy.setWorkflowId(workflowId); copy.setParentWorkflowId(parentWorkflowId); copy.setParentWorkflowTaskId(parentWorkflowTaskId); copy.setReRunFromWorkflowId(reRunFromWorkflowId); copy.setCorrelationId(correlationId); copy.setEvent(event); copy.setReasonForIncompletion(reasonForIncompletion); copy.setWorkflowDefinition(workflowDefinition); copy.setTasks(tasks.stream() .map(Task::copy) .collect(Collectors.toList())); return copy; }
workflow.setInput(workflowInput);
inputMap.put( pair.getKey(), fromProto( pair.getValue() ) ); to.setInput(inputMap); Map<String, Object> outputMap = new HashMap<String, Object>(); for (Map.Entry<String, Value> pair : from.getOutputMap().entrySet()) {
workflowInstance.setInput(workflowInputParams); workflowInstance.setExternalInputPayloadStoragePath(null);
@Test public void getEvaluatedCaseValue() { WorkflowTask decisionTask = new WorkflowTask(); decisionTask.setType(TaskType.DECISION.name()); decisionTask.setName("Decision"); decisionTask.setTaskReferenceName("decisionTask"); decisionTask.setInputParameters(ip1); decisionTask.setDefaultCase(Arrays.asList(task1)); decisionTask.setCaseValueParam("case"); Map<String, List<WorkflowTask>> decisionCases = new HashMap<>(); decisionCases.put("0", Arrays.asList(task2)); decisionCases.put("1", Arrays.asList(task3)); decisionTask.setDecisionCases(decisionCases); Workflow workflowInstance = new Workflow(); workflowInstance.setWorkflowDefinition(new WorkflowDef()); Map<String, Object> workflowInput = new HashMap<>(); workflowInput.put("p1", "workflow.input.param1"); workflowInput.put("p2", "workflow.input.param2"); workflowInput.put("case", "0"); workflowInstance.setInput(workflowInput); Map<String, Object> input = parametersUtils.getTaskInput(decisionTask.getInputParameters(), workflowInstance, null, null); assertEquals("0", decisionTaskMapper.getEvaluatedCaseValue(decisionTask, input)); }
Map<String, Object> workflowInput = new HashMap<>(); workflowInput.put("Id", "22"); workflowInstance.setInput(workflowInput);
Map<String, Object> workflowInput = new HashMap<>(); workflowInput.put(".Id", "22"); workflowInstance.setInput(workflowInput);
Map<String, Object> workflowInput = new HashMap<>(); workflowInput.put("Id", "22"); workflowInstance.setInput(workflowInput);
input.put("param1", "param1 value"); input.put("param2", 100); workflow.setInput(input);
break; case WORKFLOW_INPUT: ((Workflow) entity).setInput(null); ((Workflow) entity).setExternalInputPayloadStoragePath(uploadHelper(payloadBytes, payloadSize, PayloadType.WORKFLOW_INPUT)); Monitors.recordExternalPayloadStorageUsage(((Workflow) entity).getWorkflowType(), ExternalPayloadStorage.Operation.WRITE.toString(), PayloadType.WORKFLOW_INPUT.toString());
@Test public void testWorkflowCRUD() { String workflowId = IDGenerator.generate(); Workflow workflow = new Workflow(); workflow.setWorkflowId(workflowId); workflow.setInput(new HashMap<>()); workflow.setStatus(Workflow.WorkflowStatus.RUNNING); // create a new workflow in the datastore String id = executionDAO.createWorkflow(workflow); assertEquals(workflowId, id); // read the workflow from the datastore Workflow found = executionDAO.getWorkflow(workflowId); assertEquals(workflow, found); // update the workflow workflow.setStatus(Workflow.WorkflowStatus.COMPLETED); executionDAO.updateWorkflow(workflow); found = executionDAO.getWorkflow(workflowId); assertEquals(workflow, found); // remove the workflow from datastore boolean removed = executionDAO.removeWorkflow(workflowId); assertTrue(removed); // read workflow again workflow = executionDAO.getWorkflow(workflowId, true); assertNull(workflow); }
workflow.setInput(input); workflow.setEvent(event); workflow.setTaskToDomain(taskToDomain);
workflow.setCorrelationId(correlationId); workflow.setWorkflowDefinition(workflowDefinition); workflow.setInput(workflowInput); workflow.setExternalInputPayloadStoragePath(externalInputPayloadStoragePath); workflow.setStatus(WorkflowStatus.RUNNING);
workflow.setInput(new HashMap<>()); workflow.setStatus(Workflow.WorkflowStatus.RUNNING);
/** * @return a deep copy of the workflow instance * Note: This does not copy the following fields: * <ul> * <li>endTime</li> * <li>taskToDomain</li> * <li>failedReferenceTaskNames</li> * <li>externalInputPayloadStoragePath</li> * <li>externalOutputPayloadStoragePath</li> * </ul> */ public Workflow copy() { Workflow copy = new Workflow(); copy.setInput(input); copy.setOutput(output); copy.setStatus(status); copy.setWorkflowId(workflowId); copy.setParentWorkflowId(parentWorkflowId); copy.setParentWorkflowTaskId(parentWorkflowTaskId); copy.setReRunFromWorkflowId(reRunFromWorkflowId); copy.setCorrelationId(correlationId); copy.setEvent(event); copy.setReasonForIncompletion(reasonForIncompletion); copy.setWorkflowDefinition(workflowDefinition); copy.setTasks(tasks.stream() .map(Task::copy) .collect(Collectors.toList())); return copy; }
inputMap.put( pair.getKey(), fromProto( pair.getValue() ) ); to.setInput(inputMap); Map<String, Object> outputMap = new HashMap<String, Object>(); for (Map.Entry<String, Value> pair : from.getOutputMap().entrySet()) {
workflowInstance.setInput(workflowInputParams); workflowInstance.setExternalInputPayloadStoragePath(null);
break; case WORKFLOW_INPUT: ((Workflow) entity).setInput(null); ((Workflow) entity).setExternalInputPayloadStoragePath(uploadHelper(payloadBytes, payloadSize, PayloadType.WORKFLOW_INPUT)); Monitors.recordExternalPayloadStorageUsage(((Workflow) entity).getWorkflowType(), ExternalPayloadStorage.Operation.WRITE.toString(), PayloadType.WORKFLOW_INPUT.toString());