From 5133633f4d9e3095fbf16bfad154ea7385a505e6 Mon Sep 17 00:00:00 2001 From: Tony Mack Date: Thu, 9 Apr 2009 19:29:50 +0000 Subject: [PATCH] fix bug --- geni/methods/get_credential.py | 5 +++-- geni/methods/resolve.py | 6 +++--- geni/methods/update.py | 4 ++-- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/geni/methods/get_credential.py b/geni/methods/get_credential.py index 44ba5fba..c324a306 100644 --- a/geni/methods/get_credential.py +++ b/geni/methods/get_credential.py @@ -40,10 +40,11 @@ class get_credential(Method): if not auth_hrn: auth_hrn = hrn auth_info = self.api.auth.get_auth_info(auth_hrn) - record = None table = self.api.auth.get_auth_table(auth_hrn) records = table.resolve('*', hrn) - + if not records: + raise RecordNotFount(hrn) + record = records[0] # verify_cancreate_credential requires that the member lists # (researchers, pis, etc) be filled in self.api.fill_record_info(record) diff --git a/geni/methods/resolve.py b/geni/methods/resolve.py index baefbdd8..7fbb1e27 100644 --- a/geni/methods/resolve.py +++ b/geni/methods/resolve.py @@ -40,6 +40,8 @@ class resolve(Method): auth_hrn = hrn table = self.api.auth.get_auth_table(auth_hrn) records = table.resolve('*', hrn) + if not records: + raise RecordNotFound(hrn) good_records = [] for record in records: try: @@ -49,11 +51,9 @@ class resolve(Method): # silently drop the ones that are missing in PL print >> log, "ignoring geni record ", record.get_name(), \ " because pl record does not exist" - table.remove(record) + table.remove(record) dicts = [record.as_dict() for record in good_records] - if not dicts: - raise RecordNotFound(hrn) return dicts diff --git a/geni/methods/update.py b/geni/methods/update.py index 5a0bfa67..11841832 100644 --- a/geni/methods/update.py +++ b/geni/methods/update.py @@ -34,7 +34,7 @@ class update(Method): returns = Parameter(int, "1 if successful") def call(self, cred, record_dict): - self.api.auth.decode_authentication(cred, "update") + self.api.auth.check(cred, "update") record = GeniRecord(dict = record_dict) type = record.get_type() self.api.auth.verify_object_permission(record.get_name()) @@ -78,7 +78,7 @@ class update(Method): update_fields[key] = all_fields[key] self.api.plshell.UpdatePerson(self.api.plauth, pointer, update_fields) - elif type == "node": + elif type == "node": self.api.plshell.UpdateNode(self.api.plauth, pointer, record.get_pl_info()) else: -- 2.43.0