CTM
view release on metacpan or search on metacpan
ex/get_bim_services.pl view on Meta::CPAN
use strict;
use Getopt::Long;
use File::Basename qw/basename/;
use Try::Tiny;
use JSON;
use CTM::ReadEM 0.181, qw/:all/;
#----> ** fonctions **
sub usage() {
return 'Aide : perldoc ' . basename($0);
}
#----> ** section principale **
my ($err, $session);
my %opts = (
x => undef,
h => undef,
lib/CTM/Base.pm view on Meta::CPAN
unlock_value
/;
#----> ** variables de classe **
our $VERSION = 0.181;
our $AUTOLOAD;
#----> ** fonctions privees (mais accessibles a l'utilisateur pour celles qui ne sont pas des references) **
sub _myErrorMessage($$) {
my ($subroutine, $message) = @_;
return "'" . $subroutine . "()' : " . $message;
}
sub _myUsageMessage($$) {
my ($namespace, $properties) = @_;
return 'USAGE : ' . (split /::/, $namespace)[-1] . '(' . $properties . ').';
}
#----> ** methodes protegees **
sub _invokeVerbose {
my ($self, $subroutine, $message) = @_;
if (caller->isa(__PACKAGE__)) {
printf STDERR "VERBOSE - '%s()' : %s", $subroutine, $message if ($self->{+_verboseObjProperty});
lib/CTM/ReadEM.pm view on Meta::CPAN
our $VERSION = 0.181;
my %_emSessionsState = (
CTM::Base::_nbSessionsInstancedClassProperty => 0,
CTM::Base::_nbSessionsConnectedClassProperty => 0
);
#----> ** fonctions privees (mais accessibles a l'utilisateur pour celles qui ne sont pas des references) **
sub _calculStartEndDayTimeInPosixTimestamp($$) {
my ($time, $ctmDailyTime) = @_;
if ($ctmDailyTime =~ /^(\+|\-)\d{4}$/) {
my ($ctmDailyHour, $ctmDailyMin) = unpack '(a2)*', substr $ctmDailyTime, 1, 4;
my ($minNow, $hoursNow, $dayNow, $monthNow, $yearNow) = split /\s+/, strftime('%M %H %d %m %Y', localtime $time);
my ($previousDay, $previousDayMonth, $previousDayYear) = split /\s+/, strftime('%d %m %Y', localtime $time - 86400);
my ($nextDay, $nextDayMonth, $nextDayYear) = split /\s+/, strftime('%d %m %Y', localtime $time + 86400);
my %time;
if ($hoursNow >= $ctmDailyHour && $minNow >= $ctmDailyMin) {
$time{start} = Date_to_Time($yearNow, $monthNow, $dayNow, $ctmDailyHour, $ctmDailyMin, 00);
$time{end} = Date_to_Time($nextDayYear, $nextDayMonth, $nextDay, $ctmDailyHour, $ctmDailyMin, 00);
lib/CTM/ReadEM.pm view on Meta::CPAN
} else {
return 0, 1;
}
}
return 0, 0;
}
#----> ** fonctions publiques **
sub getStatusColorForService($) {
my $statusTo = shift;
$statusTo = $statusTo->{status_to} if (ref $statusTo eq 'HASH');
if (defined $statusTo && $statusTo =~ /^\d+$/) {
for ($statusTo) {
$_ == 4 && return 'OK';
$_ == 8 && return 'Completed OK';
($_ >= 16 && $_ < 128) && return 'Error';
($_ >= 128 && $_ < 256) && return 'Warning';
($_ >= 256) && return 'Completed Late';
}
}
return 0;
}
sub getSeverityForAlarms($) {
my $severity = shift;
$severity = $severity->{severity} if (ref $severity eq 'HASH');
if (defined $severity) {
for ($severity) {
$_ eq 'R' && return 'Regular';
$_ eq 'U' && return 'Urgent';
$_ eq 'V' && return 'Very Urgent';
}
}
return 0;
}
sub getSeverityForExceptionAlerts($) {
my $xSeverity = shift;
$xSeverity = $xSeverity->{xseverity} if (ref $xSeverity eq 'HASH');
if (defined $xSeverity && $xSeverity =~ /^\d+$/) {
for ($xSeverity) {
$_ == 3 && return 'Warning';
$_ == 2 && return 'Error';
$_ == 1 && return 'Severe';
}
}
return 0;
}
sub getExprForStatusColorForService($) {
my ($status, $subName) = (shift, (caller 0)[3]);
croak(CTM::Base::_myErrorMessage($subName, CTM::Base::_myUsageMessage($subName, '$definedStatus'))) unless (defined $status);
for ($status) {
/^OK$/i && return sub {
shift == 4
};
/^Completed OK$/i && return sub {
shift == 8
};
/^Error$/i && return sub {
lib/CTM/ReadEM.pm view on Meta::CPAN
};
/^Completed Late$/i && return sub {
shift > 256
};
}
return sub {
shift =~ //
};
}
sub getExprForSeverityForAlarms($) {
my ($severity, $subName) = (shift, (caller 0)[3]);
croak(CTM::Base::_myErrorMessage($subName, CTM::Base::_myUsageMessage($subName, '$definedSeverity'))) unless (defined $severity);
for ($severity) {
/^Regular$/i && return sub {
shift eq 'R'
};
/^Urgent$/i && return sub {
shift eq 'U'
};
/^Very Urgent$/i && return sub {
shift eq 'V'
};
}
return sub {
shift =~ //
};
}
sub getExprForSeverityForExceptionAlerts($) {
my ($severity, $subName) = (shift, (caller 0)[3]);
croak(CTM::Base::_myErrorMessage($subName, CTM::Base::_myUsageMessage($subName, '$definedSeverity'))) unless (defined $severity);
for ($severity) {
/^Warning$/i && return sub {
shift == 3
};
/^Error$/i && return sub {
shift == 2
};
/^Severe$/i && return sub {
( run in 0.341 second using v1.01-cache-2.11-cpan-65fba6d93b7 )