=head1 NAME

Apache::Module - Perl API for creating and working with Apache modules




=head1 Synopsis

  use Apache::Module ();

META: to be completed




=head1 Description

META: to be completed

See L<Apache Server Configuration Customization in
Perl|docs::2.0::user::config::custom>.


=head1 API

C<Apache::Module> provides the following functions and/or methods:




=head2 C<find_linked_module>

META: Autogenerated - needs to be reviewed/completed

Find a module based on the name of the module

  $ret = find_linked_module($name);

=over 4

=item arg1: C<$name> (string)

the name of the module

=item ret: C<$ret> (C<L<Apache::Module|docs::2.0::api::Apache::Module>>)

the module structure if found, NULL otherwise

=back





=head2 C<find_module_name>

META: Autogenerated - needs to be reviewed/completed

Find the name of the specified module

  $ret = $module->find_module_name();

=over 4

=item arg1: C<$module> (C<L<Apache::Module|docs::2.0::api::Apache::Module>>)

The module to get the name for

=item ret: C<$ret> (string)

the name of the module

=back





=head2 C<remove_loaded_module>

META: Autogenerated - needs to be reviewed/completed

Remove a module from the chained modules list and the list of loaded
modules

  $module->remove_loaded_module();

=over 4

=item arg1: C<$module> (C<L<Apache::Module|docs::2.0::api::Apache::Module>>)



=item ret: no return value

=back





=head2 C<remove_module>

META: Autogenerated - needs to be reviewed/completed

Remove a module from the server.  There are some caveats:
when the module is removed, its slot is lost so all the current
per-dir and per-server configurations are invalid. So we should
only ever call this function when you are invalidating almost
all our current data. I.e. when doing a restart.

  $module->remove_module();

=over 4

=item arg1: C<$module> (C<L<Apache::Module|docs::2.0::api::Apache::Module>>)

the module structure of the module to remove

=item ret: no return value

=back





=head2 C<top_module>

META: Autogenerated - needs to be reviewed/completed



  $ret = Apache::Module->top_module();

=over 4

=item arg1: C<Apache::Module> (class name)

=item ret: C<$ret> (C<L<Apache::Module|docs::2.0::api::Apache::Module>>)

=back





=head2 C<version>

META: Autogenerated - needs to be reviewed/completed

API version, *not* module version; check that module is
compatible with this version of the server.

  $version = $module->version();

=over 4

=item arg1: C<$module> (C<L<Apache::Module|docs::2.0::api::Apache::Module>>)

=item ret: C<$version> (integer)

=back





=head2 C<minor_version>

META: Autogenerated - needs to be reviewed/completed

API minor version. Provides API feature milestones. Not checked
during module init

  $minor_version = $module->minor_version();

=over 4

=item arg1: C<$module> (C<L<Apache::Module|docs::2.0::api::Apache::Module>>)

=item ret: C<$minor_version> (integer)

=back





=head2 C<module_index>

META: Autogenerated - needs to be reviewed/completed

Index to this modules structures in config vectors.

  $index = $module->module_index();

=over 4

=item arg1: C<$module> (C<L<Apache::Module|docs::2.0::api::Apache::Module>>)

=item ret: C<$index> (integer)

=back





=head2 C<name>

META: Autogenerated - needs to be reviewed/completed

The name of the module's C file

  $name = $module->name();

=over 4

=item arg1: C<$module> (C<L<Apache::Module|docs::2.0::api::Apache::Module>>)

=item ret: C<$name> (string)

=back





=head2 C<dynamic_load_handle>

META: Autogenerated - needs to be reviewed/completed

The handle for the DSO.  Internal use only

  $dl_handle = $module->dynamic_load_handle();

=over 4

=item arg1: C<$module> (C<L<Apache::Module|docs::2.0::api::Apache::Module>>)

=item ret: C<$dl_handle> (SCALAR)

=back





=head2 C<next>

META: Autogenerated - needs to be reviewed/completed

A pointer to the next module in the list

  $next_module = $module->next();

=over 4

=item arg1: C<$module> (C<L<Apache::Module|docs::2.0::api::Apache::Module>>)

=item ret: C<$next_module> (C<L<Apache::Module|docs::2.0::api::Apache::Module>>)

=back





=head2 C<cmds>

META: Autogenerated - needs to be reviewed/completed

A command_rec table that describes all of the directives this module
defines.

  $cmd_rec = $module->cmds();

=over 4

=item arg1: C<$module> (C<L<Apache::Module|docs::2.0::api::Apache::Module>>)

=item ret: C<$cmd_rec> (C<L<Apache::Command|docs::2.0::api::Apache::Command>>)

=back




=head1 See Also

L<mod_perl 2.0 documentation|docs::2.0::index>.




=head1 Copyright

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




=head1 Authors

L<The mod_perl development team and numerous
contributors|about::contributors::people>.

=cut

