Merge remote-tracking branch 'origin/pycurl' into planetlab-4_0-branch
[plcapi.git] / PLC / ConfFiles.py
index 2244bcf..f15a574 100644 (file)
@@ -4,7 +4,7 @@
 # Mark Huang <mlhuang@cs.princeton.edu>
 # Copyright (C) 2006 The Trustees of Princeton University
 #
-# $Id: ConfFiles.py,v 1.7 2006/11/06 20:48:33 mlhuang Exp $
+# $Id: ConfFiles.py 5574 2007-10-25 20:33:17Z thierry $
 #
 
 from PLC.Faults import *
@@ -139,17 +139,17 @@ class ConfFiles(Table):
     Representation of the conf_files table in the database.
     """
 
-    def __init__(self, api, conf_file_filter = None):
-       Table.__init__(self, api, ConfFile)
+    def __init__(self, api, conf_file_filter = None, columns = None):
+       Table.__init__(self, api, ConfFile, columns)
 
         sql = "SELECT %s FROM view_conf_files WHERE True" % \
-              ", ".join(ConfFile.fields)
+              ", ".join(self.columns)
 
         if conf_file_filter is not None:
-            if isinstance(conf_file_filter, list):
+            if isinstance(conf_file_filter, (list, tuple, set)):
                 conf_file_filter = Filter(ConfFile.fields, {'conf_file_id': conf_file_filter})
             elif isinstance(conf_file_filter, dict):
                 conf_file_filter = Filter(ConfFile.fields, conf_file_filter)
-            sql += " AND (%s)" % conf_file_filter.sql(api)
+            sql += " AND (%s) %s" % conf_file_filter.sql(api)
 
         self.selectall(sql)