"Fossies" - the Fresh Open Source Software Archive

Member "Apache-Session-1.93/lib/Apache/Session/File.pm" (2 Sep 2010, 2186 Bytes) of package /linux/www/Apache-Session-1.93.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) Perl source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file. For more information about "File.pm" see the Fossies "Dox" file reference documentation.

    1 #############################################################################
    2 #
    3 # Apache::Session::File
    4 # Apache persistent user sessions in the filesystem
    5 # Copyright(c) 1998, 1999, 2000 Jeffrey William Baker (jwbaker@acm.org)
    6 # Distribute under the Perl License
    7 #
    8 ############################################################################
    9 
   10 package Apache::Session::File;
   11 
   12 use strict;
   13 use vars qw(@ISA $VERSION);
   14 
   15 $VERSION = '1.54';
   16 @ISA = qw(Apache::Session);
   17 
   18 use Apache::Session;
   19 use Apache::Session::Lock::File;
   20 use Apache::Session::Store::File;
   21 use Apache::Session::Generate::MD5;
   22 use Apache::Session::Serialize::Storable;
   23 
   24 sub populate {
   25     my $self = shift;
   26 
   27     $self->{object_store} = Apache::Session::Store::File->new($self);
   28     $self->{lock_manager} = Apache::Session::Lock::File->new($self);
   29     $self->{generate}     = \&Apache::Session::Generate::MD5::generate;
   30     $self->{validate}     = \&Apache::Session::Generate::MD5::validate;
   31     $self->{serialize}    = \&Apache::Session::Serialize::Storable::serialize;
   32     $self->{unserialize}  = \&Apache::Session::Serialize::Storable::unserialize;
   33 
   34     return $self;
   35 }
   36 
   37 sub DESTROY {
   38     my $self = shift;
   39     
   40     $self->save;
   41     $self->{object_store}->close;
   42     $self->release_all_locks;
   43 }
   44 
   45 1;
   46 
   47 
   48 =pod
   49 
   50 =head1 NAME
   51 
   52 Apache::Session::File - An implementation of Apache::Session
   53 
   54 =head1 SYNOPSIS
   55 
   56  use Apache::Session::File;
   57 
   58  tie %hash, 'Apache::Session::File', $id, {
   59     Directory => '/tmp/sessions',
   60     LockDirectory   => '/var/lock/sessions',
   61  };
   62 
   63 =head1 DESCRIPTION
   64 
   65 This module is an implementation of Apache::Session.  It uses the File backing
   66 store and the File locking scheme.  You must specify the directory for the
   67 object store and the directory for locking in arguments to the constructor. See
   68 the example, and the documentation for Apache::Session::Store::File and
   69 Apache::Session::Lock::File.
   70 
   71 =head1 AUTHOR
   72 
   73 This module was written by Jeffrey William Baker <jwbaker@acm.org>.
   74 
   75 =head1 SEE ALSO
   76 
   77 L<Apache::Session::DB_File>, L<Apache::Session::Flex>,
   78 L<Apache::Session::MySQL>, L<Apache::Session::Postgres>, L<Apache::Session>