String candidateGroupsExpressionLanguage = XmlUtil.attribute(element, "candidate-groups-lang");
assignableDefinition.setCandidateGroupsExpressionLanguage(candidateGroupsExpressionLanguage);
}
public TaskDefinitionImpl parseTaskDefinition(Element element, Parse parse, ScopeElementImpl scopeElement) {
TaskDefinitionImpl taskDefinition = new TaskDefinitionImpl();
String taskName = XmlUtil.attribute(element, "name");
taskDefinition.setName(taskName);
String form = XmlUtil.attribute(element, "form");
taskDefinition.setFormResourceName(form);
ProcessDefinitionImpl processDefinition = parse.contextStackFind(ProcessDefinitionImpl.class);
if (processDefinition.getTaskDefinition(taskName)!=null) {
parse.addProblem("duplicate task name "+taskName, element);
} else {
processDefinition.addTaskDefinitionImpl(taskDefinition);
}
String swimlaneName = XmlUtil.attribute(element, "swimlane");
if (swimlaneName!=null) {
JpdlProcessDefinition jpdlProcessDefinition = parse.contextStackFind(JpdlProcessDefinition.class);
SwimlaneDefinitionImpl swimlaneDefinition = jpdlProcessDefinition.getSwimlaneDefinition(swimlaneName);
if (swimlaneDefinition!=null) {
taskDefinition.setSwimlaneDefinition(swimlaneDefinition);
} else {
parse.addProblem("swimlane "+swimlaneName+" not declared", element);
}
}