org.springframework.webflow.executor.support
Interface FlowExecutorArgumentExposer

All Known Implementing Classes:
FlowExecutorArgumentHandler, FlowIdMappingArgumentHandlerWrapper, RequestParameterFlowExecutorArgumentHandler, RequestPathFlowExecutorArgumentHandler

public interface FlowExecutorArgumentExposer

Helper strategy that can expose FlowExecutor method arguments in a response (view) so that subsequent requests resulting from the response can have those arguments extracted again, typically using a FlowExecutorArgumentExtractor.

Arguments can either be exposed in the model of a view that will be rendered or in a URL that will be used to trigger a new request into Spring Web Flow, for instance using a redirect.

Author:
Erwin Vervaet

Method Summary
 java.lang.String createExternalUrl(ExternalRedirect redirect, java.lang.String flowExecutionKey, ExternalContext context)
          Create a URL path that when redirected to communicates with an external system outside of Spring Web Flow.
 java.lang.String createFlowDefinitionUrl(FlowDefinitionRedirect flowDefinitionRedirect, ExternalContext context)
          Create a URL that when redirected to launches a entirely new execution of a flow definition (starts a new conversation).
 java.lang.String createFlowExecutionUrl(java.lang.String flowExecutionKey, FlowExecutionContext flowExecution, ExternalContext context)
          Create a URL path that when redirected to renders the current (or last) view selection made by the flow execution identified by the flow execution key.
 void exposeFlowExecutionContext(java.lang.String flowExecutionKey, FlowExecutionContext context, java.util.Map model)
          Expose the flow execution context and it's key in given model map.
 

Method Detail

exposeFlowExecutionContext

void exposeFlowExecutionContext(java.lang.String flowExecutionKey,
                                FlowExecutionContext context,
                                java.util.Map model)
Expose the flow execution context and it's key in given model map.

Parameters:
flowExecutionKey - the flow execution key (may be null if the conversation has ended)
context - the flow execution context
model - the model map

createFlowDefinitionUrl

java.lang.String createFlowDefinitionUrl(FlowDefinitionRedirect flowDefinitionRedirect,
                                         ExternalContext context)
Create a URL that when redirected to launches a entirely new execution of a flow definition (starts a new conversation). Used to support the restart flow and redirect to flow use cases.

Parameters:
flowDefinitionRedirect - the flow definition redirect view selection
context - the external context
Returns:
the relative flow URL path to redirect to

createFlowExecutionUrl

java.lang.String createFlowExecutionUrl(java.lang.String flowExecutionKey,
                                        FlowExecutionContext flowExecution,
                                        ExternalContext context)
Create a URL path that when redirected to renders the current (or last) view selection made by the flow execution identified by the flow execution key. Used to support the flow execution redirect use case.

Parameters:
flowExecutionKey - the flow execution key
flowExecution - the flow execution
context - the external context
Returns:
the relative conversation URL path
See Also:
FlowExecutionRedirect

createExternalUrl

java.lang.String createExternalUrl(ExternalRedirect redirect,
                                   java.lang.String flowExecutionKey,
                                   ExternalContext context)
Create a URL path that when redirected to communicates with an external system outside of Spring Web Flow.

Parameters:
redirect - the external redirect request
flowExecutionKey - the flow execution key to send through the redirect (optional)
context - the external context
Returns:
the external URL


Copyright © 2009 Spring Framework. All Rights Reserved.