Task archetypes (GUI) open questions

Last modified 05 Mar 2021 18:03 +01:00
  1. How to hide extension items that are not needed for the particular archetype? E.g. resource object specification for recomputation tasks.

  2. How to show live sync token? It is currently not defined in any XSD.

  3. executeOptions vs. modelExecuteOptions

  4. Icons for all those archetypes.

  5. There is really a lot of archetypes: almost each task handler should have its own archetype because it has specific extension items to display.

    1. e.g. DeleteTask - should be archetyped as Utility even if it has objectQuery+objectType to be configured?

    2. also Jdbc Ping Task - uses quite a lot of task extension properties (but it’s rarely, if even, used)

    3. HTML reports have the same archetype as Jasper reports, resulting in irrelevant extension items displayed

    4. Also single/interactive bulk action tasks (currently use two separate archetypes)

  6. Some properties should be converted to containers: ModelExecuteOptionsType, ExecuteScriptType (might be complicated), …​

Already categorized tasks (other than Utility)

Handler class Handler URI (1) Archetype OID Category Comment

ReconciliationTaskHandler

model/synchronization/task/reconciliation/handler-3

Reconciliation task

501

Reconciliation

What about partitioned reconciliations?

RecomputeTaskHandler

model/synchronization/task/recompute/handler-3

Recomputation task

502

Recomputation

+

ImportAccountsFromResourceTaskHandler

model/synchronization/task/import/handler-3

Import task

503

ImportingAccounts

+

LiveSyncTaskHandler

model/synchronization/task/live-sync/handler-3

Live synchronization task

504

LiveSynchronization

+

AsyncUpdateTaskHandler

model/synchronization/task/async-update/handler-3

Asynchronous update task

505

AsynchronousUpdate

+

CleanUpTaskHandler

model/cleanup/handler-3

Cleanup task

506

Cleanup

Pre-4.1 task category was System (for default policies) and Util (for custom policies).

ReportJasperCreateTaskHandler

report/jasper/create/handler-3

Report task

507

Report

+

ReportHTMLCreateTaskHandler

report/html/create/handler-3

+

+

+

ScriptExecutionTaskHandler

model/scripting/handler-3

Single bulk action task

508

BulkActions

+

IterativeScriptExecutionTaskHandler

model/iterative-scripting/handler-3

Iterative bulk action task

509

BulkActions

+

AccessCertificationCampaignCreationTaskHandler

certification/task/campaign-creation/handler-3

Certification-related task



520

AccessCertification


+

AccessCertificationClosingTaskHandler

certification/task/closing/handler-3

+

AccessCertificationRemediationTaskHandler

certification/task/remediation/handler-3

+

CaseOperationExecutionTaskHandler

workflow/operation-execution/handler-3

Approval-related task

521

Workflow

+

Notes:

  1. After common prefix of "http://midpoint.evolveum.com/xml/ns/public/"

Util or System task category

These tasks share the generic archetype (Utility or System). So the respective GUI will be probably a little bit messy - see extension and other items that are relevant for these tasks.

Handler class Handler URI Extension and other configuration items Category/Archetype Iterative Comment

DeleteTaskHandler

synchronization/task/delete/handler-3

objectType, objectQuery, optionRaw

Utility

-

+

ExecuteDeltasTaskHandler

model/execute-deltas/handler-3

objectDeltas, objectDelta, executeOptions

Utility

-

+

ExecuteChangesTaskHandler

model/synchronization/task/execute/handler-3

objectDelta, executeOptions, workerThreads

?

Yes

Current category: Execute changes

JdbcPingTaskHandler

task/jdbc-ping/handler-3

tests, interval, testQuery, driverClassName, jdbcUrl, jdbcUsername, jdbcPassword, logOnInfoLevel

Utility

-

+

AuditReindexTaskHandler

model/auditReindex/handler-3

-

Utility

-

+

LightweightPartitioningTaskHandler

task/lightweight-partitioning/handler-3

workManagement/partitions

Utility

-

+

PartitioningTaskHandler

model/partitioned-focus-validity-scanner/handler-3
model/synchronization/task/partitioned-reconciliation/handler-3
task/generic-partitioning/handler-3

workManagement/partitions

Utility

-

Used e.g. as root task for partitioned reconciliation tasks.

WorkersCreationTaskHandler

task/workers-creation/handler-3

workManagement/workers

Utility

-

Used e.g. as root task for multinode recomputation/import/reconciliation tasks.

WorkersRestartTaskHandler

task/workers-restart/handler-3

-

Utility

-

+

DeleteNotUpdatedShadowTaskHandler

model/synchronization/task/delete-not-updated-shadow/handler-3

notUpdatedShadowsDuration, objectRef (resource), workerThreads

Utility

Yes

+

ShadowRefreshTaskHandler

model/shadowRefresh/handler-3

objectQuery, workerThreads, lastScanTimestamp (operational)

Utility

Yes

+

ObjectIntegrityCheckTaskHandler

model/object-integrity-check/handler-3

objectQuery, searchOptions, workerThreads

Utility

Yes

+

ShadowIntegrityCheckTaskHandler

model/shadow-integrity-check/handler-3

objectQuery, diagnose, fix, duplicateShadowsResolver, checkDuplicatesOnPrimaryIdentifiersOnly, dryRun, workerThreads

Utility

Yes

+

ReindexTaskHandler

model/reindex/handler-3

objectType, objectQuery, workerThreads

Utility

Yes

+

TriggerScannerTaskHandler

model/trigger/scanner/handler-3

lastScanTimestamp (operational), workerThreads

System

Yes

+

FocusValidityScannerTaskHandler

model/focus-validity-scanner/handler-3
model/partitioned-focus-validity-scanner/handler-3#1
model/partitioned-focus-validity-scanner/handler-3#2

lastScanTimestamp (operational), policyRule, objectType, workerThreads

System

Yes

+

Currently unused tasks

These can be safely ignored:

  • ImportObjectsFromFileTaskHandler

  • ModelOperationTaskHandler