mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-07-31 17:39:05 +00:00
RM-383: "When all events has occured" option doesn't work correctly
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/BRANCHES/V2.0@37273 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -546,7 +546,9 @@ public class DispositionServiceImpl implements DispositionService, RecordsManage
|
||||
|
||||
if (result == false)
|
||||
{
|
||||
// If all the events specified on the action have been completed the action is eligible
|
||||
DispositionAction da = new DispositionActionImpl(serviceRegistry, nextDa);
|
||||
boolean firstComplete = da.getDispositionActionDefinition().eligibleOnFirstCompleteEvent();
|
||||
|
||||
List<ChildAssociationRef> assocs = this.nodeService.getChildAssocs(nextDa, ASSOC_EVENT_EXECUTIONS, RegexQNamePattern.MATCH_ALL);
|
||||
for (ChildAssociationRef assoc : assocs)
|
||||
{
|
||||
@@ -557,13 +559,24 @@ public class DispositionServiceImpl implements DispositionService, RecordsManage
|
||||
{
|
||||
isComplete = isCompleteValue.booleanValue();
|
||||
|
||||
// TODO this only works for the OR use case .. need to handle optional AND handling
|
||||
// implement AND and OR combination of event completions
|
||||
if (isComplete == true)
|
||||
{
|
||||
result = true;
|
||||
if (firstComplete == true)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
result = false;
|
||||
if (firstComplete == false)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user