mourningdove/cgi-bin/DW/Worker/LatestFeed.pm

40 lines
1 KiB
Perl
Raw Permalink Normal View History

2026-05-24 01:03:05 +00:00
#!/usr/bin/perl
#
# DW::Worker::LatestFeed
#
# Intermediary worker that lets us pipeline new items so we only have one
# task that can process them at a time.
#
# Authors:
# Mark Smith <mark@dreamwidth.org>
#
# Copyright (c) 2009 by Dreamwidth Studios, LLC.
#
# This program is free software; you may redistribute it and/or modify it under
# the same terms as Perl itself. For a copy of the license, please reference
# 'perldoc perlartistic' or 'perldoc perlgpl'.
#
package DW::Worker::LatestFeed;
use strict;
use base 'TheSchwartz::Worker';
use DW::LatestFeed;
sub work {
my ( $class, $job ) = @_;
my $opts = $job->arg;
# FIXME: we might want to lock here, to protect against the sysadmin running
# more than one copy of this job? otoh, we should just document that there
# should only ever be one of these running.
# all we do is pass this back to the proper module, this keeps the logic in
# one place so we don't have to track it down through four files :)
DW::LatestFeed->_process_item($opts);
$job->completed;
}
1;