Class FlowAssembler
java.lang.Object
org.springframework.webflow.engine.builder.FlowAssembler
A director for assembling flows, delegating to a
FlowBuilder
to construct a flow. This class encapsulates the
algorithm for using a FlowBuilder to assemble a Flow properly. It acts as the director in the classic GoF builder
pattern.
Flow assemblers may be used in a standalone, programmatic fashion as follows:
FlowBuilder builder = ...; FlowBuilder context = ...; Flow flow = new FlowAssembler(builder, builderContext).assembleFlow();
- Author:
- Keith Donald, Erwin Vervaet
- See Also:
-
Constructor Summary
ConstructorDescriptionFlowAssembler
(FlowBuilder flowBuilder, FlowBuilderContext flowBuilderContext) Create a new flow assembler that will direct Flow assembly using the specified builder strategy. -
Method Summary
Modifier and TypeMethodDescriptionAssembles the flow, directing the construction process by delegating to the configured FlowBuilder.protected void
Build all parts of the flow by directing flow assembly by the flow builder.Returns the flow builder strategy used to construct the flow from its component parts.Returns the flow builder context.
-
Constructor Details
-
FlowAssembler
Create a new flow assembler that will direct Flow assembly using the specified builder strategy.- Parameters:
flowBuilder
- the builder the factory will use to build flowsflowBuilderContext
- context to influence the build process
-
-
Method Details
-
getFlowBuilder
Returns the flow builder strategy used to construct the flow from its component parts. -
getFlowBuilderContext
Returns the flow builder context.- Returns:
- flow builder context
-
assembleFlow
Assembles the flow, directing the construction process by delegating to the configured FlowBuilder. Every call to this method will assemble the Flow instance.This will drive the flow construction process as described in the
FlowBuilder
JavaDoc, starting with builder initialization usingFlowBuilder.init(FlowBuilderContext)
and finishing by cleaning up the builder with a call toFlowBuilder.dispose()
.- Returns:
- the constructed flow
- Throws:
FlowBuilderException
- when flow assembly fails
-
directAssembly
Build all parts of the flow by directing flow assembly by the flow builder.- Throws:
FlowBuilderException
- when flow assembly fails
-