4.2.8. Perl Method Handlers

If mod_perl was built with:

panic% perl Makefile.PL PERL_METHOD_HANDLERS=1 [ ... ]

or:

panic% perl Makefile.PL EVERYTHING=1 [ ... ]

it's possible to write method handlers in addition
to function handlers. This is useful when you want to write code that
takes advantage of inheritance. To make the handler act as a method
under mod_perl, use the $$ function prototype in
the handler definition. When mod_perl sees that the handler function
is prototyped with $$, it'll pass
two arguments to it: the calling object or a class, depending on how
it was called, and the Apache request object. So you can write the
handler as:

sub handler ($$) {
my($self, $r) = @_;
# ...
}

The configuration
is almost as usual. Just use the
class name if the default method name handler( )
is used:

PerlHandler Book::SubClass

However, if you choose to use a different method name, the
object-oriented notation should be used:

PerlHandler Book::SubClass->my_handler

The my_handler( ) method will then be called as a
class (static) method.

Also, you can use objects created at startup to call methods. For
example: