+1 on this On Sat, Jul 17, 2010 at 12:16 AM, Blake Sullivan <[email protected]> wrote: > We currently have scopes for: > Application > Session > PageFlow > View > > I propose that we add a Map associated with each window or tab that the user > is interacting with. This would slop into the scope hierarchy between the > Session and PageFlow scopes. We would also expose the storage for the > current window on the RequestContext. If no WindowManager was exposed and > therefore there was no current Window, this Map would be the SessionMap. > > For high availability, each of the attributes stored in a Window's map would > be stored as separate attributes in the Session. > > At least initially, we would not expose this map directly through its own > top-level windowScope EL property. > > Proposed apis: > > RequestContext: > > /** > * Returns a Map of objects associated with the current window if any. If > there is no > * current window, the Session Map is returned. > * @return Map for storing objects associated with the current window. > * @see org.apache.myfaces.trinidad.context.Window#getWindowMap > */ > public Map<String, Object> getWindowMap() > > Window > > /** > * Returns the Map for storing data associated with this Window object. If > the environment is > * configured for fail-over, the contents of this Map must be Serializable. > * @return The client data storage Map. > */ > public abstract Map<String, Object> getWindowMap(); > > Since we would provide a default implementation of getWindowMap using import > org.apache.myfaces.trinidadinternal.util.SubKeyMap, we would also have to > make SubKeyMap public as well. > >
-- Matthias Wessendorf blog: http://matthiaswessendorf.wordpress.com/ sessions: http://www.slideshare.net/mwessendorf twitter: http://twitter.com/mwessendorf
