task.setCandidateGroups(getValueAsList(PROPERTY_USERTASK_CANDIDATE_GROUPS, assignmentDefNode)); if (StringUtils.isNotEmpty(task.getAssignee()) && !"$INITIATOR".equalsIgnoreCase(task.getAssignee())) { } else if (StringUtils.isNotEmpty(task.getAssignee()) && "$INITIATOR".equalsIgnoreCase(task.getAssignee())) { addInitiatorCanCompleteExtensionElement(true, task);
@Override protected ObjectNode createPropertiesNode(FlowElement flowElement, ObjectNode flowElementNode, ObjectMapper objectMapper) { UserTask userTask = (UserTask) flowElement; ObjectNode taskNameNode = objectMapper.createObjectNode(); putPropertyValue(BPMN_MODEL_VALUE, userTask.getName(), taskNameNode); putPropertyValue(DYNAMIC_VALUE, flowElementNode.path(USER_TASK_NAME), taskNameNode); ObjectNode assigneeNode = objectMapper.createObjectNode(); putPropertyValue(BPMN_MODEL_VALUE, userTask.getAssignee(), assigneeNode); putPropertyValue(DYNAMIC_VALUE, flowElementNode.path(USER_TASK_ASSIGNEE), assigneeNode); ObjectNode candidateUsersNode = objectMapper.createObjectNode(); putPropertyValue(BPMN_MODEL_VALUE, userTask.getCandidateUsers(), candidateUsersNode); putPropertyValue(DYNAMIC_VALUE, flowElementNode.path(USER_TASK_CANDIDATE_USERS), candidateUsersNode); ObjectNode candidateGroupsNode = objectMapper.createObjectNode(); putPropertyValue(BPMN_MODEL_VALUE, userTask.getCandidateGroups(), candidateGroupsNode); putPropertyValue(DYNAMIC_VALUE, flowElementNode.path(USER_TASK_CANDIDATE_GROUPS), candidateGroupsNode); ObjectNode propertiesNode = objectMapper.createObjectNode(); propertiesNode.set(USER_TASK_NAME, taskNameNode); propertiesNode.set(USER_TASK_ASSIGNEE, assigneeNode); propertiesNode.set(USER_TASK_CANDIDATE_USERS, candidateUsersNode); propertiesNode.set(USER_TASK_CANDIDATE_GROUPS, candidateGroupsNode); return propertiesNode; }
@Override protected ObjectNode createPropertiesNode(FlowElement flowElement, ObjectNode flowElementNode, ObjectMapper objectMapper) { UserTask userTask = (UserTask) flowElement; ObjectNode taskNameNode = objectMapper.createObjectNode(); putPropertyValue(BPMN_MODEL_VALUE, userTask.getName(), taskNameNode); putPropertyValue(DYNAMIC_VALUE, flowElementNode.path(USER_TASK_NAME), taskNameNode); ObjectNode assigneeNode = objectMapper.createObjectNode(); putPropertyValue(BPMN_MODEL_VALUE, userTask.getAssignee(), assigneeNode); putPropertyValue(DYNAMIC_VALUE, flowElementNode.path(USER_TASK_ASSIGNEE), assigneeNode); ObjectNode candidateUsersNode = objectMapper.createObjectNode(); putPropertyValue(BPMN_MODEL_VALUE, userTask.getCandidateUsers(), candidateUsersNode); putPropertyValue(DYNAMIC_VALUE, flowElementNode.path(USER_TASK_CANDIDATE_USERS), candidateUsersNode); ObjectNode candidateGroupsNode = objectMapper.createObjectNode(); putPropertyValue(BPMN_MODEL_VALUE, userTask.getCandidateGroups(), candidateGroupsNode); putPropertyValue(DYNAMIC_VALUE, flowElementNode.path(USER_TASK_CANDIDATE_GROUPS), candidateGroupsNode); ObjectNode propertiesNode = objectMapper.createObjectNode(); propertiesNode.set(USER_TASK_NAME, taskNameNode); propertiesNode.set(USER_TASK_ASSIGNEE, assigneeNode); propertiesNode.set(USER_TASK_CANDIDATE_USERS, candidateUsersNode); propertiesNode.set(USER_TASK_CANDIDATE_GROUPS, candidateGroupsNode); return propertiesNode; }
@Override protected void convertElementToJson(ObjectNode propertiesNode, BaseElement baseElement) { UserTask userTask = (UserTask) baseElement; String assignee = userTask.getAssignee(); if (StringUtils.isNotEmpty(userTask.getAssignee())) { ObjectNode assigneeNode = objectMapper.createObjectNode(); assigneeNode.put("id", userTask.getAssignee()); idmNode.set("assignee", assigneeNode); idmNode.put("type", "user");
public void setValues(UserTask otherElement) { super.setValues(otherElement); setAssignee(otherElement.getAssignee()); setOwner(otherElement.getOwner()); setFormKey(otherElement.getFormKey());
public void setValues(UserTask otherElement) { super.setValues(otherElement); setAssignee(otherElement.getAssignee()); setOwner(otherElement.getOwner()); setFormKey(otherElement.getFormKey());
protected void mapProperties(Object element) { UserTask userTask = (UserTask) element; createPropertyNode("Assignee", userTask.getAssignee()); createPropertyNode("Candidate users", userTask.getCandidateUsers()); createPropertyNode("Candidate groups", userTask.getCandidateGroups()); createPropertyNode("Due date", userTask.getDueDate()); createPropertyNode("Form key", userTask.getFormKey()); createPropertyNode("Priority", userTask.getPriority()); } }
if (StringUtils.isNotEmpty(userTask.getAssignee())) { taskDefinition.setAssigneeExpression(expressionManager.createExpression(userTask.getAssignee()));
@Override @SuppressWarnings("unchecked") protected void writeAdditionalAttributes(BaseElement element, BpmnModel model, XMLStreamWriter xtw) throws Exception { UserTask userTask = (UserTask) element; writeQualifiedAttribute(ATTRIBUTE_TASK_USER_ASSIGNEE, userTask.getAssignee(), xtw); writeQualifiedAttribute(ATTRIBUTE_TASK_USER_OWNER, userTask.getOwner(), xtw); writeQualifiedAttribute(ATTRIBUTE_TASK_USER_CANDIDATEUSERS, convertToDelimitedString(userTask.getCandidateUsers()), xtw); writeQualifiedAttribute(ATTRIBUTE_TASK_USER_CANDIDATEGROUPS, convertToDelimitedString(userTask.getCandidateGroups()), xtw); writeQualifiedAttribute(ATTRIBUTE_TASK_USER_DUEDATE, userTask.getDueDate(), xtw); writeQualifiedAttribute(ATTRIBUTE_TASK_USER_BUSINESS_CALENDAR_NAME, userTask.getBusinessCalendarName(), xtw); writeQualifiedAttribute(ATTRIBUTE_TASK_USER_CATEGORY, userTask.getCategory(), xtw); writeQualifiedAttribute(ATTRIBUTE_FORM_FORMKEY, userTask.getFormKey(), xtw); if (userTask.getPriority() != null) { writeQualifiedAttribute(ATTRIBUTE_TASK_USER_PRIORITY, userTask.getPriority(), xtw); } if (StringUtils.isNotEmpty(userTask.getExtensionId())) { writeQualifiedAttribute(ATTRIBUTE_TASK_SERVICE_EXTENSIONID, userTask.getExtensionId(), xtw); } if (userTask.getSkipExpression() != null) { writeQualifiedAttribute(ATTRIBUTE_TASK_USER_SKIP_EXPRESSION, userTask.getSkipExpression(), xtw); } // write custom attributes BpmnXMLUtil.writeCustomAttributes(userTask.getAttributes().values(), xtw, defaultElementAttributes, defaultActivityAttributes, defaultUserTaskAttributes); }
activeTaskFormKey = getActiveValue(userTask.getFormKey(), DynamicBpmnConstants.USER_TASK_FORM_KEY, taskElementProperties); activeTaskSkipExpression = getActiveValue(userTask.getSkipExpression(), DynamicBpmnConstants.TASK_SKIP_EXPRESSION, taskElementProperties); activeTaskAssignee = getActiveValue(userTask.getAssignee(), DynamicBpmnConstants.USER_TASK_ASSIGNEE, taskElementProperties); activeTaskOwner = getActiveValue(userTask.getOwner(), DynamicBpmnConstants.USER_TASK_OWNER, taskElementProperties); activeTaskCandidateUsers = getActiveValueList(userTask.getCandidateUsers(), DynamicBpmnConstants.USER_TASK_CANDIDATE_USERS, taskElementProperties); activeTaskFormKey = userTask.getFormKey(); activeTaskSkipExpression = userTask.getSkipExpression(); activeTaskAssignee = userTask.getAssignee(); activeTaskOwner = userTask.getOwner(); activeTaskCandidateUsers = userTask.getCandidateUsers();