/[Frey]/trunk/lib/Frey/Feed.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Contents of /trunk/lib/Frey/Feed.pm

Parent Directory Parent Directory | Revision Log Revision Log


Revision 606 - (show annotations)
Fri Nov 28 22:22:07 2008 UTC (15 years, 4 months ago) by dpavlin
File size: 747 byte(s)
cleanup dependencies
1 package Frey::Feed;
2 use Moose;
3
4 extends 'Frey';
5 with 'Frey::Storage';
6
7 =head1 NAME
8
9 Frey::Feed - represent RSS/Atom feed using L<Data::Feed>
10
11 =cut
12
13 use Frey::Types;
14 use Frey::Mirror;
15
16 use Data::Feed;
17 use Data::Dump qw/dump/;
18
19 has uri => (
20 is => 'rw',
21 isa => 'Uri', coerce => 1,
22 required => 1,
23 default => 'https://blog.rot13.org/index.xml',
24 );
25
26 has feed => (
27 is => 'ro',
28 lazy => 1,
29 default => sub {
30 my ($self) = @_;
31 my $xml = Frey::Mirror->new( uri => $self->uri )->content;
32 Data::Feed->parse( \$xml );
33 },
34 );
35
36 has title => (
37 is => 'ro',
38 lazy => 1,
39 default => sub { $_[0]->feed->title },
40 );
41
42 sub entries { $_[0]->feed->entries }
43
44 sub as_data {
45 my ($self) = @_;
46 # data should return single element!
47 [ $self->feed->entries ];
48 }
49
50 1;

  ViewVC Help
Powered by ViewVC 1.1.26