NAME
App::ClusterSSH::Base - Base object provding utility functions
SYNOPSIS
use base qw/ App::ClusterSSH::Base /;
# in object new method
sub new {
( $class, $arg_ref ) = @_;
my $self = $class->SUPER::new($arg_ref);
return $self;
}
DESCRIPTION
Base object to provide some utility functions on objects - should not be used directly
METHODS
These extra methods are provided on the object
- $obj = App::ClusterSSH::Base->new({ arg => val, });
-
Creates object. In higher debug levels the args are printed out.
- $obj->id
-
Return the unique id of the object for use in subclasses, such as
$info_for{ $self->id } = $info
- $obj->debug_level();
-
Returns current debug level
- $obj->set_debug_level( n )
-
Set debug level to 'n' for all child objects.
- $obj->debug($level, @text)
-
Output @text on STDOUT if $level is the same or lower that debug_level
- $obj->set_lang
-
Set the Locale::Maketext language. Defaults to 'en'. Expects the App::ClusterSSH/L10N/{lang}.pm module to exist and contain all relevant translations, else defaults to English.
- $obj->loc('text to translate [_1]')
-
Using the App::ClusterSSH/L10N/{lang}.pm module convert the given text to appropriate language. See App::ClusterSSH::L10N for more details. Essentially a wrapper to maketext in Locale::Maketext
- $obj->output(@);
-
Output text on STDOUT.
- $obj->exit;
-
Stub to allow program to exit neatly from wherever in the code
- $config = $obj->config;
-
Returns whatever configuration object has been set up. Croaks if set_config hasnt been called
- $obj->set_config($config);
-
Set the config to the given value - croaks if has already been called
- %results = $obj->load_file( filename => '/path/to/file', type => '(cluster|config}' )
-
Load in the specified file and return a hash, parsing the file depending on wther it is a config file (key = value) or cluster file (key value)
AUTHOR
Duncan Ferguson, <duncan_j_ferguson at yahoo.co.uk>
LICENSE AND COPYRIGHT
Copyright 1999-2010 Duncan Ferguson.
This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.
See http://dev.perl.org/licenses/ for more information.