From ad2502fe33259cf1b23be45d4980f81bb8d8c919 Mon Sep 17 00:00:00 2001
From: Tony Mack <tmack@cs.princeton.edu>
Date: Fri, 11 Dec 2009 00:21:43 +0000
Subject: [PATCH] fix bugs

---
 sfa/methods/get_gids.py | 4 +++-
 sfa/util/filter.py      | 2 +-
 sfa/util/genitable.py   | 2 +-
 3 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/sfa/methods/get_gids.py b/sfa/methods/get_gids.py
index 8998d053..6a5fe699 100644
--- a/sfa/methods/get_gids.py
+++ b/sfa/methods/get_gids.py
@@ -40,6 +40,8 @@ class get_gids(Method):
         self.api.auth.authenticateCred(cred, [cred, hrns], request_hash)
         self.api.auth.check(cred, 'getgids')
         table = GeniTable()
-        records = table.find({'hrn': [hrns]}, columns=['hrn','type','gid'])
+        if not isinstance(hrns, list):
+            hrns = [hrns]
+        records = table.find({'hrn': hrns}, columns=['hrn','type','gid'])
         
         return records 
diff --git a/sfa/util/filter.py b/sfa/util/filter.py
index ba7cdae8..5ab16640 100644
--- a/sfa/util/filter.py
+++ b/sfa/util/filter.py
@@ -96,7 +96,7 @@ class Filter(Parameter, dict):
         # The pgdb._quote function is good enough for general SQL
         # quoting, except for array types.
         if isinstance(value, (list, tuple, set)):
-            return "ARRAY[%s]" % ", ".join(map, self.quote, value)
+            return "ARRAY[%s]" % ", ".join(map(self.quote, value))
         else:
             return pgdb._quote(value)    
 
diff --git a/sfa/util/genitable.py b/sfa/util/genitable.py
index 19209695..80a4ddab 100644
--- a/sfa/util/genitable.py
+++ b/sfa/util/genitable.py
@@ -135,7 +135,7 @@ class GeniTable(list):
         # The pgdb._quote function is good enough for general SQL
         # quoting, except for array types.
         if isinstance(value, (list, tuple, set)):
-            return "ARRAY[%s]" % ", ".join(map, self.quote, value)
+            return "ARRAY[%s]" % ", ".join(map, self.quote_string, value)
         else:
             return pgdb._quote(value)
 
-- 
2.47.0