summaryrefslogtreecommitdiffstats
path: root/nova/objects
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2013-06-17 23:21:43 +0000
committerGerrit Code Review <review@openstack.org>2013-06-17 23:21:43 +0000
commitb57b6d76328e22db56600e02ae531b6f68ad9f53 (patch)
treebbf8b570e33596620205bb3bce17d27274ce98ff /nova/objects
parent73dfbeba11aab5337b72f2af9515eed5dae093e9 (diff)
parente91c3d141c957485dcb66c73e84b41b775e4268b (diff)
Merge "Make NovaObject support extra attributes in items()"
Diffstat (limited to 'nova/objects')
-rw-r--r--nova/objects/base.py6
-rw-r--r--nova/objects/instance.py2
2 files changed, 6 insertions, 2 deletions
diff --git a/nova/objects/base.py b/nova/objects/base.py
index ec1ada6aa..398e70ce9 100644
--- a/nova/objects/base.py
+++ b/nova/objects/base.py
@@ -182,6 +182,7 @@ class NovaObject(object):
'deleted_at': obj_utils.datetime_or_str_or_none,
'deleted': bool,
}
+ obj_extra_fields = []
def __init__(self):
self._changed_fields = set()
@@ -330,8 +331,9 @@ class NovaObject(object):
NOTE(danms): May be removed in the future.
"""
- for name in self.fields:
- if hasattr(self, get_attrname(name)):
+ for name in self.fields.keys() + self.obj_extra_fields:
+ if (hasattr(self, get_attrname(name)) or
+ name in self.obj_extra_fields):
yield name, getattr(self, name)
items = lambda self: list(self.iteritems())
diff --git a/nova/objects/instance.py b/nova/objects/instance.py
index cd08c4c4f..c1b765f29 100644
--- a/nova/objects/instance.py
+++ b/nova/objects/instance.py
@@ -110,6 +110,8 @@ class Instance(base.NovaObject):
}
+ obj_extra_fields = ['name']
+
@property
def name(self):
try: