The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

ASP4::TransHandler - PerlTransHandler with access to ASP4::Config

SYNOPSIS

  package My::TransHandler;
  
  use strict;
  use warnings 'all';
  use base 'ASP4::TransHandler';
  use ASP4::ConfigLoader;
  
  sub handler : method {
    my ($class, $r) = @_;
    
    my $super_response = $class->SUPER::handler( $r );
    
    my $config = ASP4::ConfigLoader->load();
    
    # Do stuff...
    calculate_pi_to_the_billionth_decimal_place();
    
    # Finally...
    return $super_response;
  }
  
  1;# return true:

Then, in your httpd.conf:

  <Perl>
    push @INC, '/path/to/your/libs';
  </Perl>

  <VirtualHost *:80>
    ...
    PerlTransHandler My::TransHandler
    ...
  </VirtualHost>

DESCRIPTION

ASP4::TransHandler is a utility class that helps module authors take advantage of the ASP4 configuration without actually doing any of the work.

RequestFilters vs TransHandlers

The difference between TransHandlers and ASP4::RequestFilters is that within a RequestFilter, you have access to all of the normal ASP objects ($Request, $Response, $Session, etc).

In a TransHandler, you only have access to the Apache2::RequestRec $r and the ASP4::Config (and only then if you load it up yourself via ASP4::ConfigLoader.

NOTE: - TransHandlers are configured in the httpd.conf and are only executed in a real Apache2 httpd environment. They are not executed during testing or via ASP4::API.

TransHandlers are a handy way of jumping into "normal" mod_perl handler mode without losing access to your web application's config.

BUGS

It's possible that some bugs have found their way into this release.

Use RT http://rt.cpan.org/NoAuth/Bugs.html?Dist=ASP4 to submit bug reports.

HOMEPAGE

Please visit the ASP4 homepage at http://0x31337.org/code/ to see examples of ASP4 in action.