ACE-3121: Workflow Admin Console: Cannot change priority for activiti

- Handled priority property for Task
   - Determine if DelegateTask also needs similar handling

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@88373 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Ahmed Owian
2014-10-16 18:24:25 +00:00
parent b56c7be99c
commit eb0a69770d

View File

@@ -41,8 +41,31 @@ public class ActivitiPriorityPropertyHandler extends ActivitiTaskPropertyHandler
@Override
protected Object handleTaskProperty(Task task, TypeDefinition type, QName key, Serializable value)
{
checkType(key, value, Integer.class);
task.setPriority((Integer) value);
int priority = -1;
// ACE-3121: According to bpmModel.xml, priority should be an int with allowed values {1,2,3}
// It could be a String that converts to an int, like when coming from WorkflowInterpreter.java
if (value instanceof String)
{
try
{
priority = Integer.parseInt((String) value);
}
catch (NumberFormatException e)
{
return DO_NOT_ADD;
}
}
else
{
checkType(key, value, Integer.class);
priority = (Integer) value;
}
if (1 <= priority && priority <= 3)
{
task.setPriority(priority);
}
return DO_NOT_ADD;
}