XML-Generator-RSS10

 view release on metacpan or  search on metacpan

lib/XML/Generator/RSS10.pm  view on Meta::CPAN

        '', 'item',
        [ 'rdf', 'about' => $p{link} ],
    );
    $self->_newline_if_pretty;

    $self->_contents( \%p, qw( title link ) );

    $self->_call_modules( \%p );

    if ( defined $p{description} ) {
        $self->_element_with_cdata( '', 'description', $p{description} );
        $self->_newline_if_pretty;
    }

    $self->_end_element( '', 'item' );
    $self->_newline_if_pretty;

    push @{ $self->{state}{items} }, $p{link};

}

lib/XML/Generator/RSS10.pm  view on Meta::CPAN

        if $self->{state}{finished};

    $self->_start_element(
        '', 'channel',
        [ 'rdf', 'about' => $p{link} ],
    );
    $self->_newline_if_pretty;

    $self->_contents( \%p, qw( title link ) );

    $self->_element_with_cdata( '', 'description', $p{description} );
    $self->_newline_if_pretty;

    foreach my $elt ( grep { $self->{state}{$_} } qw( image textinput ) ) {
        $self->_element(
            '', $elt,
            [ 'rdf', 'resource' => $self->{state}{$elt} ],
        );
        $self->_newline_if_pretty;
    }

lib/XML/Generator/RSS10.pm  view on Meta::CPAN


sub _element_with_data {
    my $self = shift;
    my $data = pop;

    $self->_start_element(@_);
    $self->characters( { Data => $data } ) if length $data;
    $self->_end_element(@_);
}

sub _element_with_cdata {
    my $self = shift;
    my $data = pop;

    $self->_start_element(@_);
    if ( length $data ) {
        $self->start_cdata;
        $self->characters( { Data => $data } );
        $self->end_cdata;
    }
    $self->_end_element(@_);
}

sub _start_element {
    my $self = shift;
    my ( $name, $prefix ) = ( shift, shift );

    my %att;
    foreach my $a ( grep { @$_ } @_ ) {

lib/XML/Generator/RSS10/content.pm  view on Meta::CPAN

sub contents {
    my $class = shift;
    my $rss   = shift;
    my %p     = validate( @_, CONTENTS_SPEC );

    if ( exists $p{encoding} ) {
        $rss->_element( $class->Prefix, 'encoding', $p{encoding} );
    }

    if ( exists $p{encoded} ) {
        $rss->_element_with_cdata( 'content', 'encoded', $p{encoded} );
        $rss->_newline_if_pretty;
    }

    if ( exists $p{items} ) {
        $rss->_start_element( 'content', 'items' );
        $rss->_newline_if_pretty;

        $rss->_start_element( 'rdf', 'Bag' );
        $rss->_newline_if_pretty;

lib/XML/Generator/RSS10/content.pm  view on Meta::CPAN


    if ( exists $p{encoding} ) {
        $rss->_element(
            'content', 'encoding',
            [ 'rdf', 'resource', $p{encoding} ],
        );
        $rss->_newline_if_pretty;
    }

    if ( exists $p{content} ) {
        $rss->_element_with_cdata( 'rdf', 'value', $p{content} );
        $rss->_newline_if_pretty;
    }

    $rss->_end_element( 'content', 'item' );
    $rss->_newline_if_pretty;

    $rss->_end_element( 'rdf', 'li' );
    $rss->_newline_if_pretty;
}



( run in 0.677 second using v1.01-cache-2.11-cpan-454fe037f31 )