NAME
perfSONAR_PS::Services::MP::Config::PingER - Configuration module for the support of scheduled tests for PingER
DESCRIPTION
This class inherits perfSONAR_PS::MP::Config::Schedule in order to provide an interface to the test periods and offsets defined for PingER tests.
In this implementation, we only handle the topology-like PingER schema.
SYNOPSIS
# create the configuration object
my $schedule = perfSONAR_PS::Services::MP::Config::PingER->new();
# set the configuration file to use (note that the definitions of how to
# parse for the appropriate test periods, and offset times etc for the
#individual tests should be defined in an inherited class.
$schedule->configFile( 'some-config-file-path' );
if ( $schedule->load() == 0 ) {
# get a list of the test id's to run
my @testids = $schedule->getAllTestIds();
# determine the period of time from now until the next test should run
my $time = $schedule->getTestTimeFromNow( $testids[0] );
print "The next test for '$testid' will run in $time seconds from now.";
} else {
print "Something went wrong with parsing file '" . $schedule->configFile() . "'\n";
return -1;
}
new
constructor for object
configFile
accessor/mutator method for the configuration file
config
accessor/mutator method for the configuration
getAllTestIds()
Returns a list of all the testids that have been parsed.
load( $file )
Loads and parses the configuration file with schedule information '$file'. If no argument is passed, then will use the file defined in accessor/mutator $self->configFile().
Returns 0 = everything parsed okay -1 = parsing and or loading failed.
getTestById( $testid )
Returns the test information for $testid. Datastructure is a hash of the following format
$hash->{$testid}->{packetSize} = n (bytes) $hash->{$testid}->{count} = n (packets) $hash->{$testid}->{ttl} = n (hops) $hash->{$testid}->{interval} = n (secs) $hash->{$testid}->{offset} = n (secs) $hash->{$testid}->{measurementPeriod} = n (secs) $hash->{$testid}->{measurementOffset} = n (secs)
getTextNextTimeFromNow( $testid )
Determines the amonut of time from now until the next test for $testid should start.
Returns n = seconds til next test undef = testid does not exist