Class OwnerPlugin

  • All Implemented Interfaces:
    Plugin

    public class OwnerPlugin
    extends AbstractPlugin
    This plugin implements a ownership control by evaluating the configuration of an BPMN Event element. The Plugin updates the WorkItem attribute '$owner' depending on the provided information.

    These attributes defined in Activity Entity are evaluated by the plugin:

    • keyupdateacl (Boolean): if false no changes are necessary
    • keyOwnershipFields (Vector): Properties of the current WorkItem
    • namOwnershipNames (Vector): Names & Groups to be added /replaced NOTE: Models generated with the first version of the Imixs-Workflow Modeler provide a different set of attributes. Therefore the plugin implements a fallback method to support deprecated models. The fallback method evaluate the following list of attributes defined in Activity Entity:

      • keyOwnershipMode (Vector): '1'=modify access '0'=renew access
      • keyOwnershipFields (Vector): Properties of the current WorkItem
      • namOwnershipNames (Vector): Names & Groups to be added /replaced #Issue 133: Extend access plug-in to resolve owner settings in process entity The AccessPlugin also evaluates the ACL settings in the next ProcessEntity which is supported by newer versions of the imixs-bpmn modeler.
    Version:
    1.0
    Author:
    Ralph Soika
    See Also:
    WorkflowManager
    • Constructor Detail

      • OwnerPlugin

        public OwnerPlugin()
    • Method Detail

      • run

        public ItemCollection run​(ItemCollection adocumentContext,
                                  ItemCollection adocumentActivity)
                           throws PluginException
        changes the '$owner' item depending to the activityentity or processEntity
        Parameters:
        adocumentContext - the workitem to be processed
        adocumentActivity - the workflow event containing the processing instructions
        Returns:
        updated workitem for further processing
        Throws:
        PluginException
      • mergeRoles

        public void mergeRoles​(List valueList,
                               List sourceList,
                               ItemCollection documentContext)
                        throws PluginException
        This method merges the role names from a SourceList into a valueList and removes duplicates. The AddaptText event is fired so a client can adapt a role name.
        Parameters:
        valueList -
        sourceList -
        Throws:
        PluginException