[libvirt] [libvirt-glib 1/2] Fix gvir_config_domain_disk_set_target_bus API
The bus type is actually an enum, let's reflect that in libvirt-gconfig API --- libvirt-gconfig/libvirt-gconfig-domain-disk.c | 8 ++++++-- libvirt-gconfig/libvirt-gconfig-domain-disk.h | 13 ++++++++++++- libvirt-gconfig/libvirt-gconfig.sym | 1 + libvirt-gconfig/tests/test-domain-create.c | 2 +- 4 files changed, 20 insertions(+), 4 deletions(-) diff --git a/libvirt-gconfig/libvirt-gconfig-domain-disk.c b/libvirt-gconfig/libvirt-gconfig-domain-disk.c index 502cf43..b52f4a5 100644 --- a/libvirt-gconfig/libvirt-gconfig-domain-disk.c +++ b/libvirt-gconfig/libvirt-gconfig-domain-disk.c @@ -159,14 +159,18 @@ void gvir_config_domain_disk_set_driver_type(GVirConfigDomainDisk *disk, } void gvir_config_domain_disk_set_target_bus(GVirConfigDomainDisk *disk, - const char *bus) + GVirConfigDomainDiskBus bus) { GVirConfigObject *node; g_return_if_fail(GVIR_IS_CONFIG_DOMAIN_DISK(disk)); node = gvir_config_object_add_child(GVIR_CONFIG_OBJECT(disk), "target"); g_return_if_fail(GVIR_IS_CONFIG_OBJECT(node)); - gvir_config_object_set_attribute(node, "bus", bus, NULL); + gvir_config_object_set_attribute_with_type(node, + "bus", + GVIR_TYPE_CONFIG_DOMAIN_DISK_BUS, + bus, + NULL); g_object_unref(G_OBJECT(node)); } diff --git a/libvirt-gconfig/libvirt-gconfig-domain-disk.h b/libvirt-gconfig/libvirt-gconfig-domain-disk.h index b90b2bc..bc63dfe 100644 --- a/libvirt-gconfig/libvirt-gconfig-domain-disk.h +++ b/libvirt-gconfig/libvirt-gconfig-domain-disk.h @@ -64,6 +64,17 @@ typedef enum { } GVirConfigDomainDiskType; typedef enum { + GVIR_CONFIG_DOMAIN_DISK_BUS_IDE, + GVIR_CONFIG_DOMAIN_DISK_BUS_FDC, + GVIR_CONFIG_DOMAIN_DISK_BUS_SCSI, + GVIR_CONFIG_DOMAIN_DISK_BUS_VIRTIO, + GVIR_CONFIG_DOMAIN_DISK_BUS_XEN, + GVIR_CONFIG_DOMAIN_DISK_BUS_USB, + GVIR_CONFIG_DOMAIN_DISK_BUS_UML, + GVIR_CONFIG_DOMAIN_DISK_BUS_SATA +} GVirConfigDomainDiskBus; + +typedef enum { GVIR_CONFIG_DOMAIN_DISK_GUEST_DEVICE_DISK, GVIR_CONFIG_DOMAIN_DISK_GUEST_DEVICE_FLOPPY, GVIR_CONFIG_DOMAIN_DISK_GUEST_DEVICE_CDROM @@ -94,7 +105,7 @@ void gvir_config_domain_disk_set_driver_name(GVirConfigDomainDisk *disk, void gvir_config_domain_disk_set_driver_type(GVirConfigDomainDisk *disk, const char *driver_type); void gvir_config_domain_disk_set_target_bus(GVirConfigDomainDisk *disk, - const char *bus); + GVirConfigDomainDiskBus bus); void gvir_config_domain_disk_set_target_dev(GVirConfigDomainDisk *disk, const char *dev); G_END_DECLS diff --git a/libvirt-gconfig/libvirt-gconfig.sym b/libvirt-gconfig/libvirt-gconfig.sym index 6adc2c2..d0c35d2 100644 --- a/libvirt-gconfig/libvirt-gconfig.sym +++ b/libvirt-gconfig/libvirt-gconfig.sym @@ -54,6 +54,7 @@ LIBVIRT_GCONFIG_0.0.1 { gvir_config_domain_device_get_type; gvir_config_domain_disk_get_type; + gvir_config_domain_disk_bus_get_type; gvir_config_domain_disk_guest_device_type_get_type; gvir_config_domain_disk_snapshot_type_get_type; gvir_config_domain_disk_type_get_type; diff --git a/libvirt-gconfig/tests/test-domain-create.c b/libvirt-gconfig/tests/test-domain-create.c index 42aa09b..ea3a3ea 100644 --- a/libvirt-gconfig/tests/test-domain-create.c +++ b/libvirt-gconfig/tests/test-domain-create.c @@ -100,7 +100,7 @@ int main(void) gvir_config_domain_disk_set_source(disk, "/tmp/foo/bar"); gvir_config_domain_disk_set_driver_name(disk, "qemu"); gvir_config_domain_disk_set_driver_type(disk, "qcow2"); - gvir_config_domain_disk_set_target_bus(disk, "ide"); + gvir_config_domain_disk_set_target_bus(disk, GVIR_CONFIG_DOMAIN_DISK_BUS_IDE); gvir_config_domain_disk_set_target_dev(disk, "hda"); devices = g_list_append(devices, GVIR_CONFIG_DOMAIN_DEVICE(disk)); -- 1.7.7.3
Put all the items available in virDomainVirt --- libvirt-gconfig/libvirt-gconfig-domain.h | 14 ++++++++++++-- 1 files changed, 12 insertions(+), 2 deletions(-) diff --git a/libvirt-gconfig/libvirt-gconfig-domain.h b/libvirt-gconfig/libvirt-gconfig-domain.h index cfc6452..2b631ea 100644 --- a/libvirt-gconfig/libvirt-gconfig-domain.h +++ b/libvirt-gconfig/libvirt-gconfig-domain.h @@ -62,11 +62,21 @@ struct _GVirConfigDomainClass }; typedef enum { - GVIR_CONFIG_DOMAIN_VIRT_XEN, GVIR_CONFIG_DOMAIN_VIRT_QEMU, - GVIR_CONFIG_DOMAIN_VIRT_KVM, GVIR_CONFIG_DOMAIN_VIRT_KQEMU, + GVIR_CONFIG_DOMAIN_VIRT_KVM, + GVIR_CONFIG_DOMAIN_VIRT_XEN, GVIR_CONFIG_DOMAIN_VIRT_LXC, + GVIR_CONFIG_DOMAIN_VIRT_UML, + GVIR_CONFIG_DOMAIN_VIRT_OPENVZ, + GVIR_CONFIG_DOMAIN_VIRT_VSERVER, + GVIR_CONFIG_DOMAIN_VIRT_LDOM, + GVIR_CONFIG_DOMAIN_VIRT_TEST, + GVIR_CONFIG_DOMAIN_VIRT_VMWARE, + GVIR_CONFIG_DOMAIN_VIRT_HYPERV, + GVIR_CONFIG_DOMAIN_VIRT_VBOX, + GVIR_CONFIG_DOMAIN_VIRT_ONE, + GVIR_CONFIG_DOMAIN_VIRT_PHYP } GVirConfigDomainVirtType; typedef enum { -- 1.7.7.3
On Wed, Dec 07, 2011 at 12:14:28PM +0100, Christophe Fergeau wrote:
Put all the items available in virDomainVirt --- libvirt-gconfig/libvirt-gconfig-domain.h | 14 ++++++++++++-- 1 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/libvirt-gconfig/libvirt-gconfig-domain.h b/libvirt-gconfig/libvirt-gconfig-domain.h index cfc6452..2b631ea 100644 --- a/libvirt-gconfig/libvirt-gconfig-domain.h +++ b/libvirt-gconfig/libvirt-gconfig-domain.h @@ -62,11 +62,21 @@ struct _GVirConfigDomainClass };
typedef enum { - GVIR_CONFIG_DOMAIN_VIRT_XEN, GVIR_CONFIG_DOMAIN_VIRT_QEMU, - GVIR_CONFIG_DOMAIN_VIRT_KVM, GVIR_CONFIG_DOMAIN_VIRT_KQEMU, + GVIR_CONFIG_DOMAIN_VIRT_KVM, + GVIR_CONFIG_DOMAIN_VIRT_XEN, GVIR_CONFIG_DOMAIN_VIRT_LXC, + GVIR_CONFIG_DOMAIN_VIRT_UML, + GVIR_CONFIG_DOMAIN_VIRT_OPENVZ, + GVIR_CONFIG_DOMAIN_VIRT_VSERVER, + GVIR_CONFIG_DOMAIN_VIRT_LDOM, + GVIR_CONFIG_DOMAIN_VIRT_TEST, + GVIR_CONFIG_DOMAIN_VIRT_VMWARE, + GVIR_CONFIG_DOMAIN_VIRT_HYPERV, + GVIR_CONFIG_DOMAIN_VIRT_VBOX, + GVIR_CONFIG_DOMAIN_VIRT_ONE, + GVIR_CONFIG_DOMAIN_VIRT_PHYP } GVirConfigDomainVirtType;
ACK Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
On Wed, Dec 07, 2011 at 12:14:27PM +0100, Christophe Fergeau wrote:
The bus type is actually an enum, let's reflect that in libvirt-gconfig API --- libvirt-gconfig/libvirt-gconfig-domain-disk.c | 8 ++++++-- libvirt-gconfig/libvirt-gconfig-domain-disk.h | 13 ++++++++++++- libvirt-gconfig/libvirt-gconfig.sym | 1 + libvirt-gconfig/tests/test-domain-create.c | 2 +- 4 files changed, 20 insertions(+), 4 deletions(-)
ACK Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
participants (2)
-
Christophe Fergeau -
Daniel P. Berrange