Class InjectableValidationContext
java.lang.Object
de.xima.fc.workflow.processor.logic.validation.InjectableValidationContext
- All Implemented Interfaces:
IBaseEnvironmentData
,IWorkflowValidationEnvironmentData
,IBaseWorkflowEnvironmentData
,IWorkflowLocalBeanValidationContext
,IWorkflowLocalValidationContext
,IWorkflowValidationContext
@Default
@ApplicationScoped
public class InjectableValidationContext
extends Object
implements IWorkflowLocalBeanValidationContext
A
IWorkflowLocalHandlerValidationContext
that can be injected via dependency injection. Can be used to access
the context during bean validation. Retrieves the context in several ways depending on how bean validation was
initiated.
During workflow validation via IWorkflowValidator
, the current validation context is set by the workflow
validator when validation starts and removed when it ends.
During JSF bean validation, the context is read from the workflow provider bean via the FacesContext
.
- Since:
- 7.0.0
- Author:
- XIMA MEDIA GmbH
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription<T> T
associateValue
(Object key, Function<IWorkflowLocalValidationContext, T> supplier) Associates the given value for the duration of the workflow validation process.getUser()
Deprecated.static void
setBeanValidationContext
(Class<? extends IWorkflowValidationContext> context) static void
Sets the given context for the current thread.
-
Constructor Details
-
InjectableValidationContext
public InjectableValidationContext()
-
-
Method Details
-
associateValue
Description copied from interface:IWorkflowLocalValidationContext
Associates the given value for the duration of the workflow validation process. Once validation is done, the values are discarded.- Specified by:
associateValue
in interfaceIWorkflowLocalValidationContext
- Type Parameters:
T
- Type of the associate value.- Parameters:
key
- Key for the association.supplier
- Supplier that produces the value when not yet present.- Returns:
- The associated value.
-
getClient
- Specified by:
getClient
in interfaceIBaseEnvironmentData
- Returns:
- The
Mandant
of the current context.
-
getCurrentElementKey
- Specified by:
getCurrentElementKey
in interfaceIWorkflowLocalBeanValidationContext
- Returns:
- The
ElementKey
of the current workflow node or trigger that is currently being checked in the current workflow process.null
when no such element key exists.
-
getEntityContext
- Specified by:
getEntityContext
in interfaceIBaseEnvironmentData
- Returns:
- The current entity context that may be used for database interactions.
-
getLocale
- Specified by:
getLocale
in interfaceIBaseEnvironmentData
- Returns:
- The locale to use for locale-sensitive actions.
-
getProject
- Specified by:
getProject
in interfaceIBaseWorkflowEnvironmentData
- Returns:
- The current project to which the workflow belongs.
-
getProvider
- Specified by:
getProvider
in interfaceIWorkflowValidationContext
- Returns:
- The provider for accessing various contextual data, such as a list of all users or user groups.
-
getUserModel
- Specified by:
getUserModel
in interfaceIBaseEnvironmentData
- Returns:
- The user of the active context that should be used for protocol entries etc.
-
getWorkflowVersion
- Specified by:
getWorkflowVersion
in interfaceIBaseWorkflowEnvironmentData
- Returns:
- The current workflow version that is being validated.
-
resultBuilder
- Specified by:
resultBuilder
in interfaceIWorkflowLocalValidationContext
- Returns:
- Builder for creating the result that needs to be returned by
IElementHandler#validateLocal
. This is provided for convenience, you can also create your own implementation ofIWorkflowElementValidationResult
.
-
getUser
Deprecated.UsegetUserModel()
instead.- Specified by:
getUser
in interfaceIBaseEnvironmentData
- Returns:
- The user of the active context that should be used for protocol entries etc.
-
setBeanValidationContext
- Parameters:
context
- The bean class to use when performing a bean validation via JSF. The validation context attempts to retrieve a bean of the given class from the current thread-local faces context.
-
setCurrentValidationContext
Sets the given context for the current thread. Multiple threads may call this method with different contexts. When set, this context is used. When not set, attempts to find the bean validation context for the class set bysetBeanValidationContext(Class)
.- Parameters:
context
- Validation context to use.
-
getUserModel()
instead.