=head1 NAME ModPerl::Global -- Perl API for manipulating special Perl lists =head1 Synopsis 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); =head1 Description C provides an API to manipulate special perl lists. At the moment only the C blocks list is supported. This API allows you to change the normal Perl behavior, and execute special lists when you need to. For example C> uses it to run C blocks in the scripts at the end of each request. Before loading a module containing package C<$package>, you need to register it, so the special blocks will be intercepted by mod_perl and not given to Perl. C> does that. Later on when you want to execute the special blocks, C> should be called. Unless you want to call the list more than once, clear the list with C>. =head1 API C provides the following methods: =head2 C Call the special list $ok = special_list_call($key => $package); =over 4 =item arg1: C<$key> ( string ) The name of the special list. At the moment only C<'END'> is supported. =item arg2: C<$package> ( string ) what package to special list is for =item ret: C<$ok> ( boolean ) true value if C<$key> is known, false otherwise. =item since: 2.0.00 =back =head2 C Clear the special list $ok = special_list_clear($key => $package); =over 4 =item arg1: C<$key> ( string ) The name of the special list. At the moment only C<'END'> is supported. =item arg2: C<$package> ( string ) what package to special list is for =item ret: C<$ok> ( boolean ) true value if C<$key> is known, false otherwise. =item since: 2.0.00 =back =head2 C Register the special list $ok = special_list_call($key => $package); =over 4 =item arg1: C<$key> ( string ) The name of the special list. At the moment only C<'END'> is supported. =item arg2: C<$package> ( string ) what package to special list is for =item ret: C<$ok> ( boolean ) true value if C<$key> is known, false otherwise. =item since: 2.0.00 =back Notice that you need to register the package before it is loaded. If you register it after, Perl has already compiled the C blocks and there are no longer under your control. =head1 See Also L. =head1 Copyright mod_perl 2.0 and its core modules are copyrighted under The Apache Software License, Version 2.0. =head1 Authors L. =cut