diff --git a/nova/objects/ec2.py b/nova/objects/ec2.py index 18e7d06bee6e..d093daf35dfe 100644 --- a/nova/objects/ec2.py +++ b/nova/objects/ec2.py @@ -19,10 +19,8 @@ from nova.objects import base from nova.objects import fields -# TODO(berrange): Remove NovaObjectDictCompat @base.NovaObjectRegistry.register -class EC2InstanceMapping(base.NovaPersistentObject, base.NovaObject, - base.NovaObjectDictCompat): +class EC2InstanceMapping(base.NovaPersistentObject, base.NovaObject): # Version 1.0: Initial version VERSION = '1.0' @@ -34,7 +32,7 @@ class EC2InstanceMapping(base.NovaPersistentObject, base.NovaObject, @staticmethod def _from_db_object(context, imap, db_imap): for field in imap.fields: - imap[field] = db_imap[field] + setattr(imap, field, db_imap[field]) imap._context = context imap.obj_reset_changes() return imap @@ -60,10 +58,8 @@ class EC2InstanceMapping(base.NovaPersistentObject, base.NovaObject, return cls._from_db_object(context, cls(), db_imap) -# TODO(berrange): Remove NovaObjectDictCompat @base.NovaObjectRegistry.register -class EC2VolumeMapping(base.NovaPersistentObject, base.NovaObject, - base.NovaObjectDictCompat): +class EC2VolumeMapping(base.NovaPersistentObject, base.NovaObject): # Version 1.0: Initial version VERSION = '1.0' @@ -75,7 +71,7 @@ class EC2VolumeMapping(base.NovaPersistentObject, base.NovaObject, @staticmethod def _from_db_object(context, vmap, db_vmap): for field in vmap.fields: - vmap[field] = db_vmap[field] + setattr(vmap, field, db_vmap[field]) vmap._context = context vmap.obj_reset_changes() return vmap @@ -101,10 +97,8 @@ class EC2VolumeMapping(base.NovaPersistentObject, base.NovaObject, return cls._from_db_object(context, cls(context), db_vmap) -# TODO(berrange): Remove NovaObjectDictCompat @base.NovaObjectRegistry.register -class EC2SnapshotMapping(base.NovaPersistentObject, base.NovaObject, - base.NovaObjectDictCompat): +class EC2SnapshotMapping(base.NovaPersistentObject, base.NovaObject): # Version 1.0: Initial version VERSION = '1.0' @@ -116,7 +110,7 @@ class EC2SnapshotMapping(base.NovaPersistentObject, base.NovaObject, @staticmethod def _from_db_object(context, smap, db_smap): for field in smap.fields: - smap[field] = db_smap[field] + setattr(smap, field, db_smap[field]) smap._context = context smap.obj_reset_changes() return smap diff --git a/nova/tests/unit/objects/test_ec2.py b/nova/tests/unit/objects/test_ec2.py index 7855af5502b7..f9b4403ae7b5 100644 --- a/nova/tests/unit/objects/test_ec2.py +++ b/nova/tests/unit/objects/test_ec2.py @@ -34,7 +34,7 @@ class _TestEC2InstanceMapping(object): @staticmethod def _compare(test, db, obj): for field, value in db.items(): - test.assertEqual(db[field], obj[field]) + test.assertEqual(db[field], getattr(obj, field)) def test_create(self): imap = ec2_obj.EC2InstanceMapping(context=self.context) @@ -75,7 +75,7 @@ class _TestEC2VolumeMapping(object): @staticmethod def _compare(test, db, obj): for field, value in db.items(): - test.assertEqual(db[field], obj[field]) + test.assertEqual(db[field], getattr(obj, field)) def test_create(self): vmap = ec2_obj.EC2VolumeMapping(context=self.context) @@ -116,7 +116,7 @@ class _TestEC2SnapshotMapping(object): @staticmethod def _compare(test, db, obj): for field, value in db.items(): - test.assertEqual(db[field], obj[field]) + test.assertEqual(db[field], getattr(obj, field)) def test_create(self): smap = ec2_obj.EC2SnapshotMapping(context=self.context)