度々こんなネタ:Plaggerのstash
※こういうネタ、小出しにしてるとキリないしキモメンですよねー… なるべく控えます。んで、件名があんまりだったので変更。
寝る前に書いた stash の件、Pluggable::Stash 作るまでもないかと思ったので patch。
ああ、亜流になっていく・・・
patch-file : lib-Plagger-daemonize.diff
--- Plagger.pm.org 2006-05-09 22:01:56.000000000 +0900 +++ Plagger.pm 2006-05-10 11:52:29.000000000 +0900 @@ -12,7 +12,7 @@ use UNIVERSAL::require; use base qw( Class::Accessor::Fast ); -__PACKAGE__->mk_accessors( qw(conf update subscription plugins_path cache) ); +__PACKAGE__->mk_accessors( qw(conf stash update subscription plugins_path cache) ); use Plagger::Cache; use Plagger::CacheProxy; @@ -30,11 +30,13 @@ my $self = bless { conf => {}, + stash => {}, update => Plagger::Update->new, subscription => Plagger::Subscription->new, plugins_path => {}, plugins => [], - rewrite_tasks => [] + rewrite_tasks => [], + daemon => $opt{daemon} || undef, }, $class; my $config; @@ -276,6 +278,8 @@ $self->load_plugin({ module => 'Aggregator::Simple' }); } +DAEMON_LOOP: + for my $feed ($self->subscription->feeds) { if (my $sub = $feed->aggregator) { $sub->($self, { feed => $feed }); @@ -321,6 +325,8 @@ } } + goto DAEMON_LOOP if ($self->{daemon}); + $self->run_hook('publish.finalize'); }
亜流に流れないようにするためには、やっぱり Pluggable にしたほうがよいのかー。
Class::Inspector でチェックもできるしなぁ。
うーむ・・・