NAME

Apache2::WebApp::Plugin::Session - Provides session handling methods

SYNOPSIS

my $obj = $c->plugin('Session')->method( ... );     # Apache2::WebApp::Plugin::Session->method()

  or

$c->plugin('Session')->method( ... );

DESCRIPTION

An abstract class, which can be used to manage session data across servers, from within a database, or local file using a consistent interface.

PREREQUISITES

This package is part of a larger distribution and was NOT intended to be used directly. In order for this plugin to work properly, the following packages must be installed:

Apache2::WebApp
Apache::Session
Switch

INSTALLATION

From source:

$ tar xfz Apache2-WebApp-Plugin-Session-0.X.X.tar.gz
$ perl MakeFile.PL PREFIX=~/path/to/custom/dir LIB=~/path/to/custom/lib
$ make
$ make test     <--- Make sure you do this before contacting me
$ make install

Perl one liner using CPAN.pm:

perl -MCPAN -e 'install Apache2::WebApp::Plugin::Session'

Use of CPAN.pm in interactive mode:

$> perl -MCPAN -e shell
cpan> install Apache2::WebApp::Plugin::Session
cpan> quit

Just like the manual installation of Perl modules, the user may need root access during this process to insure write permission is allowed within the installation directory.

CONFIGURATION

Unless it already exists, add the following to your projects webapp.conf

[session]
storage_type = file     # options - file | mysql | memcached

OBJECT METHODS

create

Create a new session.

my $session_id = $c->plugin('Session')->create( $c, 'login',
    {
        username => 'foo',
        password => 'bar',
    }
  );

get

Return session data as a hash reference.

my $data_ref = $c->plugin('Session')->get( $c, 'login' );

print $data_ref->{username};     # foo is the value

update

Update existing session data.

$c->plugin('Session')->update( $c, 'login',
    {
        last_login => localtime(time),
        remember   => 1,
    }
  );

delete

Delete an existing session.

$c->plugin('Session')->delete( $c, 'login' );

SEE ALSO

Apache2::WebApp, Apache2::WebApp::Plugin, Apache::Session

AUTHOR

Marc S. Brooks, <mbrooks@cpan.org> - http://mbrooks.info

COPYRIGHT

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

See http://www.perl.com/perl/misc/Artistic.html