Help-Site Computer Manuals
Software
Hardware
Programming
Networking
  Algorithms & Data Structures   Programming Languages   Revision Control
  Protocols
  Cameras   Computers   Displays   Keyboards & Mice   Motherboards   Networking   Printers & Scanners   Storage
  Windows   Linux & Unix   Mac

ModPerl::Global -- Perl API for manipulating special Perl lists

ModPerl::Global -- Perl API for manipulating special Perl lists


NAME

ModPerl::Global -- Perl API for manipulating special Perl lists


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);


Description

ModPerl::Global provides an API to manipulate special perl lists. At the moment only the END blocks list is supported.

This API allows you to change the normal Perl behavior, and execute special lists when you need to.

For example ModPerl::RegistryCooker|docs::2.0::api::ModPerl::RegistryCooker uses it to run END blocks in the scripts at the end of each request.

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|/C_special_list_register_ does that. Later on when you want to execute the special blocks, special_list_call|/C_special_list_call_ should be called. Unless you want to call the list more than once, clear the list with special_list_clear|/C_special_list_clear_.


API

ModPerl::Global provides the following methods:

special_list_call

Call the special list


  $ok = special_list_call($key => $package);
arg1: $key ( string )
The name of the special list. At the moment only 'END' is supported.

arg2: $package ( string )
what package to special list is for

ret: $ok ( boolean )
true value if $key is known, false otherwise.

since: 2.0.00

special_list_clear

Clear the special list


  $ok = special_list_clear($key => $package);
arg1: $key ( string )
The name of the special list. At the moment only 'END' is supported.

arg2: $package ( string )
what package to special list is for

ret: $ok ( boolean )
true value if $key is known, false otherwise.

since: 2.0.00

special_list_register

Register the special list


  $ok = special_list_call($key => $package);
arg1: $key ( string )
The name of the special list. At the moment only 'END' is supported.

arg2: $package ( string )
what package to special list is for

ret: $ok ( boolean )
true value if $key is known, false otherwise.

since: 2.0.00

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.


See Also

mod_perl 2.0 documentation.


Copyright

mod_perl 2.0 and its core modules are copyrighted under The Apache Software License, Version 2.0.


Authors

The mod_perl development team and numerous contributors.

Programminig
Wy
Wy
yW
Wy
Programming
Wy
Wy
Wy
Wy