[libvirt] [PATCH glib] Add support for reading/writing UUID attribute in domain config
Michal Privoznik
mprivozn at redhat.com
Tue Jul 9 16:58:13 UTC 2013
On 09.07.2013 16:14, Daniel P. Berrange wrote:
> From: "Daniel P. Berrange" <berrange at redhat.com>
>
> Signed-off-by: Daniel P. Berrange <berrange at redhat.com>
> ---
> libvirt-gconfig/libvirt-gconfig-domain.c | 33 ++++++++++++++++++++++++++++++++
> libvirt-gconfig/libvirt-gconfig-domain.h | 2 ++
> 2 files changed, 35 insertions(+)
>
> diff --git a/libvirt-gconfig/libvirt-gconfig-domain.c b/libvirt-gconfig/libvirt-gconfig-domain.c
> index eb97cd5..3c28a4a 100644
> --- a/libvirt-gconfig/libvirt-gconfig-domain.c
> +++ b/libvirt-gconfig/libvirt-gconfig-domain.c
> @@ -39,6 +39,7 @@ G_DEFINE_TYPE(GVirConfigDomain, gvir_config_domain, GVIR_CONFIG_TYPE_OBJECT);
> enum {
> PROP_0,
> PROP_NAME,
> + PROP_UUID,
> PROP_TITLE,
> PROP_DESCRIPTION,
> PROP_MEMORY,
> @@ -58,6 +59,9 @@ static void gvir_config_domain_get_property(GObject *object,
> case PROP_NAME:
> g_value_set_string(value, gvir_config_domain_get_name(domain));
> break;
> + case PROP_UUID:
> + g_value_set_string(value, gvir_config_domain_get_uuid(domain));
> + break;
> case PROP_TITLE:
> g_value_set_string(value, gvir_config_domain_get_title(domain));
> break;
> @@ -93,6 +97,9 @@ static void gvir_config_domain_set_property(GObject *object,
> case PROP_NAME:
> gvir_config_domain_set_name(domain, g_value_get_string(value));
> break;
> + case PROP_UUID:
> + gvir_config_domain_set_uuid(domain, g_value_get_string(value));
> + break;
> case PROP_TITLE:
> gvir_config_domain_set_title(domain, g_value_get_string(value));
> break;
> @@ -135,6 +142,14 @@ static void gvir_config_domain_class_init(GVirConfigDomainClass *klass)
> G_PARAM_READWRITE |
> G_PARAM_STATIC_STRINGS));
> g_object_class_install_property(object_class,
> + PROP_UUID,
> + g_param_spec_string("uuid",
> + "UUID",
> + "Domain UUID",
> + NULL,
> + G_PARAM_READWRITE |
> + G_PARAM_STATIC_STRINGS));
> + g_object_class_install_property(object_class,
> PROP_TITLE,
> g_param_spec_string("title",
> "Title",
> @@ -247,6 +262,12 @@ const char *gvir_config_domain_get_name(GVirConfigDomain *domain)
> "name");
> }
>
> +const char *gvir_config_domain_get_uuid(GVirConfigDomain *domain)
> +{
> + return gvir_config_object_get_node_content(GVIR_CONFIG_OBJECT(domain),
> + "uuid");
> +}
> +
> const char *gvir_config_domain_get_title(GVirConfigDomain *domain)
> {
> return gvir_config_object_get_node_content(GVIR_CONFIG_OBJECT(domain),
> @@ -266,6 +287,18 @@ void gvir_config_domain_set_name(GVirConfigDomain *domain, const char *name)
> }
>
> /**
> + * gvir_config_domain_set_uuid:
> + * @domain: a #GVirConfigDomain
> + * @uuid: (allow-none):
> + */
> +void gvir_config_domain_set_uuid(GVirConfigDomain *domain, const char *uuid)
> +{
> + gvir_config_object_set_node_content(GVIR_CONFIG_OBJECT(domain),
> + "uuid", uuid);
> + g_object_notify(G_OBJECT(domain), "uuid");
> +}
> +
> +/**
> * gvir_config_domain_set_title:
> * @domain: a #GVirConfigDomain
> * @title: (allow-none): title of the domain
> diff --git a/libvirt-gconfig/libvirt-gconfig-domain.h b/libvirt-gconfig/libvirt-gconfig-domain.h
> index 4951cf1..6e85374 100644
> --- a/libvirt-gconfig/libvirt-gconfig-domain.h
> +++ b/libvirt-gconfig/libvirt-gconfig-domain.h
> @@ -105,6 +105,8 @@ GVirConfigDomainVirtType gvir_config_domain_get_virt_type(GVirConfigDomain *doma
> void gvir_config_domain_set_virt_type(GVirConfigDomain *domain, GVirConfigDomainVirtType type);
> const char *gvir_config_domain_get_name(GVirConfigDomain *domain);
> void gvir_config_domain_set_name(GVirConfigDomain *domain, const char *name);
> +const char *gvir_config_domain_get_uuid(GVirConfigDomain *domain);
> +void gvir_config_domain_set_uuid(GVirConfigDomain *domain, const char *uuid);
> const char *gvir_config_domain_get_description(GVirConfigDomain *domain);
> void gvir_config_domain_set_description(GVirConfigDomain *domain, const char *description);
> guint64 gvir_config_domain_get_memory(GVirConfigDomain *domain);
>
ACK
Michal
More information about the libvir-list
mailing list