NAME
    Apache2::DirBasedHandler - Directory based Location Handler helper

SYNOPSIS
      package My::Thingy

      use strict
      use Apache2::DirBasedHandler
      our @ISA = qw(Apache2::DirBasedHandler);
      use Apache2::Const -compile => qw(:common);

      sub index {
          my $self = shift;
          my ($r,$uri_args,$args) = @_;

          if (@$uri_args) {
              return Apache2::Const::NOT_FOUND;
          }

          return (
              Apache2::Const::OK,
              qq[this is the index],
              qq[text/plain; charset=utf-8]
          );
      }

      sub super_page {
          my $self = shift;
          my ($r,$uri_args,$args) = @_;

          return (
              Apache2::Const::OK,
              qq[this is $location/super and all it's contents],
              qq[text/plain; charset=utf-8]
          );
      }

      sub super_dooper_page {
          my $self = shift;
          my ($r,$uri_args,$args) = @_;

          return (
              Apache2::Const::OK,
              qq[this is $location/super/dooper and all it's contents],
              qq[text/plain; charset=utf-8]
          );
      }

      1;

DESCRIPTION
    This module is designed to allow people to more quickly implement uri to
    function style handlers. This module is intended to be subclassed.

    A request for

      $r->location . qq[/foo/bar/baz/]

    will be served by the first of the following functions with is defined

      foo_bar_baz_page
      foo_bar_page
      foo_page
      index

  handler
    "handler" is the guts of DirBasedHandler. It provides the basic
    structure of the modules, turning the request uri into an array, which
    is then turned into possible function calls.

  init
    "init" is used to include objects or data you want to be passed into
    your page functions. To be most useful it should return a hash
    reference. The default implementation returns a reference to an empty
    hash.

  parse_uri
    "parse_uri" takes an Apache::RequestRec (or derived) object, and returns
    a reference to an array of all the non-slash parts of the uri. It strips
    repeated slashes in the same manner that they would be stripped if you
    do a request for static content.

  uri_to_function
    "uri_to_function" converts an Apache2::RequestRec (or derived) object
    and an array reference and returns and returns the name of a function to
    handle the request it's arguments describe.

  index
    "index" handles requests for $r->location, and any requests that have no
    other functions defined to handle them. You must subclass it (or look
    silly)

