SYNOPSIS
use HTTP::Proxy::HeaderFilter::simple;
# a simple User-Agent filter
my $filter = HTTP::Proxy::HeaderFilter::simple->new(
sub { $_[1]->header( User_Agent => 'foobar/1.0' ); }
);
$proxy->push_filter( request => $filter );
DESCRIPTION
HTTP::Proxy::HeaderFilter::simple can create BodyFilter without going through the hassle of creating a full-fledged class. Simply pass a code reference to the "filter()" method of your filter to the constructor, and you'll get the adequate filter.Constructor calling convention
The constructor is called with a single code reference. The code reference must conform to the standard "filter()" signature for header filters:
sub filter { my ( $self, $headers, $message) = @_; ... }
This code reference is used for the "filter()" method.
METHODS
This filter ``factory'' defines the standard HTTP::Proxy::HeaderFilter methods, but those are only, erm, ``proxies'' to the actual CODE references passed to the constructor. These ``proxy'' methods are:- filter()
- begin()
- end()
Two other methods are actually HTTP::Proxy::HeaderFilter::simple methods, and are called automatically:
- init()
- Initalise the filter instance with the code references passed to the constructor.
- can()
- Return the actual code reference that will be run, and not the ``proxy'' methods. If called with any other name than "begin" and "filter", it calls "UNIVERSAL::can()" instead.
AUTHOR
Philippe ``BooK'' Bruhat, <[email protected]>.COPYRIGHT
Copyright 2003-2015, Philippe Bruhat.LICENSE
This module is free software; you can redistribute it or modify it under the same terms as Perl itself.