Skip to content
Snippets Groups Projects
Commit 02d15cfb authored by Nigel Kukard's avatar Nigel Kukard
Browse files

Cleaned up SID (stats ID) functions

parent 033cb56b
No related branches found
No related tags found
No related merge requests found
...@@ -639,55 +639,55 @@ sub getLastStats ...@@ -639,55 +639,55 @@ sub getLastStats
} }
# Return stats based on a LID # Return stats by SID
sub getStatsByLID sub getStatsBySID
{ {
my $lid = shift; my $sid = shift;
return _getStatsBySID($sid);
}
# Max entries
my $entriesLeft = 100;
# Grab stats ID from LID # Return basic stats by SID
my $sid = getSIDFromLID($lid); sub getStatsBasicBySID
if (!defined($sid)) { {
return { }; my $sid = shift;
}
return _getStatsBySID($sid); return _getStatsBasicBySID($sid);
} }
# Return stats based on an interface # Get the stats ID from Class ID
sub getStatsByClass sub getSIDFromCID
{ {
my ($iface,$cid) = @_; my ($iface,$cid) = @_;
# Grab stats ID from LID my $identifier = "Class:$iface:$cid";
my $sid = getSIDFromCID($iface,$cid); return _getSIDFromIdentifier($identifier);
if (!defined($sid)) {
return { };
}
return _getStatsBySID($sid);
} }
# Get the stats ID from Class ID # Set the stats ID from Class ID
sub getSIDFromCID sub setSIDFromCID
{ {
my ($iface,$cid) = @_; my ($iface,$cid) = @_;
my $identifier = "Class:$iface:$cid"; my $identifier = "Class:$iface:$cid";
return _getSIDFromIdentifier($identifier); my $sid = _getSIDFromIdentifier($identifier);
if (!defined($sid)) {
$sid = _setSIDFromIdentifier($identifier);
}
return $sid;
} }
# Get the stats ID from a LID # Get the stats ID from a LID
sub getSIDFromLID sub getSIDFromLID
{ {
my ($lid) = @_; my $lid = shift;
if (defined(my $username = getLimitUsername($lid))) { if (defined(my $username = getLimitUsername($lid))) {
my $identifier = "Username:$username"; my $identifier = "Username:$username";
...@@ -698,6 +698,51 @@ sub getSIDFromLID ...@@ -698,6 +698,51 @@ sub getSIDFromLID
} }
# Set the stats ID from a LID
sub setSIDFromLID
{
my $lid = shift;
if (defined(my $username = getLimitUsername($lid))) {
my $identifier = "Username:$username";
my $sid = _getSIDFromIdentifier($identifier);
if (!defined($sid)) {
$sid = _setSIDFromIdentifier($identifier);
}
return $sid;
}
return undef;
}
# Get the stats ID from a counter
sub getSIDFromCounter
{
my $counter = shift;
my $identifier = "Counter:$counter";
return _getSIDFromIdentifier($identifier);
}
# Set the stats ID from a counter
sub setSIDFromCounter
{
my $counter = shift;
my $identifier = "Counter:$counter";
my $sid = _getSIDFromIdentifier($identifier);
if (!defined($sid)) {
$sid = _setSIDFromIdentifier($identifier);
}
return $sid;
}
# Return traffic direction # Return traffic direction
sub getTrafficDirection sub getTrafficDirection
{ {
...@@ -847,13 +892,26 @@ sub _getSIDFromIdentifier ...@@ -847,13 +892,26 @@ sub _getSIDFromIdentifier
warn "FAILED TO EXECUTE GETUSER: ".$identifierGetSTH->errstr; warn "FAILED TO EXECUTE GETUSER: ".$identifierGetSTH->errstr;
} }
return undef;
}
# Set SID from identifier in DB
sub _setSIDFromIdentifier
{
my $identifier = shift;
# Try add it to the DB # Try add it to the DB
my $identifierAddSTH = $statsPreparedStatements->{'identifier_add'}; my $identifierAddSTH = $statsPreparedStatements->{'identifier_add'};
if (my $res = $identifierAddSTH->execute($identifier)) { if (my $res = $identifierAddSTH->execute($identifier)) {
return $statsDBIdentifierMap->{$identifier} = $dbh->last_insert_id("","","",""); return $statsDBIdentifierMap->{$identifier} = $dbh->last_insert_id("","","","");
} else { } else {
# FIXME
warn "DB ADD IDENTIFIER ERROR: ".$identifierAddSTH->errstr; warn "DB ADD IDENTIFIER ERROR: ".$identifierAddSTH->errstr;
} }
return undef;
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment