git://git.onelab.eu
/
plcapi.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
get rid of svn keywords once and for good
[plcapi.git]
/
PLC
/
NetworkMethods.py
diff --git
a/PLC/NetworkMethods.py
b/PLC/NetworkMethods.py
index
0dbbe43
..
a54934d
100644
(file)
--- a/
PLC/NetworkMethods.py
+++ b/
PLC/NetworkMethods.py
@@
-4,8
+4,6
@@
# Mark Huang <mlhuang@cs.princeton.edu>
# Copyright (C) 2006 The Trustees of Princeton University
#
# Mark Huang <mlhuang@cs.princeton.edu>
# Copyright (C) 2006 The Trustees of Princeton University
#
-# $Id: NetworkMethods.py,v 1.1 2006/10/10 20:23:49 mlhuang Exp $
-#
from PLC.Faults import *
from PLC.Parameter import Parameter
from PLC.Faults import *
from PLC.Parameter import Parameter
@@
-19,40
+17,35
@@
class NetworkMethod(Row):
table_name = 'network_methods'
primary_key = 'method'
table_name = 'network_methods'
primary_key = 'method'
- join_tables = ['
nodenetwork
s']
+ join_tables = ['
interface
s']
fields = {
'method': Parameter(str, "Network method", max = 20),
}
def validate_method(self, name):
fields = {
'method': Parameter(str, "Network method", max = 20),
}
def validate_method(self, name):
- # Remove leading and trailing spaces
- name = name.strip()
-
- # Make sure name is not blank after we removed the spaces
- if not name:
+ # Make sure name is not blank
+ if not len(name):
raise PLCInvalidArgument, "Network method must be specified"
raise PLCInvalidArgument, "Network method must be specified"
-
- # Make sure network method does not alredy exist
- conflicts = NetworkMethods(self.api, [name])
+
+
# Make sure network method does not alredy exist
+
conflicts = NetworkMethods(self.api, [name])
if conflicts:
raise PLCInvalidArgument, "Network method name already in use"
if conflicts:
raise PLCInvalidArgument, "Network method name already in use"
- return name
+
return name
class NetworkMethods(Table):
"""
Representation of the network_methods table in the database.
"""
class NetworkMethods(Table):
"""
Representation of the network_methods table in the database.
"""
- def __init__(self, api, names = None):
+ def __init__(self, api, methods = None):
+ Table.__init__(self, api, NetworkMethod)
+
sql = "SELECT %s FROM network_methods" % \
", ".join(NetworkMethod.fields)
sql = "SELECT %s FROM network_methods" % \
", ".join(NetworkMethod.fields)
-
- if names:
- # Separate the list into integers and strings
- sql += " WHERE method IN (%s)" % ", ".join(api.db.quote(names))
- rows = api.db.selectall(sql)
+ if methods:
+ sql += " WHERE method IN (%s)" % ", ".join( [ api.db.quote (m) for m in methods ] )
- for row in rows:
- self[row['method']] = NetworkMethod(api, row)
+ self.selectall(sql)