From 31a7ce67fe62a2b2b4dde9813d6035a98ab07386 Mon Sep 17 00:00:00 2001 From: zhubx007 Date: Wed, 8 Aug 2018 10:25:10 +0800 Subject: [PATCH] refactor the getid method in keystoneclient/base.py Refer to a merged commit. https://review.openstack.org/#/c/588983/ TrivialFix Change-Id: Ie3a02843e35382dd24230e91534b6ed72846957d --- keystoneclient/base.py | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/keystoneclient/base.py b/keystoneclient/base.py index c466b1b9c..67edfb4c5 100644 --- a/keystoneclient/base.py +++ b/keystoneclient/base.py @@ -38,16 +38,10 @@ def getid(obj): Abstracts the common pattern of allowing both an object or an object's ID (UUID) as a parameter when dealing with relationships. """ - try: - if obj.uuid: - return obj.uuid - except AttributeError: # nosec(cjschaef): 'obj' doesn't contain attribute - # 'uuid', return attribute 'id' or the 'obj' - pass - try: - return obj.id - except AttributeError: - return obj + if getattr(obj, 'uuid', None): + return obj.uuid + else: + return getattr(obj, 'id', obj) def filter_none(**kwargs):