org.apache.myfaces.trinidad.context
Class PageFlowScopeProvider

java.lang.Object
  extended by org.apache.myfaces.trinidad.context.PageFlowScopeProvider

public abstract class PageFlowScopeProvider
extends Object

Abstract implementation for code that provides page flow scopes; this may be overridden.

To override this, provide a file on the classpath at /META-INF/services/org.apache.myfaces.trinidad.context.PageFlowScopeProvider with the name of the alternative implementation. (There's no current support for decoration, and this general approach may be revisited in the future.)


Constructor Summary
protected PageFlowScopeProvider()
           
 
Method Summary
abstract  String encodeCurrentPageFlowScopeURL(javax.faces.context.FacesContext context, String url)
          Encode the page flow scope into the current URL for processing in later requests.
abstract  Map<String,Object> getPageFlowScope(javax.faces.context.FacesContext context)
          Returns the current PageFlowScope, including any calls to pushPageFlowScope() or popPageFlowScope().
abstract  Map<String,Object> popPageFlowScope(javax.faces.context.FacesContext context, boolean discardScope)
          Pushes a new process scope onto the stack.
abstract  Map<String,Object> pushPageFlowScope(javax.faces.context.FacesContext context, boolean copyParent)
          Pushes a new process scope onto the stack.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PageFlowScopeProvider

protected PageFlowScopeProvider()
Method Detail

getPageFlowScope

public abstract Map<String,Object> getPageFlowScope(javax.faces.context.FacesContext context)
Returns the current PageFlowScope, including any calls to pushPageFlowScope() or popPageFlowScope().

Parameters:
context - the current FacesContext

pushPageFlowScope

public abstract Map<String,Object> pushPageFlowScope(javax.faces.context.FacesContext context,
                                                     boolean copyParent)
Pushes a new process scope onto the stack.

Parameters:
context - the current FacesContext
copyParent - if true, all values from the parent process scope will be copied into the new process scope.
Returns:
the new scope

popPageFlowScope

public abstract Map<String,Object> popPageFlowScope(javax.faces.context.FacesContext context,
                                                    boolean discardScope)
Pushes a new process scope onto the stack.

Parameters:
context - the current FacesContext
discardScope - if true, the scope will be immediately destroyed. if false, the scope may be available (for back button use, for example), but this is at the discretion of the implementation, which may aggressively destroy page flow scopes in some circumstances.

encodeCurrentPageFlowScopeURL

public abstract String encodeCurrentPageFlowScopeURL(javax.faces.context.FacesContext context,
                                                     String url)
Encode the page flow scope into the current URL for processing in later requests.

Parameters:
context - the current FacesContext
url - an URL (which may already contain query parameters)


Copyright © 2001-2012 The Apache Software Foundation. All Rights Reserved.