protected Delegation readAssignmentDelegation(Element assignmentElement) { Delegation assignmentDelegation = new Delegation(); assignmentDelegation.setProcessDefinition(processDefinition); String expression = assignmentElement.attributeValue("expression"); if (expression != null) { // read assigment expression Element config = DocumentHelper.createElement("expression"); config.setText(expression); assignmentDelegation.setClassName("org.jbpm.identity.assignment.ExpressionAssignmentHandler"); assignmentDelegation.setConfiguration(writeElement(config)); } else { String actorId = assignmentElement.attributeValue("actor-id"); String pooledActors = assignmentElement.attributeValue("pooled-actors"); if (actorId != null || pooledActors != null) { // read assignment actors Element config = DocumentHelper.createElement("configuration"); if (actorId != null) config.addElement("actorId").setText(actorId); if (pooledActors != null) config.addElement("pooledActors").setText(pooledActors); assignmentDelegation.setClassName("org.jbpm.taskmgmt.assignment.ActorAssignmentHandler"); assignmentDelegation.setConfiguration(writeElementContent(config)); } else { // parse custom assignment handler assignmentDelegation.read(assignmentElement, this); } } return assignmentDelegation; }
protected Delegation readAssignmentDelegation(Element assignmentElement) { Delegation assignmentDelegation = new Delegation(); assignmentDelegation.setProcessDefinition(processDefinition); String expression = assignmentElement.attributeValue("expression"); if (expression != null) { // read assigment expression Element config = DocumentHelper.createElement("expression"); config.setText(expression); assignmentDelegation.setClassName("org.jbpm.identity.assignment.ExpressionAssignmentHandler"); assignmentDelegation.setConfiguration(writeElement(config)); } else { String actorId = assignmentElement.attributeValue("actor-id"); String pooledActors = assignmentElement.attributeValue("pooled-actors"); if (actorId != null || pooledActors != null) { // read assignment actors Element config = DocumentHelper.createElement("configuration"); if (actorId != null) config.addElement("actorId").setText(actorId); if (pooledActors != null) config.addElement("pooledActors").setText(pooledActors); assignmentDelegation.setClassName("org.jbpm.taskmgmt.assignment.ActorAssignmentHandler"); assignmentDelegation.setConfiguration(writeElementContent(config)); } else { // parse custom assignment handler assignmentDelegation.read(assignmentElement, this); } } return assignmentDelegation; }