view Lib/IMPL/Web/QueryHandler/PathInfoRewrite.pm @ 201:0c018a247c8a

Reworked REST resource classes to be more transparent and intuitive
author sergey
date Tue, 24 Apr 2012 19:52:07 +0400
parents 4d0e1962161c
children
line wrap: on
line source

package IMPL::Web::QueryHandler::PathInfoRewrite;
use strict;

use parent qw(IMPL::Web::QueryHandler);
__PACKAGE__->PassThroughArgs;

use IMPL::Class::Property;

BEGIN {
    public property pathinfoPrefix => prop_all;
}

sub Process {
    my ($this,$query,$nextHandler) = @_;
    
    my $pathInfo = $ENV{PATH_INFO};
    if (my $rx = $this->pathinfoPrefix) {
        $pathInfo =~ s/^($rx)//;
    }
    
    local $ENV{PATH_INFO} = $pathInfo;
    
    scalar $nextHandler->();
}

1;