Chris Williams > POE-Filter-Zlib-2.02 > POE::Filter::Zlib::Stream

Download:
POE-Filter-Zlib-2.02.tar.gz

Dependencies

Annotate this POD

Website

CPAN RT

New  1
Open  0
View/Report Bugs
Module Version: 2.02   Source  

NAME ^

POE::Filter::Zlib::Stream - A POE filter wrapped around Compress::Zlib deflate and inflate.

SYNOPSIS ^

    use POE::Filter::Zlib::Stream;

    my $filter = POE::Filter::Zlib::Stream->new( deflateopts => { -Level => 9 } );
    my $scalar = 'Blah Blah Blah';
    my $compressed_array   = $filter->put( [ $scalar ] );
    my $uncompressed_array = $filter->get( $compressed_array );

    use POE qw(Filter::Stackable Filter::Line Filter::Zlib::Stream);

    my ($filter) = POE::Filter::Stackable->new();
    $filter->push( POE::Filter::Zlib::Stream->new(),
                   POE::Filter::Line->new( InputRegexp => '\015?\012', OutputLiteral => "\015\012" ),

DESCRIPTION ^

POE::Filter::Zlib::Stream provides a POE filter for performing compression/uncompression using Compress::Zlib. It is suitable for use with POE::Filter::Stackable.

Unlike POE::Filter::Zlib this filter uses deflate and inflate, not the higher level compress and uncompress.

Ideal for streaming compressed data over sockets.

CONSTRUCTOR ^

new

Creates a new POE::Filter::Zlib::Stream object. Takes some optional arguments:

"deflateopts"

a hashref of options to be passed to deflateInit();

"inflateopts"

a hashref of options to be passed to inflateInit();

"flushtype"

The type of flush to use when flushing the compressed data. Defaults to Z_SYNC_FLUSH so you get a single stream, but if there is a POE::Filter::Zlib on the other end, you want to set this to Z_FINISH.

Consult Compress::Zlib for more detail regarding these options.

METHODS ^

get
get_one_start
get_one

Takes an arrayref which is contains streams of compressed input. Returns an arrayref of uncompressed streams.

get_pending

Returns any data in a filter's input buffer. The filter's input buffer is not cleared, however.

put

Takes an arrayref containing streams of uncompressed output, returns an arrayref of compressed streams.

clone

Makes a copy of the filter, and clears the copy's buffer.

AUTHOR ^

Chris Williams <chris@bingosnet.co.uk>

Martijn van Beers <martijn@cpan.org>

LICENSE ^

Copyright © Chris Williams and Martijn van Beers.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO ^

POE::Filter

Compress::Zlib

POE::Filter::Stackable

syntax highlighting: