]> git.evergreen-ils.org Git - Evergreen.git/blob - Open-ILS/src/perlmods/OpenILS/Utils/ScriptRunner.pm
c3d4e2e9f9d9bdc1a4921ea8d90c66596b612ccc
[Evergreen.git] / Open-ILS / src / perlmods / OpenILS / Utils / ScriptRunner.pm
1 package OpenILS::Utils::ScriptRunner;
2 use strict; use warnings;
3 use OpenSRF::Utils::Logger qw(:logger);
4 use OpenILS::Utils::SpiderMonkey;
5
6 sub new {
7
8         my $class = shift;
9         my %params = @_;
10         $class = ref($class) || $class;
11
12         my $type = $params{type} || 'js';
13         my $file = $params{file};
14         my $thingy = OpenILS::Utils::SpiderMonkey->new( $file ) if( $type =~ /js/i );
15
16         if($thingy) { 
17                 $thingy->init; 
18                 return $thingy;
19
20         } else { 
21                 $logger->error("Unknown script type in OpenILS::Utils::ScriptRunner"); 
22         }
23         return undef;
24 }
25
26 sub init {$logger->error("METHOD NOT DEFINED"); }
27 sub context {$logger->error("METHOD NOT DEFINED"); }
28 sub insert_fm { $logger->error("METHOD NOT DEFINED"); }
29 sub insert_hash { $logger->error("METHOD NOT DEFINED"); }
30 # loads an external script
31 sub load { $logger->error("METHOD NOT DEFINED"); }
32
33 # Runs an external script.
34 # @return 1 on success, 0 on failure
35 sub run { $logger->error("METHOD NOT DEFINED"); }
36 # load an external library
37 sub load_lib { $logger->error("METHOD NOT DEFINED"); }
38
39 1;