~ubuntu-branches/ubuntu/utopic/libapache-session-perl/utopic

« back to all changes in this revision

Viewing changes to Session.pm

  • Committer: Bazaar Package Importer
  • Author(s): Gunnar Wolf
  • Date: 2004-10-08 17:18:42 UTC
  • mfrom: (1.1.1 upstream) (2.1.1 warty)
  • Revision ID: james.westby@ubuntu.com-20041008171842-l3tku0dlazpk3v2b
Tags: 1.60-2
* New maintainer: Package has been transferred to the Debian Perl
  group <pkg-perl-maintainers@lists.alioth.debian.org> (Closes: #274124)
* Fixed some Lintian warnings - mainly, /usr/share/doc/libapache-
  session-perl/examples/example.perl is no longer an executable, as it
  requires the user to set up many details.

Show diffs side-by-side

added added

removed removed

Lines of Context:
2
2
#
3
3
# Apache::Session
4
4
# Apache persistent user sessions
5
 
# Copyright(c) 1998, 1999, 2000, 2001 Jeffrey William Baker (jwbaker@acm.org)
 
5
# Copyright(c) 1998, 1999, 2000, 2001, 2004 Jeffrey William Baker (jwbaker@acm.org)
6
6
# Distribute under the Artistic License
7
7
#
8
8
#############################################################################
49
49
Apache::Session consists of five components: the interface, the object store,
50
50
the lock manager, the ID generator, and the serializer.  The interface is
51
51
defined in Session.pm, which is meant to be easily subclassed.  The object
52
 
store can be the filesystem, a Berkeley DB, a MySQL DB, an Oracle DB, or a
53
 
Postgres DB. Locking is done by lock files, semaphores, or the locking
54
 
capabilities of MySQL and Postgres.  Serialization is done via Storable, and
55
 
optionally  ASCII-fied via MIME or pack().  ID numbers are generated via MD5. 
56
 
The reader is encouraged to extend these capabilities to meet his own
57
 
requirements.
 
52
store can be the filesystem, a Berkeley DB, a MySQL DB, an Oracle DB, a
 
53
Postgres DB, Sybase, or Informix. Locking is done by lock files, semaphores, or
 
54
the locking capabilities of the various databases.  Serialization is done via
 
55
Storable, and optionally ASCII-fied via MIME or pack().  ID numbers are
 
56
generated via MD5.  The reader is encouraged to extend these capabilities to
 
57
meet his own requirements.
58
58
 
59
59
A derived class of Apache::Session is used to tie together the three
60
60
components.  The derived class inherits the interface from Apache::Session, and
244
244
=head1 SEE ALSO
245
245
 
246
246
Apache::Session::MySQL, Apache::Session::Postgres, Apache::Session::File,
247
 
Apache::Session::DB_File
 
247
Apache::Session::DB_File, Apache::Session::Oracle, Apache::Session::Sybase
248
248
 
249
249
The O Reilly book "Apache Modules in Perl and C", by Doug MacEachern and
250
250
Lincoln Stein, has a chapter on keeping state.
290
290
  Jules Bean <jmlb2@hermes.cam.ac.uk>
291
291
  Lincoln Stein <lstein@cshl.org>
292
292
 
 
293
Jamie LeTaul <jletual@kmtechnologies.com> fixed file locking on Windows.
 
294
 
 
295
Scott McWhirter <scott@surreytech.co.uk> contributed verbose error messages for
 
296
file locking.
 
297
 
 
298
Corris Randall <corris@line6.net> gave us the option to use any table name in
 
299
the MySQL store.
 
300
 
 
301
Oliver Maul <oliver.maul@ixos.de> updated the Sybase modules
 
302
 
 
303
Innumerable users sent a patch for the reversed file age test in the file
 
304
locking module.
 
305
 
 
306
Langen Mike <mike.langen@tamedia.ch> contributed Informix modules.
 
307
 
293
308
=cut
294
309
 
295
310
package Apache::Session;
297
312
use strict;
298
313
use vars qw($VERSION);
299
314
 
300
 
$VERSION = '1.54';
 
315
$VERSION = '1.6';
301
316
 
302
317
#State constants
303
318
#