ModPerl::Global -- Perl API for manipulating special Perl lists
use ModPerl::Global (); my $package = 'MyApache2::Package'; # make the END blocks of this package special ModPerl::Global::special_list_register(END => $package); # Execute all encoutered END blocks from this package now ModPerl::Global::special_list_call( END => $package); # delete the list of END blocks ModPerl::Global::special_list_clear( END => $package);
ModPerl::Global provides an API to manipulate special perl lists. At the moment only the END blocks list is supported.
ModPerl::Global
END
This API allows you to change the normal Perl behavior, and execute special lists when you need to.
For example ModPerl::RegistryCooker uses it to run END blocks in the scripts at the end of each request.
ModPerl::RegistryCooker
Before loading a module containing package $package, you need to register it, so the special blocks will be intercepted by mod_perl and not given to Perl. special_list_register does that. Later on when you want to execute the special blocks, special_list_call should be called. Unless you want to call the list more than once, clear the list with special_list_clear.
$package
special_list_register
special_list_call
special_list_clear
ModPerl::Global provides the following methods:
Call the special list
$ok = special_list_call($key => $package);
$key
The name of the special list. At the moment only 'END' is supported.
'END'
what package to special list is for
$ok
true value if $key is known, false otherwise.
Clear the special list
$ok = special_list_clear($key => $package);
Register the special list
Notice that you need to register the package before it is loaded. If you register it after, Perl has already compiled the END blocks and there are no longer under your control.
mod_perl 2.0 documentation.
mod_perl 2.0 and its core modules are copyrighted under The Apache Software License, Version 2.0.
The mod_perl development team and numerous contributors.
To install mod_perl2, copy and paste the appropriate command in to your terminal.
cpanm
cpanm mod_perl2
CPAN shell
perl -MCPAN -e shell install mod_perl2
For more information on module installation, please visit the detailed CPAN module installation guide.