File Coverage

blib/lib/Apache/Session/File.pm
Criterion Covered Total %
statement 33 33 100.0
branch n/a
condition n/a
subroutine 9 9 100.0
pod 0 1 0.0
total 42 43 97.6


line stmt bran cond sub pod time code
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 1     1   1547 use strict;
  1         2  
  1         32  
13 1     1   5 use vars qw(@ISA $VERSION);
  1         2  
  1         65  
14            
15             $VERSION = '1.54';
16             @ISA = qw(Apache::Session);
17            
18 1     1   576 use Apache::Session;
  1         2  
  1         32  
19 1     1   457 use Apache::Session::Lock::File;
  1         3  
  1         44  
20 1     1   470 use Apache::Session::Store::File;
  1         2  
  1         34  
21 1     1   478 use Apache::Session::Generate::MD5;
  1         2  
  1         32  
22 1     1   435 use Apache::Session::Serialize::Storable;
  1         2  
  1         151  
23            
24             sub populate {
25 3     3 0 5 my $self = shift;
26            
27 3         15 $self->{object_store} = Apache::Session::Store::File->new($self);
28 3         16 $self->{lock_manager} = Apache::Session::Lock::File->new($self);
29 3         7 $self->{generate} = \&Apache::Session::Generate::MD5::generate;
30 3         7 $self->{validate} = \&Apache::Session::Generate::MD5::validate;
31 3         4 $self->{serialize} = \&Apache::Session::Serialize::Storable::serialize;
32 3         6 $self->{unserialize} = \&Apache::Session::Serialize::Storable::unserialize;
33            
34 3         6 return $self;
35             }
36            
37             sub DESTROY {
38 3     3   19 my $self = shift;
39            
40 3         9 $self->save;
41 3         11 $self->{object_store}->close;
42 3         15 $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 .
74            
75             =head1 SEE ALSO
76            
77             L, L,
78             L, L, L