[gnome-boxes/wip/image-import: 5/9] vm-configurator: vm-creator dictates target volume format



commit c5ba0d215853d31741c592c124daa67eeca2a038
Author: Zeeshan Ali (Khattak) <zeeshanak gnome org>
Date:   Wed Jun 5 04:15:30 2013 +0300

    vm-configurator: vm-creator dictates target volume format
    
    This will be later useful when we'll add support for importing existing
    images through a subclassed VMCreator.

 src/vm-configurator.vala |    4 ++--
 src/vm-creator.vala      |    3 ++-
 2 files changed, 4 insertions(+), 3 deletions(-)
---
diff --git a/src/vm-configurator.vala b/src/vm-configurator.vala
index 6a7898c..733d6d0 100644
--- a/src/vm-configurator.vala
+++ b/src/vm-configurator.vala
@@ -125,12 +125,12 @@ private class Boxes.VMConfigurator {
         return get_os_state (domain) == LIVE_STATE;
     }
 
-    public static StorageVol create_volume_config (string name, int64 storage) throws GLib.Error {
+    public static StorageVol create_volume_config (string name, int64 storage, string format) throws 
GLib.Error {
         var volume = new StorageVol ();
         volume.set_name (name);
         volume.set_capacity (storage);
         var target = new StorageVolTarget ();
-        target.set_format ("qcow2");
+        target.set_format (format);
         var permissions = get_default_permissions ();
         target.set_permissions (permissions);
         volume.set_target (target);
diff --git a/src/vm-creator.vala b/src/vm-creator.vala
index 3bcdd02..7bf43c4 100644
--- a/src/vm-creator.vala
+++ b/src/vm-creator.vala
@@ -9,6 +9,7 @@ private class Boxes.VMCreator {
     private const int INSTALL_COMPLETE_PERCENT = 99;
 
     public InstallerMedia? install_media { get; private set; }
+    protected virtual string target_volume_format { get { return "qcow2"; } }
 
     private Connection? connection { owned get { return App.app.default_connection; } }
     private ulong state_changed_id;
@@ -306,7 +307,7 @@ private class Boxes.VMCreator {
     private async StorageVol create_target_volume (string name, int64 storage) throws GLib.Error {
         var pool = yield get_storage_pool ();
 
-        var config = VMConfigurator.create_volume_config (name, storage);
+        var config = VMConfigurator.create_volume_config (name, storage, target_volume_format);
         var volume = pool.create_volume (config);
 
         return volume;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]