GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  CATALYST::MODEL::XML::FEED (3)

.ds Aq ’

NAME

Catalyst::Model::XML::Feed - Use RSS/Atom feeds as a Catalyst Model

CONTENTS

VERSION

Version 0.04

SYNOPSIS

In your own model:



     package MyApp::Model::Feeds;
     use base qw(Catalyst::Model::XML::Feed);



Then from elsewhere in your application:



     $c->model(Feeds)->register(delicious, http://del.icio.us/rss);
     $c->model(Feeds)->register(http://blog.jrock.us/);
 
     my @feeds     = $c->model(Feeds)->get_all_feeds;
     my $delicious = $c->model(Feeds)->get(delicious);



You can also pre-register feeds from your config file:



     ---
     Model::Feeds:
       feeds:
         - uri: http://blog.jrock.us/
         - uri: http://search.cpan.org/
         - title: delicious
           uri: http://del.icio.us/rss/



See CONFIGURATION below for details.

DESCRIPTION

Catalyst::Model::XML::Feed allows you to use XML feeds in your Catalyst application. To use a feed, you need to register it with the register method.

Once a feed is registered, it’s automatically cached for you.

CONFIGURATION

Configuration is accepted via the standard Catalyst method:



    $c->config->{Model::Feeds}->{key} = $value;



Valid keys include:
ttl Time To Live, in seconds, for each feed. If a feed is older than this value, it is refreshed from its source. Defaults to 3600 seconds, 1 hour.
feeds An arrayref of hashes containing feeds to preload. The hash is required to contain a key called uri or location, specifing the URL of the feed to load. It may optinally contain name or title, if you wish to override the feed’s own title.
Example config in MyApp.yml (assuming you call your feed model Feeds):



     Model::Feeds:
       feeds:
         - uri: http://blog.jrock.us/
         - title: delicious
           location: http://del.icio.us/rss/
       ttl: 1337



METHODS

    new

Creates a new instance. Called for you by Catalyst. If your config file contains invalid feeds the feed will be refetched when the feed content is accessed. This allows your Catalyst app to start even in the case of an external outage of an RSS feed.

    register($uri_of_feed)

Registers a feed with the Model. If $uri_of_feed points to a feed, the feed is added under its own name. If $$uri_of_feed points to an HTML or XHTML document containing <link> tags pointing to feeds, all feeds are added by using their URIs as their names.

Returns a list of the names of the feeds that were added.

Warns if the $uri_of_feeds doesn’t contain a feed or links to feeds, or it cannot be fetched.

register($name, CW$uri_of_feed)

Registers a feed with the Model. If $name is already registered, the old feed at $name is forgotten and replaced with the new feed at $uri_of_feed. The title of the feed is replaced with $name.

Warns if $uri_of_feed isn’t an XML feed (or doesn’t contain a link to one).

Throws an exception if the $uri_of_feed links to multiple feeds.

    names

Returns the names of all registered feeds.

    get_all_feeds

Returns a list of all registered feeds. The elements are XML::Feed objects.

    get($name)

Returns the XML::Feed object that corresponds to $name. Throws an exception if there is no feed that’s named $name.

    refresh([$name])

Forces the feed $name to be refreshed from the source. If $name is omitted, refreshes all registered feeds.

DIAGNOSTICS

CW%s does not reference any feeds

The URI you passed to register was not a feed, or did not link to any feeds.

CW%s points to too many feeds

The URI you passed to register referenced more than one feed. If you want to register all the feeds, use the one argument form of register instead of the two argument form.

No feed named CW%s

The feed that you requested does not exist. Try registering it first.

AUTHOR

Jonathan Rockway, <jrockway at cpan.org>

BUGS

Please report any bugs or feature requests to bug-catalyst-model-xml-feed at rt.cpan.org, or through the web interface at <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Catalyst-Model-XML-Feed>. I will be notified, and then you’ll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.



    perldoc Catalyst::Model::XML::Feed



You can also look for information at:
o AnnoCPAN: Annotated CPAN documentation

<http://annocpan.org/dist/Catalyst-Model-XML-Feed>

o CPAN Ratings

<http://cpanratings.perl.org/d/Catalyst-Model-XML-Feed>

o RT: CPAN’s request tracker

<http://rt.cpan.org/NoAuth/Bugs.html?Dist=Catalyst-Model-XML-Feed>

o Search CPAN

<http://search.cpan.org/dist/Catalyst-Model-XML-Feed>

SEE ALSO

XML::Feed and XML::Feed::Entry

ACKNOWLEDGEMENTS

COPYRIGHT & LICENSE

Copyright 2006 Jonathan Rockway, all rights reserved.

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

Search for    or go to Top of page |  Section 3 |  Main Index


perl v5.20.3 CATALYST::MODEL::XML::FEED (3) 2011-04-28

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.