Skip to end of metadata
Go to start of metadata

This feature is available since midPoint 3.7.

MidPoint offers an easy way of starting a task that is similar to a pre-existing one. The pre-existing task is called a template, although it is technically an ordinary task: with an exception that it is not meant to be executed directly.

An example

This is a task template that sets a description for user userName to the value of userDescription. These two parameters are expected to be present as extension values in a task that is created from this template.

Task that modifies a given user  Expand source

Note that executionStatus of this task is set to waiting, so that the task template itself will not be executed. The userName and userDescription extension items are not present: they are to be inserted into tasks created from this object. Finally, note the cleanupAfterCompletion: it says that tasks created from this template will be automatically deleted 10 minutes after their completion (i.e. switching into the CLOSED state).

Creation of a task from a template

Creation of a templated task is facilitated by two methods among midPoint functions:

The former method expects a list of prism items to be inserted into an extension of newly created task. The latter method is less general but easier to use: it expects a map of extension item name and its (real) value.

So, in our case the usage would look like this:

See also Variables in bulk actions for more information on using bulk actions with variables.

Task Cleanup

This method is likely to produce a lot of tasks that are relatively short-lived. There is a cleanup task in midPoint that deletes old closed tasks. However, the default setting may cause tasks to stay around for too long.

Therefore there is now a cleanupAfterCompletion task property that can be used for finer control over the cleanup. This property can be set explicitly to force task cleanup after a specific interval.

See Also

  • No labels