summaryrefslogtreecommitdiffstats
path: root/config-db/OpenSLX
diff options
context:
space:
mode:
authorOliver Tappe2007-12-27 23:35:57 +0100
committerOliver Tappe2007-12-27 23:35:57 +0100
commit230200926c8332c8b6d16e5f4146b34ed8c403bb (patch)
treea3ebbb270e815b5125028fe94072511f94d1c2b8 /config-db/OpenSLX
parent* Changed naming scheme for exports from <vendor-os>:<type> to (diff)
downloadcore-230200926c8332c8b6d16e5f4146b34ed8c403bb.tar.gz
core-230200926c8332c8b6d16e5f4146b34ed8c403bb.tar.xz
core-230200926c8332c8b6d16e5f4146b34ed8c403bb.zip
* added more tests for basic DB-features: group, global_info and
client_system_ref git-svn-id: http://svn.openslx.org/svn/openslx/trunk@1435 95ad53e4-c205-0410-b2fa-d234c58c8868
Diffstat (limited to 'config-db/OpenSLX')
-rw-r--r--config-db/OpenSLX/ConfigDB.pm12
-rw-r--r--config-db/OpenSLX/MetaDB/DBI.pm51
2 files changed, 43 insertions, 20 deletions
diff --git a/config-db/OpenSLX/ConfigDB.pm b/config-db/OpenSLX/ConfigDB.pm
index 30809b08..9030311d 100644
--- a/config-db/OpenSLX/ConfigDB.pm
+++ b/config-db/OpenSLX/ConfigDB.pm
@@ -1106,6 +1106,8 @@ sub changeGlobalInfo
my $id = shift;
my $value = shift;
+ return if !defined $self->{'meta-db'}->fetchGlobalInfo($id);
+
return $self->{'meta-db'}->changeGlobalInfo($id, $value);
}
@@ -1137,7 +1139,8 @@ sub addSystem
foreach my $valRow (@$valRows) {
if (!$valRow->{kernel}) {
$valRow->{kernel} = 'vmlinuz';
- warn(
+ vlog(
+ 1,
_tr(
"setting kernel of system '%s' to 'vmlinuz'!",
$valRow->{name}
@@ -1764,6 +1767,13 @@ sub addGroup
my $self = shift;
my $valRows = _aref(shift);
+ _checkCols($valRows, 'group', qw(name));
+
+ foreach my $valRow (@$valRows) {
+ if (!defined $valRow->{priority}) {
+ $valRow->{priority} = '50';
+ }
+ }
return $self->{'meta-db'}->addGroup($valRows);
}
diff --git a/config-db/OpenSLX/MetaDB/DBI.pm b/config-db/OpenSLX/MetaDB/DBI.pm
index 380a1847..a1b782c1 100644
--- a/config-db/OpenSLX/MetaDB/DBI.pm
+++ b/config-db/OpenSLX/MetaDB/DBI.pm
@@ -103,6 +103,10 @@ sub _doSelect
push @vals, $row;
}
}
+
+ # return undef if there's no result in scalar context
+ return if !wantarray();
+
return @vals;
}
@@ -183,7 +187,7 @@ sub fetchGlobalInfo
my $id = shift;
return if !length($id);
- my $sql = "SELECT * FROM global_info WHERE id = " . $self->quote($id);
+ my $sql = "SELECT value FROM global_info WHERE id = " . $self->quote($id);
return $self->_doSelect($sql, 'value');
}
@@ -310,10 +314,11 @@ sub fetchGroupByFilter
$resultCols = '*' unless (defined $resultCols);
my $sql = "SELECT $resultCols FROM groups";
- my $connector;
+ my ($connector, $quotedVal);
foreach my $col (keys %$filter) {
$connector = !defined $connector ? 'WHERE' : 'AND';
- $sql .= " $connector $col = '$filter->{$col}'";
+ $quotedVal = $self->{dbh}->quote($filter->{$col});
+ $sql .= " $connector $col = $quotedVal";
}
return $self->_doSelect($sql);
}
@@ -628,8 +633,10 @@ sub setClientIDsOfSystem
my $clientIDs = shift;
my @currClients = $self->fetchClientIDsOfSystem($systemID);
- return $self->_updateRefTable('client_system_ref', $systemID, $clientIDs,
- 'system_id', 'client_id', \@currClients);
+ return $self->_updateRefTable(
+ 'client_system_ref', $systemID, $clientIDs, 'system_id', 'client_id',
+ \@currClients
+ );
}
sub setGroupIDsOfSystem
@@ -639,8 +646,10 @@ sub setGroupIDsOfSystem
my $groupIDs = shift;
my @currGroups = $self->fetchGroupIDsOfSystem($systemID);
- return $self->_updateRefTable('group_system_ref', $systemID, $groupIDs,
- 'system_id', 'group_id', \@currGroups);
+ return $self->_updateRefTable(
+ 'group_system_ref', $systemID, $groupIDs, 'system_id', 'group_id',
+ \@currGroups
+ );
}
sub addClient
@@ -675,9 +684,10 @@ sub setSystemIDsOfClient
my $systemIDs = shift;
my @currSystems = $self->fetchSystemIDsOfClient($clientID);
- $self->_updateRefTable('client_system_ref', $clientID, $systemIDs,
- 'client_id', 'system_id', \@currSystems);
- return;
+ return $self->_updateRefTable(
+ 'client_system_ref', $clientID, $systemIDs, 'client_id', 'system_id',
+ \@currSystems
+ );
}
sub setGroupIDsOfClient
@@ -687,9 +697,10 @@ sub setGroupIDsOfClient
my $groupIDs = shift;
my @currGroups = $self->fetchGroupIDsOfClient($clientID);
- $self->_updateRefTable('group_client_ref', $clientID, $groupIDs,
- 'client_id', 'group_id', \@currGroups);
- return;
+ return $self->_updateRefTable(
+ 'group_client_ref', $clientID, $groupIDs, 'client_id', 'group_id',
+ \@currGroups
+ );
}
sub addGroup
@@ -724,9 +735,10 @@ sub setClientIDsOfGroup
my $clientIDs = shift;
my @currClients = $self->fetchClientIDsOfGroup($groupID);
- $self->_updateRefTable('group_client_ref', $groupID, $clientIDs, 'group_id',
- 'client_id', \@currClients);
- return;
+ return $self->_updateRefTable(
+ 'group_client_ref', $groupID, $clientIDs, 'group_id', 'client_id',
+ \@currClients
+ );
}
sub setSystemIDsOfGroup
@@ -736,9 +748,10 @@ sub setSystemIDsOfGroup
my $systemIDs = shift;
my @currSystems = $self->fetchSystemIDsOfGroup($groupID);
- $self->_updateRefTable('group_system_ref', $groupID, $systemIDs, 'group_id',
- 'system_id', \@currSystems);
- return;
+ return $self->_updateRefTable(
+ 'group_system_ref', $groupID, $systemIDs, 'group_id', 'system_id',
+ \@currSystems
+ );
}
################################################################################