diff options
Diffstat (limited to 'lib/OpenSLX/DistroUtils/InitFile.pm')
-rw-r--r-- | lib/OpenSLX/DistroUtils/InitFile.pm | 44 |
1 files changed, 40 insertions, 4 deletions
diff --git a/lib/OpenSLX/DistroUtils/InitFile.pm b/lib/OpenSLX/DistroUtils/InitFile.pm index a77f8ea7..a7e5da5d 100644 --- a/lib/OpenSLX/DistroUtils/InitFile.pm +++ b/lib/OpenSLX/DistroUtils/InitFile.pm @@ -143,11 +143,47 @@ sub setDesc { return $self; } +sub addFunction { + my $self = shift; + my $name = shift; + my $script = shift; + my $flags = shift || {}; + my $priority = $flags->{priority} || 5; + + push(@{$self->{'configHash'}->{'highlevelConfig'}}, + { + name => $name, + script => $script, + priority => $priority, + type => 'function' + }); + return 1; +} + +sub addFunctionCall { + my $self = shift; + my $function = shift; + my $block = shift; + my $flags = shift; + my $priority = $flags->{priority} || 5; + my $parameters = $flags->{parameters} || ""; + + push(@{$self->{'configHash'}->{'highlevelConfig'}}, + { + function => $function, + block => $block, + parameters => $parameters, + priority => $priority, + type => 'functionCall' + }); + return 1; +} + sub addScript { - my $self = shift; - my $name = shift; - my $script = shift; - my $flags = shift || {}; + my $self = shift; + my $name = shift; + my $script = shift; + my $flags = shift || {}; my $block = $flags->{block} || 'start'; my $required = $flags->{required} || 1; my $errormsg = $flags->{errormsg} || "$name failed!"; |