Plack::Session::Store::File(3pm)

Plack::Session::Store::File3pm

Basic file-based session store

Usage

  use Plack::Builder;
  use Plack::Middleware::Session;
  use Plack::Session::Store::File;
  my $app = sub {
      return [ 200, [ 'Content-Type' => 'text/plain' ], [ 'Hello Foo' ] ];
  };
  builder {
      enable 'Session',
          store => Plack::Session::Store::File->new(
              dir => '/path/to/sessions'
          );
      $app;
  };
  # with custom serializer/deserializer
  builder {
      enable 'Session',
          store => Plack::Session::Store::File->new(
              dir          => '/path/to/sessions',
              # YAML takes it's args the opposite order
              serializer   => sub { YAML::DumpFile( reverse @_ ) },
              deserializer => sub { YAML::LoadFile( @_ ) },
          );
      $app;
  };

Overview

This implements a basic file based storage for session data. By default it will use Storable to serialize and deserialize the data, but this can be configured easily.

This is a subclass of Plack::Session::Store and implements its full interface.

Methods

new ( %params )

The %params can include dir, serializer and deserializer options. It will check to be sure that the dir is writeable for you.

dir

This is the directory to store the session data files in, if nothing is provided then File::Spec's tmpdir() is used to determine the system's temp dir.

serializer

This is a CODE reference that implements the serialization logic. The CODE ref gets two arguments, the $value, which is a HASH reference to be serialized, and the $file_path to save it to. It is not expected to return anything.

deserializer

This is a CODE reference that implements the deserialization logic. The CODE ref gets one argument, the $file_path to load the data from. It is expected to return a HASH reference.

Releases

7 releases since Debian 7 (Wheezy); the text changed 6 times.

  1. 7
  2. 8
  3. 9
  4. 10
  5. 11
  6. 12
  7. 13

Bugs

All complex software has bugs lurking in it, and this module is no exception. If you find a bug please either email me, or add the bug to cpan-RT.

Author

Stevan Little <[email protected]>

From libplack-middleware-session-perl 0.34-1 in Debian 13 (Trixie). Parsed by carta from the page's man source.