| Beau E. Cox > MasonX-Request-WithApache2Session-0.04 > MasonX::Request::WithMulti2Session | 
| NAME  | 
MasonX::Request::WithMulti2Session - Multiple sub-sessions within one ``parent'' session
| SYNOPSIS  |  NAME | 
PerlSetVar MasonRequestClass MasonX::Request::WithMulti2Session
| DESCRIPTION  |  SYNOPSIS | 
MasonX::Request::WithMulti2Session is experimental ( beta ) and should only be used in a test environment.
MasonX::Request::WithMulti2Session is a clone of MasonX::Request::WithMultiSession changed to work under a pure mod_perl2 environment. The external interface is unchanged, see the MasonX::Request::WithMultiSession manpage.
The actual changes I made can be found in the distribution in diff/WithMultiSession.diff ( made with 'diff -Naru' ... ).
A HOWTO for MasonX::Apache2Handler and friends may be found at the Mason-with-mod_perl2 manpage.
The following documentation is from MasonX::Request::WithMultiSession.
This module subclasses MasonX::Request::WithApache2Session in order
to allow multiple ``sub-sessions'' to exist within one parent session.
This can be quite useful for a web app where you want to allow the user to open multiple windows, each with a different session, but session ids are stored in a cookie.
Like MasonX::Request::WithApache2Session, sub-sessions are shared
between a request and any subrequests it creates.
| METHODS  |  DESCRIPTION | 
This class has an interface quite similar to that of
MasonX::Request::WithApache2Session.
session()
method.  When this method is called without any parameters, the module
looks for an existing sub-session specified by the sub-session id
argument parameter (which can be in a query string or POST).  This
value can be overridden by explicitly passing a ``sub_session_id''
parameter.
If this parameter is found, an existing sub-session is returned. If this parameter is not found, a new sub-session is created.
If the session() method is called as session( clone => 1 )
then a new sub-session will be created, and its contents will be the
same as that of the current sub-session.  This is a shallow copy of
the old session hash, so objects and references are shared between
them.
If session( new => 1 ) is called, then a new, empty,
sub-session is created.
You can specify the main session id to use via the ``session_id'' parameter.
If given a ``sub_session_id'' parameter, it will set the current sub-session id.
| Parameters  |  METHODS | 
This module takes two parameters besides those inherited from
MasonX::Request::WithApache2Session:
Sub-sessions expiration is checked when the request object goes out of scope.
| USAGE  |  METHODS | 
You will need to manually set the sub-session id argument parameter
for each request.  The easiest way to do this is to make sure that all
URLs contain the sub-session id.  This can be done by using a <
<%filter >> block in a top-level autohandler (although this won't
catch redirects), or by making sure all URLs are generated by a single
component/function.
| SUPPORT  |  USAGE | 
Bug reports and requests for help should be sent <mason@beaucox.com>.
| AUTHOR  |  SUPPORT | 
Beau E. Cox <mason@beaucox.com> http://beaucox.com.
The real authors (I just made mod_perl2 changes) is Dave Rolsky, <autarch@urth.org>
Version 0.01 as of January, 2004.
| SEE ALSO  |  AUTHOR | 
My documents, including: HOWTO Run Mason with mod_perl2, MasonX::Apache2Handler, MasonX::Request::WithApache2Session.
Original Mason documents, including: HTML::Mason::ApacheHandler, MasonX::Request::WithApacheSession, MasonX::Request::WithMultiSession.
Also see the Mason documentation at http://masonhq.com/docs/manual/.
| Beau E. Cox > MasonX-Request-WithApache2Session-0.04 > MasonX::Request::WithMulti2Session |