Skip to content

Commit

Permalink
another improvements for task page, including
Browse files Browse the repository at this point in the history
- liveSync token editor (MID-6004),
- download button for generated report for report task
- change iterative bulk -> recompute member task
- adding archetype for generated recompute member task (MID-5959)

and some refactoring + cleanup
  • Loading branch information
katkav committed Mar 8, 2020
1 parent c23b5a0 commit 4ece39b
Show file tree
Hide file tree
Showing 9 changed files with 702 additions and 311 deletions.
Expand Up @@ -689,6 +689,48 @@ public static boolean isWorkflowTask(TaskType task) {
return task != null && TaskCategory.WORKFLOW.equals(task.getCategory());
}

public static boolean isReconciliation(TaskType task) {
return isArchetypedTask(task, SystemObjectsType.ARCHETYPE_RECONCILIATION_TASK);
}

public static boolean isRecomputation(TaskType task) {
return isArchetypedTask(task, SystemObjectsType.ARCHETYPE_RECOMPUTATION_TASK);
}

public static boolean isReport(TaskType task) {
return isArchetypedTask(task, SystemObjectsType.ARCHETYPE_REPORT_TASK);
}

public static boolean isImport(TaskType task){
return isArchetypedTask(task, SystemObjectsType.ARCHETYPE_IMPORT_TASK);
}

public static boolean isLiveSync(TaskType task) {
return isArchetypedTask(task, SystemObjectsType.ARCHETYPE_LIVE_SYNC_TASK);
}

private static boolean isArchetypedTask(TaskType taskType, SystemObjectsType archetype) {
ObjectReferenceType archetypeRef = getArchetypeReference(taskType);
if (archetypeRef == null){
return false;
}
return archetype.value().equals(archetypeRef.getOid());
}

private static ObjectReferenceType getArchetypeReference(TaskType task) {
ObjectReferenceType archetypeRef = null;
if (task.getAssignment() == null || task.getAssignment().size() == 0) {
return archetypeRef;
}
for (AssignmentType assignment : task.getAssignment()) {
if (StringUtils.isNotEmpty(assignment.getTargetRef().getOid())
&& assignment.getTargetRef() != null && QNameUtil.match(assignment.getTargetRef().getType(), ArchetypeType.COMPLEX_TYPE)) {
archetypeRef = assignment.getTargetRef();
}
}
return archetypeRef;
}

public static void iterativeExecuteBulkAction(PageBase pageBase, ExecuteScriptType script, Task task, OperationResult result )
throws SchemaException, SecurityViolationException, ObjectNotFoundException, ExpressionEvaluationException,
CommunicationException, ConfigurationException{
Expand Down

0 comments on commit 4ece39b

Please sign in to comment.