refactored to use registry manager module
authorTony Mack <tmack@cs.princeton.edu>
Sun, 3 Jan 2010 22:08:04 +0000 (22:08 +0000)
committerTony Mack <tmack@cs.princeton.edu>
Sun, 3 Jan 2010 22:08:04 +0000 (22:08 +0000)
sfa/managers/registry_manager_pl.py

index 32dacec..878b956 100644 (file)
@@ -95,7 +95,8 @@ def resolve(api, hrns, type=None, origin_hrn=None):
             records.extend([GeniRecord(dict=record).as_dict() for record in peer_records])
 
     # try resolving the remaining unfound records at the local registry
-    remaining_hrns = set(hrns).difference([record['hrn'] for record in records]) 
+    remaining_hrns = set(hrns).difference([record['hrn'] for record in records])
+    remaining_hrns = [hrn for hrn in remaining_hrns] 
     table = GeniTable()
     local_records = table.findObjects({'hrn': remaining_hrns})
     for record in local_records:
@@ -112,7 +113,7 @@ def resolve(api, hrns, type=None, origin_hrn=None):
         raise RecordNotFound(str(hrns))
 
     if type:
-        records = filter(lambda rec: rec['type'] == type, records)
+        records = filter(lambda rec: rec['type'] in [type], records)
 
     return records