HTTP::Proxy::BodyFilteUseriContributed Perl DHTTP::Proxy::BodyFilter::lines(3)NAMEHTTP::Proxy::BodyFilter::lines - A filter that outputs only complete
lines
SYNOPSIS
use HTTP::Proxy::BodyFilter::lines;
use MyFilter; # this filter only works on complete lines
my $filter = MyFilter->new();
# stack both filters so that they'll handle text/* responses
$proxy->push_filter(
mime => 'text/*',
response => HTTP::Proxy::BodyFilter::lines->new,
response => $filter
);
# I want my lines to end with '!'
# This is equivalent to $/ = '!' in a normal Perl program
my $lines = HTTP::Proxy::BodyFilter::lines->new('!');
DESCRIPTION
The HTTP::Proxy::BodyFilter::lines filter makes sure that the next
filter in the filter chain will only receive complete lines. The
"chunks" of data received by the following filters with either end with
"\n" or will be the last piece of data for the current HTTP message
body.
You can change the idea the filter has of what is a line by passing to
its constructor the string it should understand as line ending. "\n" is
the default value.
my $filter = HTTP::Proxy::BodyFilter::lines->new( $sep );
This is similar to modifying $/ in a Perl program. In fact, this filter
has a behaviour so similar to modifying $/ that it also knows about
"paragraph mode" and "record mode".
Note that the "slurp" mode is not supported. Please use
HTTP::Proxy::BodyFilter::complete to enable the generic store and
forward filter mechanism.
METHODS
This filter defines the following methods, which are automatically
called:
init()
Initialise the filter with the EOL information.
filter()
Keeps unfinished lines for later.
will_modify()
This method returns a false value, thus indicating to the system
that it will not modify data passing through.
SEE ALSO
HTTP::Proxy, HTTP::Proxy::BodyFilter.
AUTHOR
Philippe "BooK" Bruhat, <book@cpan.org>.
COPYRIGHT
Copyright 2003-2006, Philippe Bruhat.
LICENSE
This module is free software; you can redistribute it or modify it
under the same terms as Perl itself.
perl v5.14.1 2011-07-20 HTTP::Proxy::BodyFilter::lines(3)