Interface ILoopStatementMustLoopValidating<TData>
-
- Type Parameters:
TData
- Type of the node's properties model.
- All Superinterfaces:
ICustomParametersUpdateable
,IElementHandler<TData,WorkflowNode>
,IExecutionResultDescriptor
,INodeHandler<TData>
,IRefinedExecutionResultDescriptor<TData>
,IResourceBundleLocator
,IWorkflowElementTypeProviding
,IWorkflowNodeFlowAnalyzer<TData>
,IWorkflowNodeTypeProviding
- All Known Implementing Classes:
FcDoUntilLoopHandler
,FcForEachLoopHandler
,FcWhileLoopHandler
public interface ILoopStatementMustLoopValidating<TData> extends INodeHandler<TData>
Mixin with an implementation ofvalidateGlobal
fornode handlers
that implement some kind of loop and wish to enforce that a loop is actually possible. Validates the the loop body can complete normally or at least abruptly by issuing a continue statement that targets the loop. Otherwise, it is guaranteed that the loop body is never executed more than once.- Since:
- 8.2.0
- Author:
- XIMA MEDIA GmbH
- See Also:
IExecutingLikePreTestLoopNode
,IExecutingLikePostTestLoopNode
-
-
Field Summary
-
Fields inherited from interface de.xima.fc.interfaces.workflow.elements.IElementHandler
CURRENT_HANDLER_VERSION
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description int
getLoopBodyChildIndex()
default void
validateGlobal(IElementGlobalValidationParams<TData,WorkflowNode> params)
Similar tovalidateLocal
, but performs validations that require knowledge about other workflow elements.-
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, validateLocal, 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
-
getLoopBodyChildIndex
int getLoopBodyChildIndex()
- Returns:
- Index of the child representing the loop body.
-
validateGlobal
default void validateGlobal(IElementGlobalValidationParams<TData,WorkflowNode> params) throws WorkflowValidationException
Description copied from interface:IElementHandler
Similar tovalidateLocal
, but performs validations that require knowledge about other workflow elements. As such, this method is given access to the entireWorkflowProcess
and the list of all workflow elements of the process. This method is then responsible for iterating over all applicable workflow elements, using methods such asgetTriggersByType
orgetNodesByType
, and adding the appropriate validation failures viaaddGlobalValidationMessage
andmarkGlobalValidationFailed
.- Specified by:
validateGlobal
in interfaceIElementHandler<TData,WorkflowNode>
- Parameters:
params
- The workflow task and all workflow elements to validate.- 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.
-
-