NAME
Gungho::Inline - Inline Your Providers And Handlers
SYNOPSIS
use Gungho::Inline;
use IO::Select;
Gungho::Inline->run(
$config,
{
provider => sub {
my ($provider, $c) = @_;
while (IO::Select->new(STDIN)->can_read(0)) {
return if STDIN->eof;
my $url = STDIN->getline;
chomp $url;
$provider->add_request($c->prepare_request(Gungho::Request->new(GET => $url)));
}
},
handler => sub {
my ($handler, $c, $req, $res) = @_;
print $res->code, ' ', $req->uri, "\n";
}
}
);
DESCRIPTION
Sometimes you don't need the full power of an independent Gungho Provider and or Handler. In those cases, Gungho::Inline saves you from creating separate packages
This module is still experimental. Feedback welcome
BACKWARDS COMPATIBILITY WITH VERSIONS < 0.08
From version 0.08 of Gungho::Inline, the parameter list passed to the handler and providers, as well as the run method has been changed. You can enable the old behavior if you do
env GUNGHO_INLINE_OLD_PARAMETER_LIST=1 gungho
or, somewhere in your code, create a subroutine constant:
BEGIN
{
sub Gungho::Inline::OLD_PARAMETER_LIST { 1 };
}
use Gungho::Inline;
CONSTANTS
OLD_PARAMETER_LIST
If true, uses the old-style parameter list
METHODS
setup({ provider => $callback, handler => $callback, %args })
Sets up Gungho::Inline with this set of providers
AUTHOR
Original code by Kazuho Oku.