Plack::App::Cascade.3pm

Langue: en

Version: 2010-03-30 (ubuntu - 24/10/10)

Section: 3 (Bibliothèques de fonctions)

NAME

Plack::App::Cascade - Cascadable compound application

SYNOPSIS

   use Plack::App::Cascade;
   use Plack::App::URLMap;
   use Plack::App::File;
 
   # Serve static files from multiple search paths
   my $cascade = Plack::App::Cascade->new;
   $cascade->add( Plack::App::File->new(root => "/www/example.com/foo")->to_app );
   $cascade->add( Plack::App::File->new(root => "/www/example.com/bar")->to_app );
 
   my $app = Plack::App::URLMap->new;
   $app->map("/static", $cascade);
   $app->to_app;
 
 

DESCRIPTION

Plack::App::Cascade is a Plack middleware component that compounds several apps and tries them to return the first response that is not 404.

METHODS

new
   $app = Plack::App::Cascade->new(apps => [ $app1, $app2 ]);
 
 

Creates a new Cascade application.

add
   $app->add($app1);
   $app->add($app2, $app3);
 
 

Appends a new application to the list of apps to try. You can pass the multiple apps to the one "add" call.

catch
   $app->catch([ 403, 404 ]);
 
 

Sets which error codes to catch and process onwards. Defaults to 404.

AUTHOR

Tatsuhiko Miyagawa

SEE ALSO

Plack::App::URLMap Rack::Cascade