NAME XML::Feed::Aggregator VERSION version 0.0401 SYNOPSIS use XML::Feed::Aggregator; my $syndicator = XML::Feed::Aggregator->new( sources => [ "http://blogs.perl.org/atom.xml", "http://news.ycombinator.com/" ], feeds => [ XML::Feed->parse('./slashdot.rss') ] )->fetch->aggregate->deduplicate->sort_by_date; $syndicator->grep_entries(sub { $_->author ne 'James' })->deduplicate; say $syndicator->map_entries(sub { $_->title } ); DESCRIPTION This module aggregates feeds from different sources for easy filtering and sorting. NAME XML::Feed::Aggregator - Simple feed aggregator ATTRIBUTES sources Sources to be fetched and loaded into the feeds attribute. Coerces to an ArrayRef of URI objects. feeds An ArrayRef of XML::Feed objects. entries List of XML::Feed::Entry objects obtained from each feed METHODS fetch Convert each source into an XML::Feed object, via XML::Feed->parse() For a remote address this involves a http request. aggregate Combine all feed entries into a single 'entries' attribute to_feed Export aggregated feed to a single XML::Feed object. All parameters passed to XML::Feed constructor. FEED METHODS Methods relating to the 'feeds' attribute add_feed Add a new feed to the 'feeds' attribute. all_feeds Return all feeds as an Array. feed_count Number of feeds. ENTRY METHODS Methods relating to the 'entries' attribute sort_entries See XML::Feed::Aggregator::Sort map_entries Loop over all entries using $_ within a CodeRef. grep_entries Grep through entries using $_ within a CodeRef. add_entry Add a new entry to the aggregated feed. entry_count Number of entries. all_entries Returns all entries as an array ROLES This class consumes the following roles for sorting and deduplication. XML::Feed::Aggregator::Deduper XML::Feed::Aggregator::Sort ERROR HANDLING error_count Number of errors occured. errors An ArrayRef of errors whilst fetching / parsing feeds. SEE ALSO XML::Feed::Aggregator::Deduper XML::Feed::Aggregator::Sort App::Syndicator Perlanet XML::Feed Feed::Find AUTHOR Robin Edwards COPYRIGHT AND LICENSE This software is copyright (c) 2011 by Robin Edwards. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.