@Override public void end(CoreSession coreSession) { followTransition(coreSession, TaskConstants.TASK_END_LIFE_CYCLE_TRANSITION); }
@Override public Date getDueDate() { return getDatePropertyValue(TaskConstants.TASK_DUE_DATE_PROPERTY_NAME); }
@Override public String getDirective() { return getPropertyValue(TaskConstants.TASK_DIRECTIVE_PROPERTY_NAME); }
@Override public Object getAdapter(DocumentModel doc, Class<?> itf) { if (doc.hasFacet(TaskConstants.TASK_FACET_NAME)) { return new TaskImpl(doc); } else { return null; } }
@Override public void setInitiator(String initiator) { setPropertyValue(TaskConstants.TASK_INITIATOR_PROPERTY_NAME, initiator); }
@Override public void setVariable(String key, String value) { List<Map<String, Serializable>> variables = getPropertyValue(TaskConstants.TASK_VARIABLES_PROPERTY_NAME); if (variables == null) { variables = new ArrayList<>(); } Map<String, Serializable> variableMap = new HashMap<>(2); variableMap.put("key", key); variableMap.put("value", value); variables.add(variableMap); setPropertyValue(TaskConstants.TASK_VARIABLES_PROPERTY_NAME, variables); }
@Override public String getVariable(String key) { Map<String, String> variables = getVariables(); return variables.get(key); }
private Task getCurrentTask(String wfName, CoreSession session, DocumentModel document) { Task currentTask = null; if (ToutaticeGlobalConst.CST_WORKFLOW_PROCESS_ONLINE.equals(wfName)) { Task task = ToutaticeWorkflowHelper.getTaskByName(ToutaticeGlobalConst.CST_WORKFLOW_TASK_ONLINE_VALIDATE, session, document); currentTask = new TaskImpl(task.getDocument()); } return currentTask; }
@Override public void setAccepted(Boolean accepted) { setPropertyValue(TaskConstants.TASK_ACCEPTED_PROPERTY_NAME, accepted); }
@Override public void addComment(String author, String text) { List<Map<String, Serializable>> existingTasks = getPropertyValue(TaskConstants.TASK_COMMENTS_PROPERTY_NAME); if (existingTasks == null) { existingTasks = new ArrayList<>(); } existingTasks.add(new TaskComment(author, text)); setPropertyValue(TaskConstants.TASK_COMMENTS_PROPERTY_NAME, existingTasks); }
for (DocumentModel doc : docs) { if (doc.hasFacet(DocumentRoutingConstants.ROUTING_TASK_FACET_NAME)) { Task task = new TaskImpl(doc); String taskType = task.getType(); Map<String, Action> taskActions = Collections.emptyMap();
@Override public void setDueDate(Date dueDate) { setPropertyValue(TaskConstants.TASK_DUE_DATE_PROPERTY_NAME, dueDate); }
@Override public String getName() { return getPropertyValue(TaskConstants.TASK_NAME_PROPERTY_NAME); }
@Override public void setVariables(Map<String, String> variables) { List<Map<String, Serializable>> variablesProperty = getPropertyValue( TaskConstants.TASK_VARIABLES_PROPERTY_NAME); if (variablesProperty == null) { variablesProperty = new ArrayList<>(); } Map<String, Serializable> variable; for (Entry<String, String> entry : variables.entrySet()) { if (entry.getValue() != null) { variable = new HashMap<>(2); variable.put("key", entry.getKey()); variable.put("value", entry.getValue()); variablesProperty.add(variable); } } setPropertyValue(TaskConstants.TASK_VARIABLES_PROPERTY_NAME, variablesProperty); }
@Override public void cancel(CoreSession coreSession) { followTransition(coreSession, TaskConstants.TASK_CANCEL_LIFE_CYCLE_TRANSITION); }
@Override public Date getCreated() { return getDatePropertyValue(TaskConstants.TASK_CREATED_PROPERTY_NAME); }
@OperationMethod() public DocumentModel run(DocumentModel document) throws Exception { Task task = ToutaticeWorkflowHelper.getTaskByName(taskName, coreSession, document); Task taskForNotif = new TaskImpl(task.getDocument()); String initiator = ToutaticeWorkflowHelper.getOnLineWorkflowInitiator(document); if(StringUtils.isNotBlank(comment)){ Principal principal = coreSession.getPrincipal(); task.addComment(principal.getName(), comment); } //FIXME: no matter if formVariable = new HashMap<String, Object>(0)? routingService.endTask(coreSession, task, new HashMap<String, Object>(0), transition); ToutaticeWorkflowHelper.notifyRecipients(coreSession, taskForNotif, document, initiator, getEvent(transition)); return document; }
@Override public void setProcessId(String processId) { setPropertyValue(TaskConstants.TASK_PROCESS_ID_PROPERTY_NAME, processId); }
@Override public List<String> getTargetDocumentsIds() { return getPropertyValue(TaskConstants.TASK_TARGET_DOCUMENTS_IDS_PROPERTY_NAME); }
routing.endTask(documentManager, new TaskImpl(doc), data, buttonId); } catch (DocumentRouteException e) {