@Override public void completeWorkItem(String taskId, boolean decision, String comment, ObjectDelta additionalDelta, WorkItemEventCauseInformationType causeInformation, OperationResult parentResult) throws SecurityViolationException, SchemaException, ObjectNotFoundException, ExpressionEvaluationException, CommunicationException, ConfigurationException { workItemManager.completeWorkItem(taskId, ApprovalUtils.toUri(decision), comment, additionalDelta, causeInformation, parentResult); }
private Function<Object, Object> createOutcomeConvertor() { return (o) -> { if (o == null || o instanceof String) { return o; } else if (o instanceof ApprovalLevelOutcomeType) { return ApprovalUtils.toUri((ApprovalLevelOutcomeType) o); } else if (o instanceof QName) { return QNameUtil.qNameToUri((QName) o); } else { //throw new IllegalArgumentException("Couldn't create an URI from " + o); return o; // let someone else complain about this } }; } }
public void execute(DelegateExecution execution) { Boolean loopStagesStop = ActivitiUtil.getRequiredVariable(execution, ProcessVariableNames.LOOP_STAGES_STOP, Boolean.class, null); boolean approved = !loopStagesStop; execution.setVariable(CommonProcessVariableNames.VARIABLE_OUTCOME, ApprovalUtils.toUri(approved)); getActivitiInterface().notifyMidpointAboutProcessFinishedEvent(execution); }
private void recordAutoCompletionDecision(String taskOid, ApprovalLevelOutcomeType outcome, AutomatedCompletionReasonType reason, int stageNumber, OperationResult opResult) { StageCompletionEventType event = new StageCompletionEventType(); event.setTimestamp(XmlTypeConverter.createXMLGregorianCalendar(new Date())); event.setStageNumber(stageNumber); //event.setStageName(level.getName()); //event.setStageDisplayName(level.getDisplayName()); event.setAutomatedDecisionReason(reason); event.setOutcome(ApprovalUtils.toUri(outcome)); MidpointUtil.recordEventInTask(event, null, taskOid, opResult); }
private void executeCompleteAction(WorkItemType workItem, CompleteWorkItemActionType completeAction, OperationResult result) throws SchemaException, SecurityViolationException, ObjectNotFoundException, ExpressionEvaluationException, CommunicationException, ConfigurationException { WorkItemOutcomeType outcome = completeAction.getOutcome() != null ? ApprovalUtils.fromUri(completeAction.getOutcome()) : WorkItemOutcomeType.REJECT; workItemManager.completeWorkItem(workItem.getExternalId(), ApprovalUtils.toUri(outcome), null, null, WfContextUtil.createCause(completeAction), result); }