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

NAME

Catalyst::Plugin::Compress::WithExclusions - Compresses all responses from the server, except excluded paths

VERSION

Version 0.02

SYNOPSIS

    use Catalyst qw/Compress::WithExclusions/;

Then specifiy the excluded paths as an array ref of regular expressions and the compression format that you want to use.

    __PACKAGE__->config(
      compression_excluded => ['path_regex', ],
      compression_format => $format
    );

Accepted formats for $format are the same as defined in Catalyst::Plugin::Compress

DESCRIPTION

It is always a good idea to compress the results that are returned from your web application, if the client can handle it. Catalyst::Plugin::Compress does that for you with very little effort. However, there are times when you might not want the reponse to be compressed. For example when a returning a file that has already been zipped. The extra compression is unlikely to reduce the file size and will just add extra load to the server. This module builds upon the Catalyst::Plugin::Compress module and adds the option to skip the compression step for certain url paths. So, for example, if you dont want to compress any files in the download path, then you would add the following to your config:

    __PACKAGE__->config(
      compression_excluded => ['^download', ],
    );

Now all urls on the site that start with download will be uncompressed and everything else will be compressed as requested.

SUBROUTINES/METHODS

setup

This is an internal method. It checks to see if any exclusions have been added in the configuration file.

should_compress_response

This is an internal method that first checks to see if the path should be excluded from compression and then passes on to the parent for further checks.

AUTHOR

Jody Clements, <clementsj at janelia.hhmi.org>

BUGS

Please report any bugs or feature requests to bug-catalyst-plugin-compress-hmmer at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Catalyst-Plugin-Compress-WithExclusions. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

    perldoc Catalyst::Plugin::Compress::WithExclusions

You can also look for information at:

ACKNOWLEDGEMENTS

LICENSE AND COPYRIGHT

Copyright 2012 Jody Clements.

This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.

See http://dev.perl.org/licenses/ for more information.