Interface IWorkflowElementRegistry<TEntity extends IWorkflowElementEntity,TElement extends IWorkflowElementTypeProviding,THandler extends IElementHandler<?,TEntity>,TPlugin extends IFCPlugin>
- Type Parameters:
TEntity- Type of the workflow element entity.TElement- Type of the generic workflow element.THandler- Type of the workflow element handler.TPlugin- Type of the plugin for the workflow element.
- All Known Subinterfaces:
IWorkflowNodeRegistry,IWorkflowTriggerRegistry
public interface IWorkflowElementRegistry<TEntity extends IWorkflowElementEntity,TElement extends IWorkflowElementTypeProviding,THandler extends IElementHandler<?,TEntity>,TPlugin extends IFCPlugin>
Registry for all workflow element handler. Each workflow element type is associated with a handler, which contains
the logic specific to that type. Provides static methods to access the available handlers, including handlers from
plugin.
- Since:
- 7.0.0
- Author:
- XIMA MEDIA GmbH
-
Method Summary
Modifier and TypeMethodDescriptiongetAllKnown(Mandant client) getHandler(Mandant client, String elementType) getHandler(Mandant client, TElement element) getHandler(Mandant client, TEntity entity) getHandlerPlugin(Mandant client, String elementType) voidregisterBuiltin(String elementType, THandler handler) Registers a workflow element handler for a built-in element type.Unregisters all built-in handler that were registered byregisterBuiltin(String, IElementHandler).unregisterBuiltin(String elementType) Unregisters a built-in handler that was registered byregisterBuiltin(String, IElementHandler).
-
Method Details
-
getAllKnown
- Parameters:
client- The current client for which to retrieve the handler. Used for resolving client-specific workflow element plugins. If you do not care about client-specific plugins, this may benull.- Returns:
- A collection of all element handlers known to the system, including built-in handler and plugin handlers.
-
getHandler
- Parameters:
client- The current client for which to retrieve the handler. Used for resolving client-specific workflow element plugins. If you do not care about client-specific plugins, this may benull.elementType- The workflow element type for which to retrieve the handler.- Returns:
- The handler for the given element type, or
nullwhen no such handler could be located by the system.
-
getHandler
- Parameters:
client- The current client for which to retrieve the handler. Used for resolving client-specific workflow element plugins. If you do not care about client-specific plugins, this may benull.element- The workflow element for which to retrieve the handler.- Returns:
- The handler for the given element, or
nullwhen no such handler could be located by the system.
-
getHandler
- Parameters:
client- The current client for which to retrieve the handler. Used for resolving client-specific workflow element plugins. If you do not care about client-specific plugins, this may benull.entity- The workflow element entity for which to retrieve the handler.- Returns:
- The handler for the given element, or
nullwhen no such handler could be located by the system.
-
getHandlerPlugin
- Parameters:
client- The current client for which to retrieve the handler. Used for resolving client-specific workflow element plugins. If you do not care about client-specific plugins, this may benull.elementType- Type of the workflow element.- Returns:
- The plugin for handling the given type of workflow element, or
nullwhen no such plugin exists.
-
registerBuiltin
Registers a workflow element handler for a built-in element type. This method should NOT be used by plugins.- Parameters:
elementType- Type of the workflow element for which to register the given handler.handler- The handler to register for the given type.
-
unregisterAllBuiltins
Collection<THandler> unregisterAllBuiltins()Unregisters all built-in handler that were registered byregisterBuiltin(String, IElementHandler).- Returns:
- All handlers that were unregistered.
-
unregisterBuiltin
Unregisters a built-in handler that was registered byregisterBuiltin(String, IElementHandler).- Parameters:
elementType- Type of the workflow element for which to deregister the handler.- Returns:
- The handler that was unregistered,
nullif none was.
-