Plack-Handler-AnyEvent-ReverseHTTP

 view release on metacpan or  search on metacpan

Changes  view on Meta::CPAN

Revision history for Perl extension Plack::Handler::AnyEvent::ReverseHTTP

0.04  Tue Feb 16 00:25:39 PST 2010
        - Fixed a packaging issue

0.03  Tue Feb 16 00:15:29 PST 2010
        - Renamed dist to Plack::Handler::AnyEvent::ReverseHTTP

0.02  Tue Jan  5 05:32:11 PST 2010
        - Added (a little hacky but working) psgi.streaming support

0.01  Mon Oct 12 23:46:04 2009
        - original version

lib/Plack/Handler/AnyEvent/ReverseHTTP.pm  view on Meta::CPAN

    my($self, $app) = @_;
    $self->{guard} = reverse_http $self->{host}, $self->{token}, sub {
        my $req = shift;
        my $env = $req->to_psgi;

        if (my $client = delete $env->{HTTP_REQUESTING_CLIENT}) {
            @{$env}{qw( REMOTE_ADDR REMOTE_PORT )} = split /:/, $client, 2;
        }

        $env->{'psgi.nonblocking'}  = Plack::Util::TRUE;
        $env->{'psgi.streaming'}    = Plack::Util::TRUE;
        $env->{'psgi.multithread'}  = Plack::Util::FALSE;
        $env->{'psgi.multiprocess'} = Plack::Util::FALSE;
        $env->{'psgi.run_once'}     = Plack::Util::FALSE;

        my $r = $app->($env);
        if (ref $r eq 'ARRAY') {
            return HTTP::Response->from_psgi($r);
        } elsif (ref $r eq 'CODE') {
            my $cv = AE::cv;
            $r->(sub {



( run in 0.237 second using v1.01-cache-2.11-cpan-4d50c553e7e )