Package de.xima.fc.workflow.mixin
Interface IBaseActionNode<TData extends BaseActionProps>
-
- Type Parameters:
TData- Type of the node's properties model.
- All Superinterfaces:
IBeanValidatingElement<TData,WorkflowNode>,IBeanValidatingNode<TData>,ICustomParametersUpdateable,IElementHandler<TData,WorkflowNode>,IExecutionResultDescriptor,IHierarchyValidatingNode<TData>,INodeHandler<TData>,IRefinedExecutionResultDescriptor<TData>,IResourceBundleLocator,IWorkflowElementTypeProviding,IWorkflowNodeFlowAnalyzer<TData>,IWorkflowNodeTypeProviding
- All Known Subinterfaces:
IPluginActionNodeHandler<TData>
- All Known Implementing Classes:
APluginActionNodeHandler,FcBreakHandler,FcChangeFormAvailabilityHandler,FcChangeFormValueHandler,FcChangeStateHandler,FcCompressAsZipHandler,FcContinueHandler,FcCopyFormRecordHandler,FcCounterHandler,FcCreateTextFileHandler,FcDecodeBase64Handler,FcDeleteAttachmentHandler,FcDeleteFormRecordHandler,FcDoiInitHandler,FcEmailHandler,FcEncodeBase64Handler,FcExportToPersistenceHandler,FcExportToXmlHandler,FcFillPdfHandler,FcFillWordHandler,FcHttpRequestHandler,FcImportFormValueFromXmlHandler,FcLdapQueryHandler,FcLogEntryHandler,FcMoveFormRecordToInboxHandler,FcProcessHistoryPdfHandler,FcProcessLogPdfHandler,FcProvideResourceHandler,FcQueueTaskHandler,FcRedirectHandler,FcRenewProcessIdHandler,FcReturnFileHandler,FcReturnHandler,FcSaveToFileSystemHandler,FcSaveToWebDavHandler,FcSendFormRecordMessageHandler,FcSetSavedFlagHandler,FcShowTemplateHandler,FcSqlStatementHandler,FcThrowExceptionHandler,FcWriteFormRecordAttrHandler
public interface IBaseActionNode<TData extends BaseActionProps> extends INodeHandler<TData>, IBeanValidatingNode<TData>
Node logic handler for actions with a properties model that inherit fromBaseActionProps. This is the closest approximation to the actions of the old workflow engine.For normal actions that do not always throw or return, consider using the mixin
IExecutingLikeActionNode.If you wish to use the default UI for actions, consider using the mixin
IDefaultClientHandlerNode.If you only wish to provide a single prototype in the drawer panel to the left of the workflow designer, consider using the mixin
ISingleBaseActionNodePrototype.- Since:
- 7.0.0
- Author:
- XIMA MEDIA GmbH
- See Also:
IExecutingLikeActionNode,ISingleBaseActionNodePrototype,IDefaultClientHandlerNode
-
-
Field Summary
-
Fields inherited from interface de.xima.fc.interfaces.workflow.elements.IElementHandler
CURRENT_HANDLER_VERSION
-
-
Method Summary
All Methods Instance Methods Default Methods Modifier and Type Method Description default booleanisValidChildCount(WorkflowNode node, int childCount)Checks whether the givennumber of childrenis allowed.default booleanisValidChildType(WorkflowNode node, int childIndex, String nodeType)Checks whether thetypeof a certainworkflow node childis allowed for that node.default booleanisValidParentType(WorkflowNode node, String nodeType)default IWorkflowElementValidationResultvalidateLocal(IElementLocalValidationParams<TData,WorkflowNode> params)Performs a local validation of the given workflow workflow element properties.-
Methods inherited from interface de.xima.fc.interfaces.workflow.mixin.IBeanValidatingElement
getValidationGroups
-
Methods inherited from interface de.xima.fc.interfaces.workflow.ICustomParametersUpdateable
updateCustomParams
-
Methods inherited from interface de.xima.fc.interfaces.workflow.elements.IElementHandler
extractDescription, extractName, extractSearchTerms, getCascadingStyleSheet, getCascadingStyleSheet, getDataModelClass, getDisplayLabel, getElementSummaryModel, getElementSummaryXhtml, getFastJsonConverter, getFilterCriteriaForEntities, getHelpPageLocation, getJavaScript, getJavaScript, getPropertiesViewXhtml, getResourceBundle, getVersion, isAvailable, isHasUserVisibleName, readEntityReferences, readPlaceholders, validateGlobal, writeEntityReferences, writePlaceholders
-
Methods inherited from interface de.xima.fc.interfaces.workflow.execution.IExecutionResultDescriptor
getAlwaysValueDescriptor, getAttachmentValueDescriptor, getCurrentAttachmentValueDescriptor, getCurrentFileValueDescriptor, getCurrentValueDescriptor, getErrorValueDescriptor, getFileValueDescriptor, getSoftErrorValueDescriptor, getSuccessValueDescriptor
-
Methods inherited from interface de.xima.fc.interfaces.workflow.nodes.INodeHandler
execute, getLocalizedTypeName, getNodePrototypes, getPropertiesBeanClass, getRelatedNodeTypes, getSupportedControlTransferTypes, isCreateProtocolEntryAfterExecution, isCreateProtocolEntryAfterExecution, isReplacePlaceholderBeforeExecution
-
Methods inherited from interface de.xima.fc.interfaces.workflow.execution.IRefinedExecutionResultDescriptor
getAlwaysValueDescriptor, getAttachmentValueDescriptor, getCurrentAttachmentValueDescriptor, getCurrentFileValueDescriptor, getCurrentValueDescriptor, getErrorValueDescriptor, getFileValueDescriptor, getSoftErrorValueDescriptor, getSuccessValueDescriptor
-
Methods inherited from interface de.xima.fc.interfaces.workflow.IWorkflowElementTypeProviding
getType
-
Methods inherited from interface de.xima.fc.interfaces.workflow.analysis.IWorkflowNodeFlowAnalyzer
createFlowGraph
-
-
-
-
Method Detail
-
isValidChildCount
default boolean isValidChildCount(WorkflowNode node, int childCount)
Description copied from interface:IHierarchyValidatingNodeChecks whether the givennumber of childrenis allowed. The default implementation enforces no restriction on the number of children.- Specified by:
isValidChildCountin interfaceIHierarchyValidatingNode<TData extends BaseActionProps>- Parameters:
node- The parent node with the children to check.childCount- The number of children of the node node.- Returns:
trueif the number of children are allowed.
-
isValidChildType
default boolean isValidChildType(WorkflowNode node, int childIndex, String nodeType)
Description copied from interface:IHierarchyValidatingNodeChecks whether thetypeof a certainworkflow node childis allowed for that node. The default implementation enforces no restriction on the child type.- Specified by:
isValidChildTypein interfaceIHierarchyValidatingNode<TData extends BaseActionProps>- Parameters:
node- The parent node with the children to check.childIndex- 0-based index of the child to check.nodeType- Node type of the child to check.- Returns:
trueif the child type is allowed.
-
isValidParentType
default boolean isValidParentType(WorkflowNode node, String nodeType)
Description copied from interface:IHierarchyValidatingNodeChecks whether thetypeof a certainparentis allowed for that node. The default implementation enforces no restriction on the parent type.- Specified by:
isValidParentTypein interfaceIHierarchyValidatingNode<TData extends BaseActionProps>- Parameters:
node- The node with the parent to check.nodeType- Node type of the parent to check. Empty string when the node does not have a parent.- Returns:
trueif the parent type is allowed.
-
validateLocal
default IWorkflowElementValidationResult validateLocal(IElementLocalValidationParams<TData,WorkflowNode> params) throws WorkflowValidationException
Description copied from interface:IElementHandlerPerforms a local validation of the given workflow workflow element properties. This method should only validate the properties of the given workflow element, without respect to any other workflow elements.This method allows you to implement custom validation logic. Consider using
IBeanValidatingElementand annotating your properties model class with the annotation from the bean annotation APIjavax.validation. This also offers the advantage that it can be integrated into JSF, allowing you to use the same validations for the UI view as well.- Specified by:
validateLocalin interfaceIBeanValidatingElement<TData extends BaseActionProps,WorkflowNode>- Specified by:
validateLocalin interfaceIBeanValidatingNode<TData extends BaseActionProps>- Specified by:
validateLocalin interfaceIElementHandler<TData extends BaseActionProps,WorkflowNode>- Specified by:
validateLocalin interfaceIHierarchyValidatingNode<TData extends BaseActionProps>- Parameters:
params- The properties to validate. Also provides access to the project, client etc.- Returns:
- The result of the validation, i.e. whether the workflow element is valid, and a list of messages to
display to the user. If this returns, this is treated as if a valid result without messages had been
returned. You may use use params.
getValidationContext().resultBuilder()to create the result, or implement the interface yourself. To indicate that the validation was performed, but no validation constraints were violated, simply callbuildon the result builder and return that, without adding any messages. - Throws:
WorkflowValidationException- When the validation could not be performed. Please note that this is meant for unexpected errors only - you should not throw an exception if a workflow element is simply just invalid.
-
-