XML::RAI::Enclosure - An extension to XML::RAI adding enclosure support


XML-RAI-Enclosure documentation Contained in the XML-RAI-Enclosure distribution.

Index


Code Index:

NAME

Top

XML::RAI::Enclosure - An extension to XML::RAI adding enclosure support

DESCRIPTION

Top

A subclass of XML::RAI::Object, XML::RAI::Enclosure handles the mapping function and retrieval of RSS channel elements.

USAGE

Top

	use XML::RAI;
	use XML::RAI::Enclosure;

	my $rai = XML::RAI->parse($feed_xml);

	for my $i (@{$rai->items}) {
	         print $i->title,"\n" ;
	         for my $e (XML::RAI::Enclosure->load($i)) {
	             print $e->url, "\n";
	             print $e->length, "\n";
	             print $e->type, "\n";
	         }
	}

METHODS

Top

XML::RAI::Enclosure->load

A class method that accepts an XML::RAI::Item and returns a list of XML::RAI::Enclosures.

$enclosure->src

An object method that returns the XML::RSS::Parser::Element that the object is using as its source.

$enclosure->parent

An object method that returns the parent of the RAI object.

$enclosure->url

An object method that returns the enclosure URL attribute.

$enclosure->length

An object method that returns the enclosure length attribute.

$enclosure->type

An object method that returns the enclosure type attribute. For example: 'audio/mpeg'

AUTHOR & COPYRIGHT

Top


XML-RAI-Enclosure documentation Contained in the XML-RAI-Enclosure distribution.

#
# XML::RAI::Enclosure - An interface to the enclosure elements of a RSS feed.
# 

package XML::RAI::Enclosure;

use strict;

use XML::RAI::Object;

our (@ISA, $XMap, $VERSION);

$VERSION = 1.02;

@ISA = qw( XML::RAI::Object );

$XMap = {
    url    => ['@url'],
    length => ['@length'],
    type   => ['@type'],
};

sub load {
	my $class = shift;
	my $item = shift;

	my @enclosures;

	for my $enc ($item->src->query('enclosure')) {
		push @enclosures, XML::RAI::Enclosure->new($enc, $item);
	}

	return @enclosures;
}

1;

__END__