From: ivan Date: Tue, 16 Apr 2002 21:24:45 +0000 (+0000) Subject: auto-use export classes X-Git-Tag: freeside_1_4_0_pre12~80 X-Git-Url: http://git.freeside.biz/gitweb/?a=commitdiff_plain;h=55dee0c595ea28dde3d2a30e1f238fc322e6e869;p=freeside.git auto-use export classes --- diff --git a/FS/bin/freeside-queued b/FS/bin/freeside-queued index f6226cca1..49b532ec3 100644 --- a/FS/bin/freeside-queued +++ b/FS/bin/freeside-queued @@ -100,6 +100,22 @@ while (1) { if $FS::svc_acct::icradius_dbh; forksuidsetup($user); + #auto-use export classes... + if ( $ljob->job =~ /(FS::part_export::\w+)::/ ) { + my $class = $1; + eval "use $class;"; + if ( $@ ) { + warn "job use $class failed"; + my %hash = $ljob->hash; + $hash{'status'} = 'failed'; + $hash{'statustext'} = $@; + my $fjob = new FS::queue( \%hash ); + my $error = $fjob->replace($ljob); + die $error if $error; + exit; #end-of-kid + }; + } + my $eval = "&". $ljob->job. '(@args);'; warn "running $eval"; eval $eval; #throw away return value? suppose so