package Foorum::TheSchwartz::Worker::RemoveObject; use strict; use warnings; our $VERSION = '1.001000'; use base qw( TheSchwartz::Moosified::Worker ); use Foorum::SUtils qw/schema/; use Foorum::XUtils qw/cache/; use Foorum::Logger qw/error_log/; sub work { my $class = shift; my $job = shift; my ($args) = $job->arg; my $schema = schema(); my $cache = cache(); #error_log( $schema, 'info', $log_text ); $job->completed(); } 1; __END__ =head1 NAME Foorum::TheSchwartz::Worker::RemoveObject - remove object in Foorum =head1 DESCRIPTION we move 'remove object' here to let HTTP/Apache handle process more faster. =head1 WORKFLOW Generally we have a table 'object_remove' record the object_type+object_id. (Here we do B use TheSchwartz databse because we need log them for a long time while TheSchwartz remove database records after done or failure.) =head1 USAGE use Foorum::SUtils qw/schema/; use Foorum::XUtils qw/theschwartz/; my $schema = schema(); $schema->resultset('ObjectRemove')->create( { # or $c->model('DBIC') object_type => 'topic', object_id => 12, time => time(), } ); my $client = theschwartz(); $client->insert('Foorum::TheSchwartz::Worker::RemoveObject'); =head1 AUTHOR Fayland Lam =cut