|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface ViewControllerManager
Route per-view lifecycle events to the correct user methods.
The name "view" is used for the resource that the user has accessed. For example with JSF either one or two views are accessed per user request; possibly a "postback" and always a "render" view. Orchestra adaptors for other UI frameworks select an interpretation of the name "view" appropriate for that framework.
Orchestra retrieves a concrete implementation of this interface and invokes it at the appropriate processing phases. Exactly what those phases are depend upon the underlying UI framework. The concrete ViewControllerManager is then responsible for determining which beans should receive callbacks (based upon the resource that the user has accessed)
Orchestra provides a default implementation of this interface; see
DefaultViewControllerManager
.
AbstractViewControllerManager
(the recommended way).
To activate your custom manager, configure it as a managed bean (preferably in
application or singleton scope), using the bean-name
org.apache.myfaces.orchestra.viewController.ViewControllerManager
(see constant VIEW_CONTROLLER_MANAGER_NAME
).
Field Summary | |
---|---|
static java.lang.String |
VIEW_CONTROLLER_MANAGER_NAME
|
Method Summary | |
---|---|
void |
assertConversationState(java.lang.String viewId)
Check whether any conversations required for the specified view currently exist. |
void |
executeInitView(java.lang.String viewId)
This method is guaranteed to be called before any other lifecycle method (ie any of the other execute* methods on this interface. |
void |
executePreProcess(java.lang.String viewId)
This method is called at most once per request for each view. |
void |
executePreRenderView(java.lang.String viewId)
This method is called just before a view is required to render its representation back to the user. |
java.lang.Object |
getViewController(java.lang.String viewId)
|
java.lang.String |
getViewControllerName(java.lang.String viewId)
|
Field Detail |
---|
static final java.lang.String VIEW_CONTROLLER_MANAGER_NAME
Method Detail |
---|
java.lang.Object getViewController(java.lang.String viewId)
java.lang.String getViewControllerName(java.lang.String viewId)
void assertConversationState(java.lang.String viewId)
TODO: Consider renaming this method. It is very Orchestra-specific, although this ViewController framework is supposed to be generic. In fact this method is really just a "validate view" hook, and one of the validations that can be hooked in here is a conversation-check.
void executeInitView(java.lang.String viewId)
For component-based frameworks, the component tree may not yet exist.
void executePreProcess(java.lang.String viewId)
For component-based frameworks, this method gets called after all components have transferred their state into associated backing beans. If validation errors have occurred within the view, then this method is not invoked.
void executePreRenderView(java.lang.String viewId)
If a view X handles a "postback" event, and then navigates to a different view Y then this callback does not occur for the controller bean for view X, but does get invoked for the controller bean for view Y.
For component-based frameworks, the component tree may not yet exist at the time this method is invoked.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |