From: "Zeeshan Ali (Khattak)" <zeeshanak(a)gnome.org>
---
libvirt-gobject/libvirt-gobject-storage-pool.c | 44 ++++++++++++++++++++++++
libvirt-gobject/libvirt-gobject-storage-pool.h | 8 ++++
libvirt-gobject/libvirt-gobject.sym | 2 +
3 files changed, 54 insertions(+), 0 deletions(-)
diff --git a/libvirt-gobject/libvirt-gobject-storage-pool.c
b/libvirt-gobject/libvirt-gobject-storage-pool.c
index bd3be94..74ecabc 100644
--- a/libvirt-gobject/libvirt-gobject-storage-pool.c
+++ b/libvirt-gobject/libvirt-gobject-storage-pool.c
@@ -518,3 +518,47 @@ GVirStorageVol *gvir_storage_pool_create_volume
return g_object_ref(volume);
}
+
+/**
+ * gvir_storage_pool_build:
+ * @pool: the storage pool to build
+ * @flags: the flags
+ * @err: return location for any #GError
+ *
+ * Return value: #True on success, #False otherwise.
+ */
+gboolean gvir_storage_pool_build (GVirStoragePool *pool,
+ guint64 flags G_GNUC_UNUSED,
+ GError **err)
+{
+ if (virStoragePoolBuild(pool->priv->handle, 0)) {
+ *err = gvir_error_new_literal(GVIR_STORAGE_POOL_ERROR,
+ flags,
+ "Failed to build storage pool");
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+/**
+ * gvir_storage_pool_start:
+ * @pool: the storage pool to start
+ * @flags: the flags
+ * @err: return location for any #GError
+ *
+ * Return value: #True on success, #False otherwise.
+ */
+gboolean gvir_storage_pool_start (GVirStoragePool *pool,
+ guint64 flags G_GNUC_UNUSED,
+ GError **err)
+{
+ if (virStoragePoolCreate(pool->priv->handle, 0)) {
+ *err = gvir_error_new_literal(GVIR_STORAGE_POOL_ERROR,
+ flags,
+ "Failed to start storage pool");
+ return FALSE;
+ }
+
+ return TRUE;
+}
diff --git a/libvirt-gobject/libvirt-gobject-storage-pool.h
b/libvirt-gobject/libvirt-gobject-storage-pool.h
index 620f888..7b13ef9 100644
--- a/libvirt-gobject/libvirt-gobject-storage-pool.h
+++ b/libvirt-gobject/libvirt-gobject-storage-pool.h
@@ -88,6 +88,14 @@ GVirStorageVol *gvir_storage_pool_create_volume
GVirConfigStorageVol *conf,
GError **err);
+gboolean gvir_storage_pool_build (GVirStoragePool *pool,
+ guint64 flags,
+ GError **err);
+
+gboolean gvir_storage_pool_start (GVirStoragePool *pool,
+ guint64 flags,
+ GError **err);
+
G_END_DECLS
#endif /* __LIBVIRT_GOBJECT_STORAGE_POOL_H__ */
diff --git a/libvirt-gobject/libvirt-gobject.sym b/libvirt-gobject/libvirt-gobject.sym
index f1fa78b..4b1b84c 100644
--- a/libvirt-gobject/libvirt-gobject.sym
+++ b/libvirt-gobject/libvirt-gobject.sym
@@ -89,6 +89,8 @@ LIBVIRT_GOBJECT_0.0.1 {
gvir_storage_pool_get_volumes;
gvir_storage_pool_get_volume;
gvir_storage_pool_create_volume;
+ gvir_storage_pool_build;
+ gvir_storage_pool_start;
gvir_storage_vol_get_type;
gvir_storage_vol_handle_get_type;
--
1.7.6.4