[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3 52/53] tests: Use field property at check-qom-proplist test ca
From: |
Eduardo Habkost |
Subject: |
[PATCH v3 52/53] tests: Use field property at check-qom-proplist test case |
Date: |
Thu, 12 Nov 2020 16:43:49 -0500 |
Use the field property system for the "sv" property used at
check-qom-proplist.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
---
Changes v2 -> v3:
* Don't register a instance field property, as
object_property_add_field() is an internal API
Changes v1 -> v2:
* Use PROP_* and object_class_property_add_field() interface
---
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: "Daniel P. Berrangé" <berrange@redhat.com>
Cc: Eduardo Habkost <ehabkost@redhat.com>
Cc: qemu-devel@nongnu.org
---
tests/check-qom-proplist.c | 39 ++++----------------------------------
1 file changed, 4 insertions(+), 35 deletions(-)
diff --git a/tests/check-qom-proplist.c b/tests/check-qom-proplist.c
index 1b76581980..2ded6203fb 100644
--- a/tests/check-qom-proplist.c
+++ b/tests/check-qom-proplist.c
@@ -25,7 +25,7 @@
#include "qemu/module.h"
#include "qemu/option.h"
#include "qemu/config-file.h"
-#include "qom/object_interfaces.h"
+#include "qom/qom.h"
#define TYPE_DUMMY "qemu-dummy"
@@ -103,26 +103,6 @@ static int dummy_get_av(Object *obj,
return dobj->av;
}
-
-static void dummy_set_sv(Object *obj,
- const char *value,
- Error **errp)
-{
- DummyObject *dobj = DUMMY_OBJECT(obj);
-
- g_free(dobj->sv);
- dobj->sv = g_strdup(value);
-}
-
-static char *dummy_get_sv(Object *obj,
- Error **errp)
-{
- DummyObject *dobj = DUMMY_OBJECT(obj);
-
- return g_strdup(dobj->sv);
-}
-
-
static void dummy_init(Object *obj)
{
object_property_add_bool(obj, "bv",
@@ -130,12 +110,11 @@ static void dummy_init(Object *obj)
dummy_set_bv);
}
-
static void dummy_class_init(ObjectClass *cls, void *data)
{
- object_class_property_add_str(cls, "sv",
- dummy_get_sv,
- dummy_set_sv);
+ object_class_property_add_field(cls, "sv",
+ PROP_STRING(DummyObject, sv),
+ prop_allow_set_always);
object_class_property_add_enum(cls, "av",
"DummyAnimal",
&dummy_animal_map,
@@ -143,21 +122,11 @@ static void dummy_class_init(ObjectClass *cls, void *data)
dummy_set_av);
}
-
-static void dummy_finalize(Object *obj)
-{
- DummyObject *dobj = DUMMY_OBJECT(obj);
-
- g_free(dobj->sv);
-}
-
-
static const TypeInfo dummy_info = {
.name = TYPE_DUMMY,
.parent = TYPE_OBJECT,
.instance_size = sizeof(DummyObject),
.instance_init = dummy_init,
- .instance_finalize = dummy_finalize,
.class_size = sizeof(DummyObjectClass),
.class_init = dummy_class_init,
.interfaces = (InterfaceInfo[]) {
--
2.28.0
- [PATCH v3 41/53] qdev: Make object_property_add_field() copy the Property struct, (continued)
- [PATCH v3 41/53] qdev: Make object_property_add_field() copy the Property struct, Eduardo Habkost, 2020/11/12
- [PATCH v3 44/53] qom: Add new qom.h header, Eduardo Habkost, 2020/11/12
- [PATCH v3 43/53] qdev: Move static_prop_release_dynamic_prop() closer to its usage, Eduardo Habkost, 2020/11/12
- [PATCH v3 42/53] qdev: Reuse object_property_add_field() when adding array elements, Eduardo Habkost, 2020/11/12
- [PATCH v3 45/53] qdev: Move core field property code to QOM, Eduardo Habkost, 2020/11/12
- [PATCH v3 46/53] qdev: Move base property types to qom/property-types.c, Eduardo Habkost, 2020/11/12
- [PATCH v3 47/53] qom: Include static property API reference in documentation, Eduardo Habkost, 2020/11/12
- [PATCH v3 48/53] qom: object_class_property_add_field() function, Eduardo Habkost, 2020/11/12
- [PATCH v3 49/53] qom: FIELD_PROP macro, Eduardo Habkost, 2020/11/12
- [PATCH v3 50/53] qom: Delete DEFINE_PROP_*SIGNED_NODEFAULT macro, Eduardo Habkost, 2020/11/12
- [PATCH v3 52/53] tests: Use field property at check-qom-proplist test case,
Eduardo Habkost <=
- [PATCH v3 51/53] qom: PROP_* macros, Eduardo Habkost, 2020/11/12
- [PATCH v3 53/53] sev: Use class properties, Eduardo Habkost, 2020/11/12