oracular (3) Apache::Singleton.3pm.gz

Provided by: libapache-singleton-perl_0.17-2_all bug

NAME

       Apache::Singleton - Singleton class for mod_perl

VERSION

       version 0.17

SYNOPSIS

         package Printer;
         # default:
         #   Request for mod_perl env
         #   Process for non-mod_perl env
         use base qw(Apache::Singleton);

         package Printer::PerRequest;
         use base qw(Apache::Singleton::Request);

         package Printer::PerProcess;
         use base qw(Apache::Singleton::Process);

DESCRIPTION

       Apache::Singleton works the same as Class::Singleton, but with various object lifetime (scope). See
       Class::Singleton first.

OBJECT LIFETIME

       By inheriting one of the following sublasses of Apache::Singleton, you can change the scope of your
       object.

       Request
             use base qw(Apache::Singleton::Request);

           One instance for one request. Apache::Singleton will remove instance on each request. Implemented
           using mod_perl "pnotes" API. In mod_perl environment (where $ENV{MOD_PERL} is defined), this is the
           default scope, so inheriting from Apache::Singleton would do the same effect.

           NOTE: You need "PerlOptions +GlobalRequest" in your apache configuration in order to use the Request
           lifetime method.

       Process
             use base qw(Apache::Singleton::Process);

           One instance for one httpd process. Implemented using package global. In non-mod_perl environment,
           this is the default scope, and you may notice this is the same beaviour with Class::Singleton ;)

           So you can use this module safely under non-mod_perl environment.

CREDITS

       Original idea by Matt Sergeant <matt@sergeant.org> and Perrin Harkins <perrin@elem.com>.

       Initial implementation and versions 0.01 to 0.07 by Tatsuhiko Miyagawa <miyagawa@bulknews.net>.

SEE ALSO

       Apache::Singleton::Request, Apache::Singleton::Process, Class::Singleton

SOURCE

       The development version is on github at <https://github.com/mschout/apache-singleton> and may be cloned
       from <git://github.com/mschout/apache-singleton.git>

BUGS

       Please report any bugs or feature requests to bug-apache-singleton@rt.cpan.org or through the web
       interface at:
        http://rt.cpan.org/Public/Dist/Display.html?Name=Apache-Singleton

AUTHOR

       Michael Schout <mschout@cpan.org>

       This software is copyright (c) 2009 by Michael Schout.

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