App::ClusterSSH::Base(3pm)

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->stdout_output(@);
    Output text on STDOUT.

$obj->parent;
    Returned the object that is the parent of this one, if it was set when the object was created

%obj->options;
    Accessor to configured options, if it is set up by this point

$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

$sort = $obj->sort
    Code reference used to sort lists; if configured (and installed) use Sort;:Naturally, else use perl sort

%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)