Changeset 238
- Timestamp:
- 03/02/06 15:03:52
- Files:
-
- trunk/plagger/Makefile.PL (modified) (1 diff)
- trunk/plagger/lib/Plagger/Cache.pm (modified) (3 diffs)
- trunk/plagger/lib/Plagger/Plugin/Aggregator/Simple.pm (modified) (1 diff)
- trunk/plagger/lib/Plagger/Plugin/Subscription/OPML.pm (modified) (1 diff)
- trunk/plagger/lib/Plagger/UserAgent.pm (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/plagger/Makefile.PL
r223 r238 18 18 requires('LWP' => 0); 19 19 requires('HTML::Parser' => 3.40); 20 requires('URI::Fetch' => 0.04); 20 21 21 22 build_requires(Test::More => 0.42); trunk/plagger/lib/Plagger/Cache.pm
r237 r238 11 11 12 12 # Cache default configuration 13 $conf->{class} ||= 'Cache::File ';13 $conf->{class} ||= 'Cache::FileCache'; 14 14 $conf->{params} ||= { 15 cache_root => File::Spec->catfile($conf->{base}, 'cache'),16 default_expires => '30 minutes',15 cache_root => File::Spec->catfile($conf->{base}, 'cache'), 16 default_expires_in => '30 minutes', 17 17 }; 18 18 … … 38 38 } 39 39 40 my $hit_miss = defined $value ? "HIT" : "MISS"; 41 Plagger->context->log(debug => "Cache $hit_miss: $_[0]"); 42 40 43 $value; 41 44 } … … 47 50 my $data = $self->get($key); 48 51 if (defined $data) { 49 Plagger->context->log(debug => "Cache hit: $key");50 52 return $data; 51 53 } 52 54 53 Plagger->context->log(debug => "Cache miss: $key");54 55 $data = $callback->(); 55 56 if (defined $data) { trunk/plagger/lib/Plagger/Plugin/Aggregator/Simple.pm
r189 r238 24 24 $context->log(info => "Fetch $url"); 25 25 26 my $agent = Plagger::UserAgent->new;27 my $response = $agent-> get($url);26 my $agent = Plagger::UserAgent->new; 27 my $response = $agent->fetch($url, $self); 28 28 29 unless ($response ->is_success) {30 $context->log(error => "GET $url failed: " . $response->status _line);29 unless ($response) { 30 $context->log(error => "GET $url failed: " . $response->status); 31 31 return; 32 32 } 33 34 # TODO: handle 301 Moved Permenently and 410 Gone 35 $context->log(debug => $response->status . ": $url"); 33 36 34 37 $self->handle_feed($url, \$response->content); trunk/plagger/lib/Plagger/Plugin/Subscription/OPML.pm
r117 r238 33 33 elsif ($uri->scheme =~ /^https?$/) { 34 34 $context->log(debug => "Fetch remote OPML from $uri"); 35 my $response = Plagger::UserAgent->new->get($uri); 36 unless ($response->is_success) { 37 $context->error("Fetch $uri failed: ". $response->status_line); 35 36 my $response = Plagger::UserAgent->new->fetch($uri, $self); 37 unless ($response) { 38 $context->error("Fetch $uri failed: ". $response->status); 38 39 } 39 40 $xml = $response->content; trunk/plagger/lib/Plagger/UserAgent.pm
r73 r238 2 2 use strict; 3 3 use base qw( LWP::UserAgent ); 4 5 use URI::Fetch; 4 6 5 7 sub new { … … 11 13 } 12 14 15 sub fetch { 16 my($self, $url, $plugin) = @_; 17 18 URI::Fetch->fetch($url, 19 UserAgent => $self, 20 $plugin ? (Cache => $plugin->cache) : (), 21 ); 22 } 23 13 24 1; 14 25
