ASP4
view release on metacpan or search on metacpan
lib/ASP4/FilterResolver.pm view on Meta::CPAN
package
ASP4::FilterResolver;
use strict;
use warnings 'all';
my %FilterCache = ( );
sub new
{
my ($class, %args) = @_;
return bless \%args, $class;
}# end new()
sub context { ASP4::HTTPContext->current }
sub resolve_request_filters
{
my ($s, $uri) = @_;
($uri) = split /\?/, $uri;
my $key = "$ENV{DOCUMENT_ROOT}:$uri";
return @{$FilterCache{$key}} if $FilterCache{$key};
$FilterCache{$key} = [
grep {
if( my $pattern = $_->uri_match )
{
$uri =~ m{^$pattern}
}
else
{
$uri eq $_->uri_equals;
}# end if()
} $s->context->config->web->request_filters
];
return @{$FilterCache{$key}};
}# end resolve_request_filters()
1;# return true:
( run in 1.029 second using v1.01-cache-2.11-cpan-39bf76dae61 )