The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

POE::Filter::SimpleXML - Simple XML parsing for the POE framework

VERSION

version 1.140700

SYNOPSIS

 use POE::Filter::SimpleXML;
 my $filter = POE::Filter::SimpleXML->new;

 my $wheel = POE::Wheel:ReadWrite->new(
        Filter          => $filter,
        InputEvent      => 'input_event',
 );

DESCRIPTION

POE::Filter::SimpleXML provides POE with a XML parsing strategy for POE::Wheels that will be dealing with Complete XML documents.

The parser is XML::LibXML

PRIVATE_ATTRIBUTES

buffer

    is: ro, isa: ArrayRef, traits: Array

buffer holds the raw data to be parsed, there should be one XML document per entry. Access to this attribute is provided by the following methods:

    handles =>
    {
        has_buffer => 'count',
        all_buffer => 'elements',
        push_buffer => 'push',
        shift_buffer => 'shift',
        unshift_buffer => 'unshift',
        join_buffer => 'join',
    }

callback

    is: ro, isa: CodeRef

callback holds the CodeRef to be call in the event that there is an exception generated while parsing content. By default it holds a CodeRef that simply calls Carp::confess.

parser

    is: ro, isa: XML::LibXML

parser holds an instance of the XML::LibXML parser.

PUBLIC_METHODS

get_one_start

    (ArrayRef $raw?)

This method is part of the POE::Filter API. See "get_one_start" in POE::Filter for an explanation of its usage.

get_one

    returns (ArrayRef)

This method is part of the POE::Filter API. See "get_one" in POE::Filter for an explanation of its usage.

put

    (ArrayRef $nodes) returns (ArrayRef)

This method is part of the POE::Filter API. See "put" in POE::Filter for an explanation of its usage.

PRIVATE_METHODS

AUTHOR

Mathieu Arnold <mat@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2021 by Mathieu Arnold <mat@cpan.org>

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

1 POD Error

The following errors were encountered while parsing the POD:

Around line 109:

=pod directives shouldn't be over one line long! Ignoring all 2 lines of content