You are viewing a plain text version of this content. The canonical link for it is here.
Posted to docs-cvs@perl.apache.org by st...@apache.org on 2004/07/05 03:40:31 UTC
cvs commit: modperl-docs/src/docs/2.0/api/Apache RequestIO.pod RequestUtil.pod ServerUtil.pod
stas 2004/07/04 18:40:31
Modified: src/docs/2.0/api/Apache RequestIO.pod RequestUtil.pod
ServerUtil.pod
Log:
work in progress
Revision Changes Path
1.6 +8 -8 modperl-docs/src/docs/2.0/api/Apache/RequestIO.pod
Index: RequestIO.pod
===================================================================
RCS file: /home/cvs/modperl-docs/src/docs/2.0/api/Apache/RequestIO.pod,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -u -r1.5 -r1.6
--- RequestIO.pod 2 Jul 2004 23:17:53 -0000 1.5
+++ RequestIO.pod 5 Jul 2004 01:40:31 -0000 1.6
@@ -55,7 +55,7 @@
=over 4
=item obj: C<$r>
-( C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>> )
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
The current request
@@ -88,7 +88,7 @@
=over 4
=item obj: C<$r>
-( C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>> )
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
=item arg1: C<@msg> ( ARRAY )
@@ -120,7 +120,7 @@
=over 4
=item obj: C<$r>
-( C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>> )
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
=item arg1: C<$format> ( string )
@@ -156,7 +156,7 @@
=over 4
=item obj: C<$r>
-( C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>> )
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
=item arg1: C<@msg> ( ARRAY )
@@ -192,7 +192,7 @@
=over 4
=item obj: C<$r>
-( C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>> )
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
=item arg1: C<$buffer> ( SCALAR )
@@ -235,7 +235,7 @@
=over 4
=item obj: C<$r>
-( C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>> )
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
=item ret: no return value
@@ -262,7 +262,7 @@
=over 4
=item obj: C<$r>
-( C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>> )
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
=item arg1: C<$filename> ( string )
@@ -316,7 +316,7 @@
=over 4
=item obj: C<$r>
-( C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>> )
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
=item arg1: C<$buffer> ( SCALAR )
1.19 +436 -288 modperl-docs/src/docs/2.0/api/Apache/RequestUtil.pod
Index: RequestUtil.pod
===================================================================
RCS file: /home/cvs/modperl-docs/src/docs/2.0/api/Apache/RequestUtil.pod,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -u -r1.18 -r1.19
--- RequestUtil.pod 23 Jun 2004 21:13:36 -0000 1.18
+++ RequestUtil.pod 5 Jul 2004 01:40:31 -0000 1.19
@@ -19,82 +19,112 @@
=head1 Description
-META: to be completed
+C<Apache::RequestUtil> provides the L<Apache request
+object|docs::2.0::api::Apache::RequestRec> utilities API.
-=head1 Class methods API
-=head2 C<request>
-Retrieve the
-(C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>>) object
-for the current request.
+=head1 API
- $r = Apache->request;
+
+
+
+=head2 C<add_config>
+
+Dynamically add Apache configuration at request processing runtime:
+
+ $r->add_config($lines);
+ $r->add_config($lines, $path);
+ $r->add_config($lines, $path, $override);
=over 4
-=item obj: C<Apache> (class name)
+=item obj: C<$r>
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
-The Apache class
+=item arg1: C<$lines> (ARRAY ref)
+
+An ARRAY reference containing configuration lines per element, without
+the new line terminators.
+
+=item opt arg2: C<$path> ( SCALAR )
-=item ret: C<$r> (C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>>)
+This argument is only useful to tell whether a command is being called
+in a dir context. By default C<$r-E<gt>filename> is passed.
+
+=item opt arg3: C<$override> ( C<L<APR::Const status
+constant|docs::2.0::api::APR::Const>> )
+
+Which allow-override bits are set
+
+Default value is:
+C<L<Apache::OR_AUTHCFG|docs::2.0::api::Apache::Const/C_Apache__OR_AUTHCFG_>>
+
+=item ret: no return value
=item since: 1.99_10
=back
-This method is only available if C<L<PerlOptions
-+GlobalRequest|docs::2.0::user::config::config/C_GlobalRequest_>> is
-in effect.
+See also:
+C<L<$s-E<gt>add_config|docs::2.0::api::Apache::ServerUtil/C_add_config_>>
+For example:
-=head1 Methods API
+ use Apache::ServerUtil ();
+ $r->add_config(['require valid-user']);
-=head2 C<default_type>
-META: Autogenerated - needs to be reviewed/completed
-Retrieve the value of the DefaultType directive, or text/plain if not set
- $ret = $r->default_type();
-=over 4
+=head2 C<as_string>
-=item obj: C<$r> (C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>>)
+Dump the request object as a string
-The current request
+ $dump = $r->as_string();
-=item ret: C<$ret> (string)
+=over 4
-The default type
+=item obj: C<$r>
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
+
+=item ret: C<$dump> ( string )
+
+=item since: 1.99_10
=back
+Dumps various request and response headers (mainly useful for
+debugging)
-=head2 C<document_root>
-META: Autogenerated - needs to be reviewed/completed
+=head2 C<default_type>
-Retrieve the document root for this server
+Retrieve the value of the DefaultType directive for the current
+request. If not set C<text/plain> is returned.
- $ret = $r->document_root();
+ $content_type = $r->default_type();
=over 4
-=item obj: C<$r> (C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>>)
+=item obj: C<$r>
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
The current request
-=item ret: C<$ret> (string)
+=item ret: C<$content_type> ( string )
-The document root
+The default type
+
+=item since: 1.99_10
=back
@@ -102,47 +132,104 @@
-=head2 C<get_limit_req_body>
-META: Autogenerated - needs to be reviewed/completed
+=head2 C<dir_config>
-Return the limit on bytes in request msg body
+C<$r-E<gt>dir_config()> provides an interface for the per-directory
+variable specified by the C<PerlSetVar> and C<PerlAddVar> directives,
+and also can be manipulated via the
+C<L<APR::Table|docs::2.0::api::APR::Table>> methods.
- $ret = $r->get_limit_req_body();
+ $table = $r->dir_config();
+ $value = $r->dir_config($key);
+ @values = $r->dir_config($key);
+ $r->dir_config($key, $val);
=over 4
-=item obj: C<$r> (C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>>)
+=item obj: C<$r>
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
-The current request
+=item opt arg2: C<$key> ( string )
-=item ret: C<$ret> (integer)
+Key string
-the maximum number of bytes in the request msg body
+=item opt arg3: C<$val> ( string )
+
+Value string
+
+=item ret: ...
+
+Depends on the passed arguments, see further discussion
+
+=item since: 1.99_10
=back
+The keys are case-insensitive.
+ $apr_table = $r->dir_config();
+dir_config() called in a scalar context without the C<$key> argument
+returns a I<HASH> reference blessed into the
+C<L<APR::Table|docs::2.0::api::APR::Table>> class. This object can be
+manipulated via the C<L<APR::Table|docs::2.0::api::APR::Table>>
+methods. For available methods see
+the C<L<APR::Table|docs::2.0::api::APR::Table>> manpage.
+ @values = $r->dir_config($key);
-=head2 C<get_server_name>
+If the C<$key> argument is passed in the list context a list of all
+matching values will be returned. This method is ineffective for big
+tables, as it does a linear search of the table. Thefore avoid using
+this way of calling dir_config() unless you know that there could be
+more than one value for the wanted key and all the values are wanted.
-META: Autogenerated - needs to be reviewed/completed
+ $value = $r->dir_config($key);
+
+If the C<$key> argument is passed in the scalar context only a single
+value will be returned. Since the table preserves the insertion order,
+if there is more than one value for the same key, the oldest value
+assosiated with the desired key is returned. Calling in the scalar
+context is also much faster, as it'll stop searching the table as soon
+as the first match happens.
+
+ $r->dir_config($key => $val);
-Get the current server name from the request
+If the C<$key> and the C<$val> arguments are used, the set() operation
+will happen: all existing values associated with the key C<$key> (and
+the key itself) will be deleted and C<$value> will be placed instead.
+
+ $r->dir_config($key => undef);
- $ret = $r->get_server_name();
+If C<$val> is I<undef> the unset() operation will happen: all existing
+values associated with the key C<$key> (and the key itself) will be
+deleted.
+
+
+
+
+
+
+
+=head2 C<document_root>
+
+Retrieve the document root for this server
+
+ $docroot = $r->document_root();
=over 4
-=item obj: C<$r> (C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>>)
+=item obj: C<$r>
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
The current request
-=item ret: C<$ret> (string)
+=item ret: C<$docroot> ( string )
-the server name
+The document root
+
+=item since: 1.99_10
=back
@@ -150,49 +237,65 @@
-=head2 C<get_server_port>
-META: Autogenerated - needs to be reviewed/completed
-Get the current server port
- $ret = $r->get_server_port();
+=head2 C<get_handlers>
+
+Returns a reference to a list of handlers enabled for a given phase.
+
+ $handlers_list = $r->get_handlers($hook_name);
=over 4
-=item obj: C<$r> (C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>>)
+=item obj: C<$r>
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
+=item arg1: C<$hook_name> ( string )
+a string representing the phase to handle (e.g. C<PerlLogHandler>)
-=item ret: C<$ret> (integer)
+=item ret: C<$handlers_list> (ref to an ARRAY of CODE refs)
+
+a list of handler subroutines CODE references
-The server's port
+=item since: 1.99_10
=back
+See also:
+C<L<$s-E<gt>add_config|docs::2.0::api::Apache::ServerUtil/C_get_handlers_>>
+For example:
+A list of handlers configured to run at the response phase:
+
+ my @handlers = @{ $r->get_handlers('PerlResponseHandler') || [] };
-=head2 C<get_status_line>
-META: Autogenerated - needs to be reviewed/completed
-Return the Status-Line for a given status code (excluding the
-HTTP-Version field). If an invalid or unknown status code is
-passed, "500 Internal Server Error" will be returned.
- $ret = get_status_line($status);
+
+
+=head2 C<get_limit_req_body>
+
+Return the limit on bytes in request msg body
+
+ $limit = $r->get_limit_req_body();
=over 4
-=item obj: C<$status> (integer)
+=item obj: C<$r>
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
-The HTTP status code
+The current request
-=item ret: C<$ret> (string)
+=item ret: C<$limit> (integer)
-The Status-Line
+the maximum number of bytes in the request msg body
+
+=item since: 1.99_10
=back
@@ -200,314 +303,392 @@
-=head2 C<is_initial_req>
-
-META: Autogenerated - needs to be reviewed/completed
+=head2 C<get_server_name>
-Determine if the current request is the main request or a sub requests
+Get the current request's server name
- $ret = $r->is_initial_req();
+ $server = $r->get_server_name();
=over 4
-=item obj: C<$r> (C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>>)
+=item obj: C<$r>
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
The current request
-=item ret: C<$ret> (integer)
+=item ret: C<$server> ( string )
+the server name
+=item since: 1.99_10
=back
+For example, consruct a hostport string:
+ use Apache::RequestUtil ();
+ my $hostport = join ':', $r->get_server_name, $r->get_server_port;
-=head2 C<method_register>
-META: Autogenerated - needs to be reviewed/completed
-Register a new request method, and return the offset that will be
-associated with that method.
+=head2 C<get_server_port>
- $ret = $p->method_register($methname);
+Get the current server port
+
+ $port = $r->get_server_port();
=over 4
-=item obj: C<$p> (C<L<APR::Pool|docs::2.0::api::APR::Pool>>)
+=item obj: C<$r>
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
-The pool to create registered method numbers from.
+The current request
-=item arg1: C<$methname> (string)
+=item ret: C<$port> ( integer )
-The name of the new method to register.
+The server's port number
-=item ret: C<$ret> (integer)
-
-Ab int value representing an offset into a bitmask.
+=item since: 1.99_10
=back
+For example, consruct a hostport string:
+ use Apache::RequestUtil ();
+ my $hostport = join ':', $r->get_server_name, $r->get_server_port;
-=head2 C<add_config>
-META: Autogenerated - needs to be reviewed/completed
- $ret = $r->add_config($lines, $path, $override);
+=head2 C<get_status_line>
+
+Return the C<Status-Line> for a given status code (excluding the
+HTTP-Version field).
+
+ $status_line = Apache::RequestUtil::get_status_line($status);
=over 4
-=item obj: C<$r> (C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>>)
+=item obj: C<$status> (integer)
-=item arg1: C<$lines> (ARRAY ref)
+The HTTP status code
-=item opt arg3: C<$path> (scalar)
+=item ret: C<$status_line> ( string )
-=item opt arg4: C<$override> (string)
+The Status-Line
-=item ret: C<$ret> (string)
+If an invalid or unknown status code is passed, C<"500 Internal Server
+Error"> will be returned.
+
+=item since: 1.99_15
=back
-See also:
-C<L<$s-E<gt>add_config|docs::2.0::api::Apache::ServerUtil/C_add_config_>>
+For example:
+ use Apache::RequestUtil ();
+ print Apache::RequestUtil::get_status_line(400);
-=head2 C<location>
+will print:
+
+ 400 Bad Request
-META: Autogenerated - needs to be reviewed/completed
- $location = $r->location($location);
+
+=head2 C<is_initial_req>
+
+Determine whether the current request is the main request or a
+sub-request
+
+ $is_initial = $r->is_initial_req();
=over 4
-=item obj: C<$r> (C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>>)
+=item obj: C<$r>
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
-=item opt arg2: C<$location> (string)
+A request or a sub-request object
-=item ret: C<$location> (integer)
+=item ret: C<$is_initial> ( true/false )
+
+If true -- it's the main request, otherwise it's a sub-request
+
+=item since: 1.99_10
=back
-=head2 C<location_merge>
-META: Autogenerated - needs to be reviewed/completed
+=head2 C<is_perl_option_enabled>
- $ret = $r->location_merge($location);
+check whether a directory level C<PerlOptions> flag is enabled or not.
+
+ $result = $r->is_perl_option_enabled($flag);
=over 4
-=item obj: C<$r> (C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>>)
+=item obj: C<$r>
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
-=item arg1: C<$location> (string)
+=item arg1: C<$flag> ( string )
-=item ret: C<$ret> (integer)
+=item ret: C<$result> ( true/false )
+
+=item since: 1.99_10
=back
+For example to check whether the C<SetupEnv> option is enabled for the
+current request (which can be disabled with C<PerlOptions -SetupEnv>)
+and populate the environment variables table if disabled:
+ $r->subprocess_env unless $r->is_perl_option_enabled('SetupEnv');
-=head2 C<pnotes>
+See also:
+L<PerlOptions|docs::2.0::user::config::config/C_PerlOptions_> and
+L<the equivalent function for server level PerlOptions
+flags|docs::2.0::api::Apache::ServerUtil/C_is_perl_option_enabled_>.
-Share Perl variables between Perl HTTP handlers
- $old_val = $r->pnotes($key => $val);
- $val = $r->pnotes($key);
- $hash_ref = $r->pnotes();
+
+
+
+=head2 C<location>
+
+Get the path of the E<lt>LocationE<gt> section from which the current
+C<Perl*Handler> is being called.
+
+ $location = $r->location();
=over 4
-=item obj: C<$r> (C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>>)
+=item obj: C<$r>
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
-=item opt arg1: C<$key> ( string )
+=item ret: C<$location> ( string )
-A key value
+=item since: 1.99_10
-=item opt arg2: C<$val> ( SCALAR )
+=back
-Any scalar value (e.g. a reference to an array)
-=item ret: (3 different possible values)
-if both, C<$key> and C<$val> are passed the previous value for C<$key>
-is returned if such existed, otherwise C<undef> is returned.
-if only C<$key> is passed, the current value for the given key is
-returned.
-if no arguments are passed, a hash reference is returned, which can
-then be directly accessed without going through the C<pnotes()>
-interface.
+
+=head2 C<location_merge>
+
+ $ret = $r->location_merge($location);
+
+=over 4
+
+=item obj: C<$r>
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
+
+=item arg1: C<$location> ( string )
+
+=item ret: C<$ret> (integer)
=item since: 1.99_10
=back
-Similar to
-(C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec/C_notes_>>),
-but values can be any Perl variables. That also means that it can be
-used only between Perl modules.
-The values get reset automatically at the end of each HTTP request.
-META: Examples (t/response/TestModperl/pnotes.pm)
-=head2 C<no_cache>
+=head2 C<method_register>
META: Autogenerated - needs to be reviewed/completed
+Register a new request method, and return the offset that will be
+associated with that method.
- $ret = $r->no_cache($flag);
+ $ret = $p->method_register($methname);
=over 4
-=item obj: C<$r> (C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>>)
+=item obj: C<$p> (C<L<APR::Pool|docs::2.0::api::APR::Pool>> )
-=item arg1: C<$flag> (number)
+The pool to create registered method numbers from.
+
+=item arg1: C<$methname> ( string )
+
+The name of the new method to register.
=item ret: C<$ret> (integer)
-=back
+An int value representing an offset into a bitmask.
+=item since: 1.99_10
+
+=back
-=head2 C<as_string>
+=head2 C<new>
META: Autogenerated - needs to be reviewed/completed
- $string = $r->as_string();
+
+ $ret = $r->new(classname, c, base_pool));
=over 4
-=item obj: C<$r> (C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>>)
+=item obj: C<$r>
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
-=item ret: C<$string> (string)
+=item arg1: C<$flag> (number)
-=back
+=item ret: C<$ret> (integer)
+=item since: 1.99_10
+=back
-=head2 C<get_handlers>
+=head2 C<no_cache>
-Returns a reference to a list of handlers enabled for
-a given phase.
+META: Autogenerated - needs to be reviewed/completed
- $handlers_list = $r->get_handlers($hook_name);
-=over 4
+ $ret = $r->no_cache($flag);
-=item obj: C<$r> (C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>>)
+=over 4
-=item arg1: C<$hook_name> (string)
+=item obj: C<$r>
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
-a string representing the phase to handle.
+=item arg1: C<$flag> (number)
-=item ret: C<@handlers> (CODE ref or ref to ARRAY of CODE refs)
+=item ret: C<$ret> (integer)
-a list of handler subroutines CODE references
+=item since: 1.99_10
=back
-For example:
-A list of handlers configured to run at the response phase:
-
- my @handlers = @{ $r->get_handlers('PerlResponseHandler') || [] };
+=head2 C<pnotes>
+Share Perl variables between Perl HTTP handlers
+ $old_val = $r->pnotes($key => $val);
+ $val = $r->pnotes($key);
+ $hash_ref = $r->pnotes();
-=head2 C<push_handlers>
+=over 4
-Add one or more handlers to a list of handlers to be called for a
-given phase.
+=item obj: C<$r>
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
- $r->push_handlers($hook_name => \&handler);
- $r->push_handlers($hook_name => ['Foo::Bar::handler', \&handler2]);
+=item opt arg1: C<$key> ( string )
-=over 4
+A key value
-=item obj: C<$r> (C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>>)
+=item opt arg2: C<$val> ( SCALAR )
-=item arg1: C<$hook_name> (string)
+Any scalar value (e.g. a reference to an array)
-a string representing the phase to handle.
+=item ret: (3 different possible values)
-=item arg2: C<$handlers> (CODE ref or SUB name or ref to an ARRAY of CODE refs)
+if both, C<$key> and C<$val> are passed the previous value for C<$key>
+is returned if such existed, otherwise C<undef> is returned.
-a single handler CODE reference or just a name of the subroutine
-(fully qualified unless defined in the current package).
+if only C<$key> is passed, the current value for the given key is
+returned.
-if more than one passed, use a reference to an array of CODE refs
-and/or subroutine names.
+if no arguments are passed, a hash reference is returned, which can
+then be directly accessed without going through the C<pnotes()>
+interface.
-=item ret: no return value
+=item since: 1.99_10
=back
-Examples:
+Similar to
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec/C_notes_>> ),
+but values can be any Perl variables. That also means that it can be
+used only between Perl modules.
-A single handler:
+The values get reset automatically at the end of each HTTP request.
- $r->push_handlers(PerlResponseHandler => \&handler);
+META: Examples (t/response/TestModperl/pnotes.pm)
-Multiple handlers:
- $r->push_handlers(PerlFixupHandler => ['Foo::Bar::handler', \&handler2]);
-Anonymous functions:
- $r->push_handlers(PerlLogHandler => sub { return Apache::OK });
+=head2 C<request>
+Retrieve the
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> ) object
+for the current request.
+ $r = Apache->request;
+=over 4
-=head2 C<set_handlers>
+=item obj: C<Apache> (class name)
-Set a list of handlers to be called for a given phase. Any previously
-set handlers are forgotten.
+The Apache class
- $r->set_handlers($hook_name => \&handler);
- $r->set_handlers($hook_name => ['Foo::Bar::handler', \&handler2]);
- $r->set_handlers($hook_name => []);
- $r->set_handlers($hook_name => undef);
+=item ret: C<$r> ( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
+
+=item since: 1.99_10
+
+=back
+
+This method is only available if C<L<PerlOptions
++GlobalRequest|docs::2.0::user::config::config/C_GlobalRequest_>> is
+in effect.
+
+
+
+
+=head2 C<push_handlers>
+
+Add one or more handlers to a list of handlers to be called for a
+given phase.
+
+ $ok = $r->push_handlers($hook_name => \&handler);
+ $ok = $r->push_handlers($hook_name => ['Foo::Bar::handler', \&handler2]);
=over 4
-=item obj: C<$r> (C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>>)
+=item obj: C<$r>
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
-=item arg1: C<$hook_name> (string)
+=item arg1: C<$hook_name> ( string )
-a string representing the phase to handle.
+the phase to add the handlers to
-=item arg2: C<$handlers> (CODE ref or SUB name or ref to an ARRAY of CODE refs)
+=item arg2: C<$handlers> ( CODE ref or SUB name or an ARRAY ref )
-a reference to a single handler CODE reference or just a name of the
-subroutine (fully qualified unless defined in the current package).
+a single handler CODE reference or just a name of the subroutine
+(fully qualified unless defined in the current package).
if more than one passed, use a reference to an array of CODE refs
and/or subroutine names.
-if the argument is C<undef> or [] the list of handlers is reset to
-zero.
+=item ret: C<$ok> ( true/false )
-=item ret: no return value
+returns a true value on success, otherwise a false value
+
+=item since: 1.99_10
+
+See also:
+C<L<$s-E<gt>add_config|docs::2.0::api::Apache::ServerUtil/C_push_handlers_>>
=back
@@ -515,23 +696,15 @@
A single handler:
- $r->set_handlers(PerlResponseHandler => \&handler);
+ $r->push_handlers(PerlResponseHandler => \&handler);
Multiple handlers:
- $r->set_handlers(PerlFixupHandler => ['Foo::Bar::handler', \&handler2]);
+ $r->push_handlers(PerlFixupHandler => ['Foo::Bar::handler', \&handler2]);
Anonymous functions:
- $r->set_handlers(PerlLogHandler => sub { return Apache::OK });
-
-Reset any previously set handlers:
-
- $r->set_handlers(PerlCleanupHandler => []);
-
-or
-
- $r->set_handlers(PerlCleanupHandler => undef);
+ $r->push_handlers(PerlLogHandler => sub { return Apache::OK });
@@ -546,148 +719,123 @@
=over 4
-=item obj: C<$r> (C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>>)
+=item obj: C<$r>
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
-=item arg1: C<$username> (string)
+=item arg1: C<$username> ( string )
-=item arg2: C<$password> (string)
+=item arg2: C<$password> ( string )
=item ret: no return value
-=back
-
-
-
+=item since: 1.99_10
+=back
-=head2 C<slurp_filename>
-META: Autogenerated - needs to be reviewed/completed
+=head2 C<set_handlers>
-Return a reference to contents of C<$r-E<gt>filename>.
+Set a list of handlers to be called for a given phase. Any previously
+set handlers are forgotten.
- $content = $r->slurp_filename($tainted);
+ $ok = $r->set_handlers($hook_name => \&handler);
+ $ok = $r->set_handlers($hook_name => ['Foo::Bar::handler', \&handler2]);
+ $ok = $r->set_handlers($hook_name => []);
+ $ok = $r->set_handlers($hook_name => undef);
=over 4
-=item obj: C<$r> (C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>>)
+=item obj: C<$r>
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
-=item arg1: C<$tainted> (number)
+=item arg1: C<$hook_name> ( string )
-By default the returned data is tainted (if run under C<-T>). If an
-optional C<$tainted> flag is set to zero, the data will be marked as
-non-tainted. Do not set this flag to zero unless you know what you are
-doing, you may create a security hole in your program if you do. For
-more information see the I<perlsec> manpage. If you wonder why this
-option is available, it is used internally by the
-C<L<ModPerl::Registry|docs::2.0::api::ModPerl::Registry>> handler and
-friends, because the CGI scripts that it reads are considered safe
-(you could just as well C<require()> them).
+the phase to set the handlers in
-=item ret: C<$content> (scalar)
+=item arg2: C<$handlers> (CODE ref or SUB name or an ARRAY ref)
-=back
-
-
-=head2 C<is_perl_option_enabled>
-
-check whether a directory level PerlOptions flag is enabled or not.
-
- $result = $r->is_perl_option_enabled($flag);
+a reference to a single handler CODE reference or just a name of the
+subroutine (fully qualified unless defined in the current package).
+if more than one passed, use a reference to an array of CODE refs
+and/or subroutine names.
-=over 4
+if the argument is C<undef> or C<[]> the list of handlers is reset to
+zero.
-=item obj: C<$r> (C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>>)
+=item ret: C<$ok> ( true/false )
-=item arg1: C<$flag> (string)
+returns a true value on success, otherwise a false value
-=item ret: C<$result> (integer)
+=item since: 1.99_10
=back
-For example to check whether the C<SetupEnv> option is enabled for the
-current request (which can be disabled with C<PerlOptions -SetupEnv>)
-and populate the environment variables table if disabled:
+See also:
+C<L<$s-E<gt>add_config|docs::2.0::api::Apache::ServerUtil/C_set_handlers_>>
- $r->subprocess_env unless $r->is_perl_option_enabled('SetupEnv');
+Examples:
-See also:
-L<PerlOptions|docs::2.0::user::config::config/C_PerlOptions_> and
-L<the equivalent function for server level PerlOptions
-flags|docs::2.0::api::Apache::ServerUtil/C_is_perl_option_enabled_>.
+A single handler:
+ $r->set_handlers(PerlResponseHandler => \&handler);
+Multiple handlers:
+ $r->set_handlers(PerlFixupHandler => ['Foo::Bar::handler', \&handler2]);
+Anonymous functions:
-=head2 C<dir_config>
+ $r->set_handlers(PerlLogHandler => sub { return Apache::OK });
-dir_config() provides an interface for the per-directory variable
-specified by the C<PerlSetVar> and C<PerlAddVar> directives, and also
-can be manipulated via the C<L<APR::Table|docs::2.0::api::APR::Table>>
-methods.
+Reset any previously set handlers:
- $table = $r->dir_config();
- $value = $r->dir_config($key);
- @values = $r->dir_config($key);
- $r->dir_config($key, $val);
+ $r->set_handlers(PerlCleanupHandler => []);
-=over 4
+or
-=item obj: C<$r> (C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>>)
+ $r->set_handlers(PerlCleanupHandler => undef);
-=item opt arg2: C<$key> (string)
-=item opt arg3: C<$val> (string)
-=item ret: C<$ret> (scalar)
-Depends on the passed arguments, see further discussion
-=back
-The keys are case-insensitive.
+=head2 C<slurp_filename>
- $apr_table = $r->dir_config();
+Return a reference to contents of C<$r-E<gt>filename>.
-dir_config() called in a scalar context without the C<$key> argument
-returns a I<HASH> reference blessed into the
-C<L<APR::Table|docs::2.0::api::APR::Table>> class. This object can be
-manipulated via the C<L<APR::Table|docs::2.0::api::APR::Table>>
-methods. For available methods see
-the C<L<APR::Table|docs::2.0::api::APR::Table>> manpage.
+ $content = $r->slurp_filename($tainted);
- @values = $r->dir_config($key);
+=over 4
-If the C<$key> argument is passed in the list context a list of all
-matching values will be returned. This method is ineffective for big
-tables, as it does a linear search of the table. Thefore avoid using
-this way of calling dir_config() unless you know that there could be
-more than one value for the wanted key and all the values are wanted.
+=item obj: C<$r>
+( C<L<Apache::RequestRec object|docs::2.0::api::Apache::RequestRec>> )
- $value = $r->dir_config($key);
+=item arg1: C<$tainted> (number)
-If the C<$key> argument is passed in the scalar context only a single
-value will be returned. Since the table preserves the insertion order,
-if there is more than one value for the same key, the oldest value
-assosiated with the desired key is returned. Calling in the scalar
-context is also much faster, as it'll stop searching the table as soon
-as the first match happens.
+If the server is run under the tainting mode (C<-T>) which we hope you
+do, by default the returned data is tainted. If an optional
+C<$tainted> flag is set to zero, the data will be marked as
+non-tainted.
+
+Do B<not> set this flag to zero unless you know what you are doing,
+you may create a security hole in your program if you do. For more
+information see the I<perlsec> manpage.
+
+If you wonder why this option is available, it is used internally by
+the C<L<ModPerl::Registry|docs::2.0::api::ModPerl::Registry>> handler
+and friends, because the CGI scripts that it reads are considered safe
+(you could just as well C<require()> them).
- $r->dir_config($key => $val);
+=item ret: C<$content> ( string )
-If the C<$key> and the C<$val> arguments are used, the set() operation
-will happen: all existing values associated with the key C<$key> (and
-the key itself) will be deleted and C<$value> will be placed instead.
+=item since: 1.99_10
- $r->dir_config($key => undef);
+=back
-If C<$val> is I<undef> the unset() operation will happen: all existing
-values associated with the key C<$key> (and the key itself) will be
-deleted.
1.21 +258 -146 modperl-docs/src/docs/2.0/api/Apache/ServerUtil.pod
Index: ServerUtil.pod
===================================================================
RCS file: /home/cvs/modperl-docs/src/docs/2.0/api/Apache/ServerUtil.pod,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -u -r1.20 -r1.21
--- ServerUtil.pod 22 May 2004 02:03:27 -0000 1.20
+++ ServerUtil.pod 5 Jul 2004 01:40:31 -0000 1.21
@@ -48,33 +48,6 @@
-
-=head2 C<add_config>
-
-META: Autogenerated - needs to be reviewed/completed
-
- $ret = $s->add_config($lines, $path, $override);
-
-=over 4
-
-=item obj: C<$r> (C<L<Apache::Server|docs::2.0::api::Apache::Server>>)
-
-=item arg1: C<$lines> (ARRAY ref)
-
-=item opt arg3: C<$path> (scalar)
-
-=item opt arg4: C<$override> (string)
-
-=item ret: C<$ret> (string)
-
-=back
-
-See also:
-C<L<$r-E<gt>add_config|docs::2.0::api::Apache::RequestUtil/C_add_config_>>
-
-
-
-
=head2 C<add_version_component>
META: Autogenerated - needs to be reviewed/completed
@@ -96,6 +69,8 @@
=item ret: no return value
+=item since: 1.99_10
+
=back
@@ -118,6 +93,8 @@
true if defined, false otherwise
+=item since: 1.99_10
+
=back
For example:
@@ -142,6 +119,8 @@
The server build time string
+=item since: 1.99_10
+
=back
@@ -159,6 +138,8 @@
The server version string
+=item since: 1.99_10
+
=back
@@ -169,89 +150,54 @@
-=head2 server_root_relative()
+=head2 C<add_config>
-Returns the canonical form of the filename made absolute to
-C<ServerRoot>:
+Dynamically add Apache configuration:
- $path = $s->server_root_relative($fname);
+ $s->add_config($lines);
=over 4
-=item obj: C<$s> (C<L<Apache::Server|docs::2.0::api::Apache::Server>>)
+=item obj: C<$s>
+( C<L<Apache::Server object|docs::2.0::api::Apache::Server>> )
-=item opt arg2: C<$fname> (string)
-
-=item ret: C<$path> (string)
-
-=back
-
-C<$fname> is appended to the value of C<ServerRoot> and returned. For
-example:
-
- my $log_dir = Apache::server_root_relative($r->pool, 'logs');
-
-If C<$fname> is not specified, the value of C<ServerRoot> is returned
-with a trailing C</>. (it's the same as using C<''> as C<$fname>'s
-value).
-
-Also see the C<L<Apache::server_root|/C_Apache__server_root_>>
-constant.
-
-
-
-
-=head2 C<error_log2stderr>
-
-META: Autogenerated - needs to be reviewed/completed
-
-Convert stderr to the error log
-
- $s->error_log2stderr();
-
-=over 4
+=item arg1: C<$lines> (ARRAY ref)
-=item obj: C<$s> (C<L<Apache::Server|docs::2.0::api::Apache::Server>>)
-
-The current server
+An ARRAY reference containing configuration lines per element, without
+the new line terminators.
=item ret: no return value
-=back
-
-
-
-=head2 C<psignature>
-
-META: Autogenerated - needs to be reviewed/completed
-
-Get HTML describing the address and (optionally) admin of the server.
-
- $sig = $r->psignature($prefix);
-
-=over 4
-
-=item obj: C<$r> (C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>>)
-
-=item arg1: C<$prefix> (string)
+=item since: 1.99_10
-Text which is prepended to the return value
-
-=item ret: C<$sig> (string)
+=back
-HTML describing the server
+See also:
+C<L<$r-E<gt>add_config|docs::2.0::api::Apache::RequestUtil/C_add_config_>>
-=back
+For example:
+Add a configuration section at the server startup (e.g. from
+I<startup.pl>):
+ use Apache::ServerUtil ();
+ my $conf = <<'EOC';
+ PerlModule Apache::MyExample
+ <Location /perl>
+ SetHandler perl-script
+ PerlResponseHandler Apache::MyExample
+ </Location>
+ EOC
+ Apache->server->add_config([split /\n/, $conf]);
=head2 C<dir_config>
-dir_config() provides an interface for the per-server variables
-specified by the C<PerlSetVar> and C<PerlAddVar> directives, and also
-can be manipulated via the C<APR::Table> methods.
+C<$s-E<gt>dir_config()> provides an interface for the per-server
+variables specified by the C<PerlSetVar> and C<PerlAddVar> directives,
+and also can be manipulated via the
+C<L<APR::Table|docs::2.0::api::APR::Table>> methods.
$table = $s->dir_config();
$value = $s->dir_config($key);
@@ -260,16 +206,23 @@
=over 4
-=item obj: C<$s> (C<L<Apache::Server|docs::2.0::api::Apache::Server>>)
+=item obj: C<$s>
+( C<L<Apache::Server object|docs::2.0::api::Apache::Server>> )
=item opt arg2: C<$key> (string)
+Key string
+
=item opt arg3: C<$val> (string)
-=item ret: C<$ret> (scalar)
+Value string
+
+=item ret: ...
Depends on the passed arguments, see further discussion
+=item since: 1.99_10
+
=back
The keys are case-insensitive.
@@ -314,34 +267,30 @@
-=head2 C<is_perl_option_enabled>
-check whether a server level PerlOptions flag is enabled or not.
+=head2 C<error_log2stderr>
- $result = $s->is_perl_option_enabled($flag);
+Start sending STDERR to the error_log file
+ $s->error_log2stderr();
=over 4
-=item obj: C<$s> (C<L<Apache::Server|docs::2.0::api::Apache::Server>>)
+=item obj: C<$s>
+( C<L<Apache::Server object|docs::2.0::api::Apache::Server>> )
-=item arg1: C<$flag> (string)
+The current server
-=item ret: C<$result> (integer)
+=item ret: no return value
+
+=item since: 1.99_10
=back
-For example to check whether the C<ChildExit> hook is enabled (which
-can be disabled with C<PerlOptions -ChildExit>) and configure some
-handlers to run if enabled:
+This method may prove useful if you want to start redirecting STDERR
+to the error_log file before Apache does that on the startup.
- $s->push_handlers(ChildExit => \&child_exit)
- if $s->is_perl_option_enabled('ChildExit');
-See also:
-L<PerlOptions|docs::2.0::user::config::config/C_PerlOptions_> and
-L<the equivalent function for directory level PerlOptions
-flags|docs::2.0::api::Apache::RequestUtil/C_is_perl_option_enabled_>.
@@ -351,99 +300,156 @@
Returns a reference to a list of handlers enabled for
a given phase.
- @handlers = $s->get_handlers($hook_name);
+ $handlers_list = $s->get_handlers($hook_name);
=over 4
-=item obj: C<$s> (C<L<Apache::Server|docs::2.0::api::Apache::Server>>)
+=item obj: C<$s>
+( C<L<Apache::Server object|docs::2.0::api::Apache::Server>> )
=item arg1: C<$hook_name> (string)
a string representing the phase to handle.
-=item ret: C<@handlers> (CODE ref or ref to ARRAY of CODE refs)
+=item ret: C<$handlers_list> (ref to an ARRAY of CODE refs)
a list of references to the handler subroutines
+=item since: 1.99_10
+
=back
+See also:
+C<L<$r-E<gt>add_config|docs::2.0::api::Apache::RequestUtil/C_get_handlers_>>
+
For example:
- @handlers = $s->get_handlers('PerlResponseHandler');
+A list of handlers configured to run at the I<child_exit> phase:
+ @handlers = @{ $s->get_handlers('PerlChildExitHandler') || []};
-=head2 C<push_handlers>
-META: Autogenerated - needs to be reviewed/completed
-Add one or more handlers to a list of handlers to be called for a
-given phase.
- $s->push_handlers($hook_name => \&handler);
- $s->push_handlers($hook_name => [\&handler, \&handler2]);
-=over 4
+=head2 C<is_perl_option_enabled>
-=item obj: C<$s> (C<L<Apache::Server|docs::2.0::api::Apache::Server>>)
+check whether a server level C<PerlOptions> flag is enabled or not.
-=item arg1: C<$hook_name> (string)
+ $result = $s->is_perl_option_enabled($flag);
-a string representing the phase to handle.
+=over 4
-=item arg2: C<$handlers> (CODE ref or ref to ARRAY of CODE refs)
+=item obj: C<$s>
+( C<L<Apache::Server object|docs::2.0::api::Apache::Server>> )
-a reference to a list of references to the handler subroutines, or a
-single reference to a handler subroutine
+=item arg1: C<$flag> ( string )
-=item ret: no return value
+=item ret: C<$result> ( true/false )
+
+=item since: 1.99_10
=back
-Examples:
+For example to check whether the C<ChildExit> hook is enabled (which
+can be disabled with C<PerlOptions -ChildExit>) and configure some
+handlers to run if enabled:
+
+ $s->push_handlers(ChildExit => \&child_exit)
+ if $s->is_perl_option_enabled('ChildExit');
+
+See also:
+L<PerlOptions|docs::2.0::user::config::config/C_PerlOptions_> and
+L<the equivalent function for directory level PerlOptions
+flags|docs::2.0::api::Apache::RequestUtil/C_is_perl_option_enabled_>.
+
- $s->push_handlers(PerlResponseHandler => \&handler);
- $s->push_handlers(PerlResponseHandler => [\&handler, \&handler2]);
- # XXX: not implemented yet
- $s->push_handlers(PerlResponseHandler => sub {...});
-=head2 C<set_handlers>
+
+=head2 C<psignature>
META: Autogenerated - needs to be reviewed/completed
-Set a list of handlers to be called for a given phase.
+Get HTML describing the address and (optionally) admin of the server.
- $s->set_handlers($hook_name => \&handler);
- $s->set_handlers($hook_name => [\&handler, \&handler2]);
+ $sig = $rXXXX->psignature($prefix);
=over 4
-=item obj: C<$s> (C<L<Apache::Server|docs::2.0::api::Apache::Server>>)
+=item obj: C<$rXXX> (C<L<Apache::RequestRec|docs::2.0::api::Apache::RequestRec>>)
-=item arg1: C<$hook_name> (string)
+=item arg1: C<$prefix> (string)
-a string representing the phase to handle.
+Text which is prepended to the return value
-=item arg2: C<$handlers> (CODE ref or ref to ARRAY of CODE refs)
+=item ret: C<$sig> (string)
-a reference to a list of references to the handler subroutines, or a
-single reference to a handler subroutine
+HTML describing the server
-=item ret: no return value
+=item since: 1.99_10
=back
+
+
+
+
+
+=head2 C<push_handlers>
+
+Add one or more handlers to a list of handlers to be called for a
+given phase.
+
+ $ok = $s->push_handlers($hook_name => \&handler);
+ $ok = $s->push_handlers($hook_name => [\&handler, \&handler2]);
+
+=over 4
+
+=item obj: C<$s>
+( C<L<Apache::Server object|docs::2.0::api::Apache::Server>> )
+
+=item arg1: C<$hook_name> ( string )
+
+the phase to add the handlers to
+
+=item arg2: C<$handlers> ( CODE ref or SUB name or an ARRAY ref )
+
+a single handler CODE reference or just a name of the subroutine
+(fully qualified unless defined in the current package).
+
+if more than one passed, use a reference to an array of CODE refs
+and/or subroutine names.
+
+=item ret: C<$ok> ( true/false )
+
+returns a true value on success, otherwise a false value
+
+=item since: 1.99_10
+
+=back
+
+See also:
+C<L<$r-E<gt>add_config|docs::2.0::api::Apache::RequestUtil/C_push_handlers_>>
+
Examples:
- $s->set_handlers(PerlResponseHandler => \&handler);
- $s->set_handlers(PerlResponseHandler => [\&handler, \&handler2]);
+A single handler:
+
+ $s->push_handlers(PerlChildExitHandler => \&handler);
+
+Multiple handlers:
+
+ $s->push_handlers(PerlChildExitHandler => ['Foo::Bar::handler', \&handler2]);
+
+Anonymous functions:
+
+ $s->push_handlers(PerlLogHandler => sub { return Apache::OK });
- # XXX: not implemented yet
- $s->set_handlers(PerlResponseHandler => sub {...});
@@ -460,9 +466,115 @@
=item obj: C<Apache> (class name)
-=item ret: C<$main_s> (C<L<Apache::Server|docs::2.0::api::Apache::Server>>)
+=item ret: C<$main_s>
+( C<L<Apache::Server object|docs::2.0::api::Apache::Server>> )
+
+=item since: 1.99_10
+
+=back
+
+
+
+=head2 C<server_root_relative>
+
+Returns the canonical form of the filename made absolute to
+C<ServerRoot>:
+
+ $path = $s->server_root_relative($fname);
+
+=over 4
+
+=item obj: C<$s>
+( C<L<Apache::Server object|docs::2.0::api::Apache::Server>> )
+
+=item opt arg2: C<$fname> (string)
+
+=item ret: C<$path> (string)
+
+=item since: 1.99_10
=back
+
+C<$fname> is appended to the value of C<ServerRoot> and returned. For
+example:
+
+ my $log_dir = Apache::server_root_relative($r->pool, 'logs');
+
+If C<$fname> is not specified, the value of C<ServerRoot> is returned
+with a trailing C</>. (it's the same as using C<''> as C<$fname>'s
+value).
+
+Also see the C<L<Apache::server_root|/C_Apache__server_root_>>
+constant.
+
+
+
+
+=head2 C<set_handlers>
+
+Set a list of handlers to be called for a given phase. Any previously
+set handlers are forgotten.
+
+ $ok = $s->set_handlers($hook_name => \&handler);
+ $ok = $s->set_handlers($hook_name => [\&handler, \&handler2]);
+ $ok = $s->set_handlers($hook_name => []);
+ $ok = $s->set_handlers($hook_name => undef);
+
+=over 4
+
+=item obj: C<$s>
+( C<L<Apache::Server object|docs::2.0::api::Apache::Server>> )
+
+=item arg1: C<$hook_name> ( string )
+
+the phase to set the handlers in
+
+=item arg2: C<$handlers> ( CODE ref or SUB name or an ARRAY ref )
+
+a reference to a single handler CODE reference or just a name of the
+subroutine (fully qualified unless defined in the current package).
+
+if more than one passed, use a reference to an array of CODE refs
+and/or subroutine names.
+
+if the argument is C<undef> or C<[]> the list of handlers is reset to
+zero.
+
+=item ret: C<$ok> ( true/false )
+
+returns a true value on success, otherwise a false value
+
+=item since: 1.99_10
+
+=back
+
+See also:
+C<L<$r-E<gt>add_config|docs::2.0::api::Apache::RequestUtil/C_set_handlers_>>
+
+Examples:
+
+A single handler:
+
+ $r->set_handlers(PerlChildExitHandler => \&handler);
+
+Multiple handlers:
+
+ $r->set_handlers(PerlFixupHandler => ['Foo::Bar::handler', \&handler2]);
+
+Anonymous functions:
+
+ $r->set_handlers(PerlLogHandler => sub { return Apache::OK });
+
+Reset any previously set handlers:
+
+ $r->set_handlers(PerlCleanupHandler => []);
+
+or
+
+ $r->set_handlers(PerlCleanupHandler => undef);
+
+
+
---------------------------------------------------------------------
To unsubscribe, e-mail: docs-cvs-unsubscribe@perl.apache.org
For additional commands, e-mail: docs-cvs-help@perl.apache.org