X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FDB%2FBackgroundJob.pm;h=c83868502a7022d955f330376c293dfb95fc05d9;hb=f964437c368c7ebf2a11e61648ccc66d5a2743d8;hp=b7b907bb77026f6144d7a602c29985a89ab814a1;hpb=e5f571cf1b7b61910b5f1b6f50188a9568a274e9;p=kivitendo-erp.git diff --git a/SL/DB/BackgroundJob.pm b/SL/DB/BackgroundJob.pm index b7b907bb7..c83868502 100644 --- a/SL/DB/BackgroundJob.pm +++ b/SL/DB/BackgroundJob.pm @@ -5,12 +5,11 @@ use strict; use DateTime::Event::Cron; use English qw(-no_match_vars); -use SL::DB::MetaSetup::BackgroundJob; -use SL::DB::Manager::BackgroundJob; +require SL::DB::MetaSetup::BackgroundJob; +require SL::DB::Manager::BackgroundJob; -use SL::DB::BackgroundJobHistory; +require SL::DB::BackgroundJobHistory; -use SL::BackgroundJob::Test; use SL::System::Process; __PACKAGE__->before_save('_before_save_set_next_run_at'); @@ -38,6 +37,7 @@ sub run { my $history; my $ok = eval { + eval "require $package" or die $@; my $result = $package->new->run($self); $history = SL::DB::BackgroundJobHistory @@ -77,6 +77,16 @@ sub data_as_hash { return {}; } +sub set_data { + my ($self, %data) = @_; + + my $data = YAML::Load($self->data); + $data->{$_} = $data{$_} for keys %data; + $self->data(YAML::Dump($data)); + + $self; +} + sub validate { my ($self) = @_;