/* libvirt-broker.c generated by valac 0.39.5, the Vala compiler
 * generated from libvirt-broker.vala, do not modify */

/* This file is part of GNOME Boxes. License: LGPLv2+*/

#include <glib.h>
#include <glib-object.h>
#include <gio/gio.h>
#include <libcommon.h>
#include <stdlib.h>
#include <string.h>
#include <libvirt-gobject/libvirt-gobject.h>
#include <gtk/gtk.h>
#include <libvirt-gconfig/libvirt-gconfig.h>
#include <osinfo/osinfo.h>


#define BOXES_TYPE_BROKER (boxes_broker_get_type ())
#define BOXES_BROKER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_BROKER, BoxesBroker))
#define BOXES_BROKER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_BROKER, BoxesBrokerClass))
#define BOXES_IS_BROKER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_BROKER))
#define BOXES_IS_BROKER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_BROKER))
#define BOXES_BROKER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_BROKER, BoxesBrokerClass))

typedef struct _BoxesBroker BoxesBroker;
typedef struct _BoxesBrokerClass BoxesBrokerClass;
typedef struct _BoxesBrokerPrivate BoxesBrokerPrivate;

#define BOXES_TYPE_LIBVIRT_BROKER (boxes_libvirt_broker_get_type ())
#define BOXES_LIBVIRT_BROKER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_LIBVIRT_BROKER, BoxesLibvirtBroker))
#define BOXES_LIBVIRT_BROKER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_LIBVIRT_BROKER, BoxesLibvirtBrokerClass))
#define BOXES_IS_LIBVIRT_BROKER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_LIBVIRT_BROKER))
#define BOXES_IS_LIBVIRT_BROKER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_LIBVIRT_BROKER))
#define BOXES_LIBVIRT_BROKER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_LIBVIRT_BROKER, BoxesLibvirtBrokerClass))

typedef struct _BoxesLibvirtBroker BoxesLibvirtBroker;
typedef struct _BoxesLibvirtBrokerClass BoxesLibvirtBrokerClass;
typedef struct _BoxesLibvirtBrokerPrivate BoxesLibvirtBrokerPrivate;
enum  {
	BOXES_LIBVIRT_BROKER_0_PROPERTY,
	BOXES_LIBVIRT_BROKER_NUM_PROPERTIES
};
static GParamSpec* boxes_libvirt_broker_properties[BOXES_LIBVIRT_BROKER_NUM_PROPERTIES];
#define _g_hash_table_unref0(var) ((var == NULL) ? NULL : (var = (g_hash_table_unref (var), NULL)))
#define __g_list_free__g_object_unref0_0(var) ((var == NULL) ? NULL : (var = (_g_list_free__g_object_unref0_ (var), NULL)))
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))

#define BOXES_TYPE_COLLECTION_ITEM (boxes_collection_item_get_type ())
#define BOXES_COLLECTION_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_COLLECTION_ITEM, BoxesCollectionItem))
#define BOXES_COLLECTION_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_COLLECTION_ITEM, BoxesCollectionItemClass))
#define BOXES_IS_COLLECTION_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_COLLECTION_ITEM))
#define BOXES_IS_COLLECTION_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_COLLECTION_ITEM))
#define BOXES_COLLECTION_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_COLLECTION_ITEM, BoxesCollectionItemClass))

typedef struct _BoxesCollectionItem BoxesCollectionItem;
typedef struct _BoxesCollectionItemClass BoxesCollectionItemClass;

#define BOXES_TYPE_MACHINE (boxes_machine_get_type ())
#define BOXES_MACHINE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_MACHINE, BoxesMachine))
#define BOXES_MACHINE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_MACHINE, BoxesMachineClass))
#define BOXES_IS_MACHINE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_MACHINE))
#define BOXES_IS_MACHINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_MACHINE))
#define BOXES_MACHINE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_MACHINE, BoxesMachineClass))

typedef struct _BoxesMachine BoxesMachine;
typedef struct _BoxesMachineClass BoxesMachineClass;

#define BOXES_TYPE_LIBVIRT_MACHINE (boxes_libvirt_machine_get_type ())
#define BOXES_LIBVIRT_MACHINE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_LIBVIRT_MACHINE, BoxesLibvirtMachine))
#define BOXES_LIBVIRT_MACHINE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_LIBVIRT_MACHINE, BoxesLibvirtMachineClass))
#define BOXES_IS_LIBVIRT_MACHINE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_LIBVIRT_MACHINE))
#define BOXES_IS_LIBVIRT_MACHINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_LIBVIRT_MACHINE))
#define BOXES_LIBVIRT_MACHINE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_LIBVIRT_MACHINE, BoxesLibvirtMachineClass))

typedef struct _BoxesLibvirtMachine BoxesLibvirtMachine;
typedef struct _BoxesLibvirtMachineClass BoxesLibvirtMachineClass;
typedef struct _Block33Data Block33Data;
typedef struct _Block34Data Block34Data;

#define BOXES_TYPE_APP (boxes_app_get_type ())
#define BOXES_APP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_APP, BoxesApp))
#define BOXES_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_APP, BoxesAppClass))
#define BOXES_IS_APP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_APP))
#define BOXES_IS_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_APP))
#define BOXES_APP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_APP, BoxesAppClass))

typedef struct _BoxesApp BoxesApp;
typedef struct _BoxesAppClass BoxesAppClass;
typedef struct _BoxesAppPrivate BoxesAppPrivate;

#define BOXES_TYPE_COLLECTION (boxes_collection_get_type ())
#define BOXES_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_COLLECTION, BoxesCollection))
#define BOXES_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_COLLECTION, BoxesCollectionClass))
#define BOXES_IS_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_COLLECTION))
#define BOXES_IS_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_COLLECTION))
#define BOXES_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_COLLECTION, BoxesCollectionClass))

typedef struct _BoxesCollection BoxesCollection;
typedef struct _BoxesCollectionClass BoxesCollectionClass;
#define _g_free0(var) (var = (g_free (var), NULL))
#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
typedef struct _BoxesLibvirtBrokerAddDomainData BoxesLibvirtBrokerAddDomainData;
typedef struct _BoxesLibvirtBrokerTryAddNewDomainData BoxesLibvirtBrokerTryAddNewDomainData;

#define BOXES_TYPE_VM_CREATOR (boxes_vm_creator_get_type ())
#define BOXES_VM_CREATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_VM_CREATOR, BoxesVMCreator))
#define BOXES_VM_CREATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_VM_CREATOR, BoxesVMCreatorClass))
#define BOXES_IS_VM_CREATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_VM_CREATOR))
#define BOXES_IS_VM_CREATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_VM_CREATOR))
#define BOXES_VM_CREATOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_VM_CREATOR, BoxesVMCreatorClass))

typedef struct _BoxesVMCreator BoxesVMCreator;
typedef struct _BoxesVMCreatorClass BoxesVMCreatorClass;
#define _boxes_vm_creator_unref0(var) ((var == NULL) ? NULL : (var = (boxes_vm_creator_unref (var), NULL)))

#define BOXES_TYPE_VM_IMPORTER (boxes_vm_importer_get_type ())
#define BOXES_VM_IMPORTER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_VM_IMPORTER, BoxesVMImporter))
#define BOXES_VM_IMPORTER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_VM_IMPORTER, BoxesVMImporterClass))
#define BOXES_IS_VM_IMPORTER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_VM_IMPORTER))
#define BOXES_IS_VM_IMPORTER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_VM_IMPORTER))
#define BOXES_VM_IMPORTER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_VM_IMPORTER, BoxesVMImporterClass))

typedef struct _BoxesVMImporter BoxesVMImporter;
typedef struct _BoxesVMImporterClass BoxesVMImporterClass;

#define BOXES_TYPE_LIBVIRT_VM_IMPORTER (boxes_libvirt_vm_importer_get_type ())
#define BOXES_LIBVIRT_VM_IMPORTER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_LIBVIRT_VM_IMPORTER, BoxesLibvirtVMImporter))
#define BOXES_LIBVIRT_VM_IMPORTER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_LIBVIRT_VM_IMPORTER, BoxesLibvirtVMImporterClass))
#define BOXES_IS_LIBVIRT_VM_IMPORTER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_LIBVIRT_VM_IMPORTER))
#define BOXES_IS_LIBVIRT_VM_IMPORTER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_LIBVIRT_VM_IMPORTER))
#define BOXES_LIBVIRT_VM_IMPORTER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_LIBVIRT_VM_IMPORTER, BoxesLibvirtVMImporterClass))

typedef struct _BoxesLibvirtVMImporter BoxesLibvirtVMImporter;
typedef struct _BoxesLibvirtVMImporterClass BoxesLibvirtVMImporterClass;

#define BOXES_TYPE_LIBVIRT_VM_CLONER (boxes_libvirt_vm_cloner_get_type ())
#define BOXES_LIBVIRT_VM_CLONER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_LIBVIRT_VM_CLONER, BoxesLibvirtVMCloner))
#define BOXES_LIBVIRT_VM_CLONER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_LIBVIRT_VM_CLONER, BoxesLibvirtVMClonerClass))
#define BOXES_IS_LIBVIRT_VM_CLONER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_LIBVIRT_VM_CLONER))
#define BOXES_IS_LIBVIRT_VM_CLONER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_LIBVIRT_VM_CLONER))
#define BOXES_LIBVIRT_VM_CLONER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_LIBVIRT_VM_CLONER, BoxesLibvirtVMClonerClass))

typedef struct _BoxesLibvirtVMCloner BoxesLibvirtVMCloner;
typedef struct _BoxesLibvirtVMClonerClass BoxesLibvirtVMClonerClass;
typedef struct _BoxesLibvirtBrokerTryAddExistingDomainData BoxesLibvirtBrokerTryAddExistingDomainData;
typedef struct _Block35Data Block35Data;
typedef struct _Block36Data Block36Data;

#define BOXES_TYPE_INSTALLER_MEDIA (boxes_installer_media_get_type ())
#define BOXES_INSTALLER_MEDIA(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_INSTALLER_MEDIA, BoxesInstallerMedia))
#define BOXES_INSTALLER_MEDIA_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_INSTALLER_MEDIA, BoxesInstallerMediaClass))
#define BOXES_IS_INSTALLER_MEDIA(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_INSTALLER_MEDIA))
#define BOXES_IS_INSTALLER_MEDIA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_INSTALLER_MEDIA))
#define BOXES_INSTALLER_MEDIA_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_INSTALLER_MEDIA, BoxesInstallerMediaClass))

typedef struct _BoxesInstallerMedia BoxesInstallerMedia;
typedef struct _BoxesInstallerMediaClass BoxesInstallerMediaClass;

#define BOXES_TYPE_INSTALLED_MEDIA (boxes_installed_media_get_type ())
#define BOXES_INSTALLED_MEDIA(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_INSTALLED_MEDIA, BoxesInstalledMedia))
#define BOXES_INSTALLED_MEDIA_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_INSTALLED_MEDIA, BoxesInstalledMediaClass))
#define BOXES_IS_INSTALLED_MEDIA(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_INSTALLED_MEDIA))
#define BOXES_IS_INSTALLED_MEDIA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_INSTALLED_MEDIA))
#define BOXES_INSTALLED_MEDIA_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_INSTALLED_MEDIA, BoxesInstalledMediaClass))

typedef struct _BoxesInstalledMedia BoxesInstalledMedia;
typedef struct _BoxesInstalledMediaClass BoxesInstalledMediaClass;
typedef struct _BoxesInstallerMediaPrivate BoxesInstallerMediaPrivate;
typedef struct _BoxesCollectionPrivate BoxesCollectionPrivate;
typedef struct _BoxesLibvirtBrokerAddSourceData BoxesLibvirtBrokerAddSourceData;

struct _BoxesBroker {
	GObject parent_instance;
	BoxesBrokerPrivate * priv;
};

struct _BoxesBrokerClass {
	GObjectClass parent_class;
	void (*add_source) (BoxesBroker* self, BoxesCollectionSource* source, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*add_source_finish) (BoxesBroker* self, GAsyncResult* _res_, GError** error);
};

struct _BoxesLibvirtBroker {
	BoxesBroker parent_instance;
	BoxesLibvirtBrokerPrivate * priv;
};

struct _BoxesLibvirtBrokerClass {
	BoxesBrokerClass parent_class;
};

struct _BoxesLibvirtBrokerPrivate {
	GHashTable* connections;
	GList* pending_domains;
};

struct _Block33Data {
	int _ref_count_;
	BoxesLibvirtBroker* self;
	GVirDomain* domain;
	gpointer _async_data_;
};

struct _Block34Data {
	int _ref_count_;
	Block33Data * _data33_;
	GSourceFunc callback;
	gpointer callback_target;
	GDestroyNotify callback_target_destroy_notify;
	gulong id;
};

struct _BoxesApp {
	GtkApplication parent_instance;
	BoxesAppPrivate * priv;
	BoxesCollection* collection;
	BoxesAsyncLauncher* async_launcher;
};

struct _BoxesAppClass {
	GtkApplicationClass parent_class;
};

struct _BoxesLibvirtBrokerAddDomainData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	GAsyncReadyCallback _callback_;
	gboolean _task_complete_;
	BoxesLibvirtBroker* self;
	BoxesCollectionSource* source;
	GVirConnection* connection;
	GVirDomain* domain;
	BoxesLibvirtMachine* result;
	Block33Data* _data33_;
	BoxesLibvirtBroker* _tmp0_;
	GList* _tmp1_;
	GList* _tmp2_;
	Block34Data* _data34_;
	BoxesApp* _tmp3_;
	BoxesCollection* _tmp4_;
	gulong _tmp5_;
	BoxesLibvirtMachine* machine;
	gconstpointer _tmp6_;
	BoxesLibvirtMachine* _tmp7_;
	BoxesLibvirtMachine* _tmp8_;
	GVirDomain* _tmp9_;
	BoxesLibvirtMachine* _tmp10_;
	BoxesLibvirtMachine* _tmp11_;
	BoxesLibvirtMachine* _tmp12_;
	BoxesLibvirtMachine* _tmp13_;
	BoxesLibvirtMachine* _tmp14_;
	BoxesApp* _tmp15_;
	BoxesCollection* _tmp16_;
	BoxesLibvirtMachine* _tmp17_;
	gchar* _tmp18_;
	gchar* _tmp19_;
	gchar* _tmp20_;
	gboolean _tmp21_;
	GVirConfigDomain* config;
	BoxesLibvirtMachine* _tmp22_;
	GVirDomain* _tmp23_;
	GVirDomain* _tmp24_;
	GVirConfigDomain* _tmp25_;
	GVirConfigDomain* _tmp26_;
	BoxesLibvirtMachine* _tmp27_;
	GVirDomain* _tmp28_;
	GVirDomain* _tmp29_;
	GVirConfigDomain* _tmp30_;
	GError* e;
	const gchar* _tmp31_;
	GError* _tmp32_;
	const gchar* _tmp33_;
	GError * _inner_error_;
};

struct _BoxesLibvirtBrokerTryAddNewDomainData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	GAsyncReadyCallback _callback_;
	gboolean _task_complete_;
	BoxesLibvirtBroker* self;
	BoxesCollectionSource* source;
	GVirConnection* connection;
	GVirDomain* domain;
	const gchar* _tmp0_;
	const gchar* _tmp1_;
	BoxesLibvirtMachine* _tmp2_;
	BoxesLibvirtMachine* _tmp3_;
	GError* _error_;
	gchar* _tmp4_;
	gchar* _tmp5_;
	gchar* _tmp6_;
	GError* _tmp7_;
	const gchar* _tmp8_;
	GError * _inner_error_;
};

struct _BoxesLibvirtBrokerTryAddExistingDomainData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	GAsyncReadyCallback _callback_;
	gboolean _task_complete_;
	BoxesLibvirtBroker* self;
	BoxesCollectionSource* source;
	GVirConnection* connection;
	GVirDomain* domain;
	BoxesLibvirtMachine* result;
	BoxesLibvirtMachine* machine;
	BoxesLibvirtMachine* _tmp0_;
	GVirConfigDomain* config;
	GVirConfigDomain* _tmp1_;
	GVirConfigDomain* _tmp2_;
	GVirConfigDomain* _tmp3_;
	gboolean _tmp4_;
	GVirConfigDomain* _tmp5_;
	GVirConfigDomain* _tmp6_;
	const gchar* _tmp7_;
	const gchar* _tmp8_;
	BoxesVMCreator* _tmp9_;
	BoxesVMCreator* _tmp10_;
	GVirConfigDomain* _tmp11_;
	const gchar* _tmp12_;
	const gchar* _tmp13_;
	BoxesVMImporter* _tmp14_;
	BoxesVMImporter* _tmp15_;
	GVirConfigDomain* _tmp16_;
	const gchar* _tmp17_;
	const gchar* _tmp18_;
	BoxesLibvirtVMImporter* _tmp19_;
	BoxesLibvirtVMImporter* _tmp20_;
	GVirConfigDomain* _tmp21_;
	const gchar* _tmp22_;
	const gchar* _tmp23_;
	BoxesLibvirtVMCloner* _tmp24_;
	BoxesLibvirtVMCloner* _tmp25_;
	GError* _error_;
	gchar* _tmp26_;
	gchar* _tmp27_;
	gchar* _tmp28_;
	GError* _tmp29_;
	const gchar* _tmp30_;
	GError * _inner_error_;
};

struct _Block35Data {
	int _ref_count_;
	BoxesLibvirtBroker* self;
	BoxesCollectionSource* source;
	gpointer _async_data_;
};

struct _Block36Data {
	int _ref_count_;
	Block35Data * _data35_;
	BoxesLibvirtMachine* clone;
	BoxesLibvirtMachine* cloned;
	gulong under_construct_id;
};

struct _BoxesInstallerMedia {
	GObject parent_instance;
	BoxesInstallerMediaPrivate * priv;
	OsinfoOs* os;
	OsinfoResources* resources;
	OsinfoMedia* os_media;
	gchar* label;
	gchar* device_file;
	gchar* mount_point;
	gboolean from_image;
};

struct _BoxesInstallerMediaClass {
	GObjectClass parent_class;
	void (*set_direct_boot_params) (BoxesInstallerMedia* self, GVirConfigDomainOs* os);
	void (*prepare) (BoxesInstallerMedia* self, BoxesActivityProgress* progress, GCancellable* cancellable, GAsyncReadyCallback _callback_, gpointer _user_data_);
	gboolean (*prepare_finish) (BoxesInstallerMedia* self, GAsyncResult* _res_);
	void (*prepare_for_installation) (BoxesInstallerMedia* self, const gchar* vm_name, GCancellable* cancellable, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*prepare_for_installation_finish) (BoxesInstallerMedia* self, GAsyncResult* _res_);
	void (*prepare_to_continue_installation) (BoxesInstallerMedia* self, const gchar* vm_name);
	void (*clean_up) (BoxesInstallerMedia* self);
	void (*clean_up_preparation_cache) (BoxesInstallerMedia* self);
	void (*setup_domain_config) (BoxesInstallerMedia* self, GVirConfigDomain* domain);
	void (*setup_post_install_domain_config) (BoxesInstallerMedia* self, GVirConfigDomain* domain);
	void (*populate_setup_box) (BoxesInstallerMedia* self, GtkBox* setup_box);
	GList* (*get_vm_properties) (BoxesInstallerMedia* self);
	BoxesVMCreator* (*get_vm_creator) (BoxesInstallerMedia* self);
	OsinfoDeviceList* (*get_supported_devices) (BoxesInstallerMedia* self);
	guint64 (*get_installed_size) (BoxesInstallerMedia* self);
	gboolean (*get_need_user_input_for_vm_creation) (BoxesInstallerMedia* self);
	gboolean (*get_ready_to_create) (BoxesInstallerMedia* self);
	gboolean (*get_live) (BoxesInstallerMedia* self);
	gchar* (*get_architecture) (BoxesInstallerMedia* self);
};

struct _BoxesCollection {
	GObject parent_instance;
	BoxesCollectionPrivate * priv;
	GPtrArray* items;
};

struct _BoxesCollectionClass {
	GObjectClass parent_class;
};

struct _BoxesLibvirtBrokerAddSourceData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	GAsyncReadyCallback _callback_;
	gboolean _task_complete_;
	BoxesLibvirtBroker* self;
	BoxesCollectionSource* source;
	Block35Data* _data35_;
	GHashTable* _tmp0_;
	gchar* _tmp1_;
	gchar* _tmp2_;
	gchar* _tmp3_;
	gconstpointer _tmp4_;
	gboolean _tmp5_;
	GVirConnection* connection;
	gchar* _tmp6_;
	gchar* _tmp7_;
	gchar* _tmp8_;
	GVirConnection* _tmp9_;
	GVirConnection* _tmp10_;
	GVirConnection* _tmp11_;
	GVirConnection* _tmp12_;
	GVirConnection* _tmp13_;
	GVirConnection* _tmp14_;
	GVirStoragePool* _tmp15_;
	GVirStoragePool* _tmp16_;
	GHashTable* _tmp17_;
	gchar* _tmp18_;
	gchar* _tmp19_;
	GVirConnection* _tmp20_;
	GVirConnection* _tmp21_;
	GList* clones;
	GVirConnection* _tmp22_;
	GList* _tmp23_;
	GList* domain_collection;
	GList* domain_it;
	GVirDomain* _tmp24_;
	GVirDomain* domain;
	BoxesLibvirtMachine* machine;
	GVirConnection* _tmp25_;
	GVirDomain* _tmp26_;
	BoxesLibvirtMachine* _tmp27_;
	BoxesLibvirtMachine* _tmp28_;
	GVirConfigDomain* _tmp29_;
	GVirConfigDomain* _tmp30_;
	BoxesLibvirtMachine* _tmp31_;
	BoxesLibvirtMachine* _tmp32_;
	GList* _tmp33_;
	GList* clone_collection;
	GList* clone_it;
	BoxesLibvirtMachine* _tmp34_;
	BoxesLibvirtMachine* clone;
	Block36Data* _data36_;
	gchar* disk_path;
	BoxesLibvirtMachine* _tmp35_;
	BoxesVMCreator* _tmp36_;
	BoxesVMCreator* _tmp37_;
	BoxesInstalledMedia* _tmp38_;
	BoxesInstalledMedia* _tmp39_;
	const gchar* _tmp40_;
	gchar* _tmp41_;
	BoxesApp* _tmp42_;
	BoxesCollection* _tmp43_;
	GPtrArray* _tmp44_;
	gpointer* _tmp45_;
	gint _tmp45__length1;
	BoxesCollectionItem** item_collection;
	gint item_collection_length1;
	gint _item_collection_size_;
	gint item_it;
	BoxesCollectionItem* _tmp46_;
	BoxesCollectionItem* item;
	BoxesCollectionItem* _tmp47_;
	BoxesLibvirtMachine* _vala1_machine;
	BoxesCollectionItem* _tmp48_;
	BoxesLibvirtMachine* _tmp49_;
	GVirStorageVol* volume;
	BoxesLibvirtMachine* _tmp50_;
	GVirStorageVol* _tmp51_;
	GVirStorageVol* _tmp52_;
	GVirStorageVol* _tmp53_;
	gboolean _tmp54_;
	GVirStorageVol* _tmp55_;
	const gchar* _tmp56_;
	GVirStorageVol* _tmp57_;
	const gchar* _tmp58_;
	const gchar* _tmp59_;
	BoxesLibvirtMachine* _tmp60_;
	BoxesLibvirtMachine* _tmp61_;
	BoxesLibvirtMachine* _tmp62_;
	BoxesLibvirtMachine* _tmp63_;
	const gchar* _tmp64_;
	const gchar* _tmp65_;
	BoxesLibvirtMachine* _tmp66_;
	BoxesLibvirtMachine* _tmp67_;
	gulong _tmp68_;
	GVirConnection* _tmp69_;
	GVirConnection* _tmp70_;
	GError * _inner_error_;
};


static gpointer boxes_libvirt_broker_parent_class = NULL;
static BoxesLibvirtBroker* boxes_libvirt_broker_broker;
static BoxesLibvirtBroker* boxes_libvirt_broker_broker = NULL;
extern BoxesApp* boxes_app_app;

GType boxes_broker_get_type (void) G_GNUC_CONST;
GType boxes_libvirt_broker_get_type (void) G_GNUC_CONST;
#define BOXES_LIBVIRT_BROKER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), BOXES_TYPE_LIBVIRT_BROKER, BoxesLibvirtBrokerPrivate))
static void _g_object_unref0_ (gpointer var);
static inline void _g_list_free__g_object_unref0_ (GList* self);
BoxesLibvirtBroker* boxes_libvirt_broker_get_default (void);
static BoxesLibvirtBroker* boxes_libvirt_broker_new (void);
static BoxesLibvirtBroker* boxes_libvirt_broker_construct (GType object_type);
BoxesBroker* boxes_broker_construct (GType object_type);
static void _g_free0_ (gpointer var);
GVirConnection* boxes_libvirt_broker_get_connection (BoxesLibvirtBroker* self,
                                                     const gchar* name);
static void boxes_libvirt_broker_add_domain_data_free (gpointer _data);
static void boxes_libvirt_broker_add_domain_async_ready_wrapper (GObject *source_object,
                                                          GAsyncResult *res,
                                                          void *user_data);
GType boxes_collection_item_get_type (void) G_GNUC_CONST;
GType boxes_machine_get_type (void) G_GNUC_CONST;
GType boxes_libvirt_machine_get_type (void) G_GNUC_CONST;
void boxes_libvirt_broker_add_domain (BoxesLibvirtBroker* self,
                                      BoxesCollectionSource* source,
                                      GVirConnection* connection,
                                      GVirDomain* domain,
                                      GAsyncReadyCallback _callback_,
                                      gpointer _user_data_);
BoxesLibvirtMachine* boxes_libvirt_broker_add_domain_finish (BoxesLibvirtBroker* self,
                                                             GAsyncResult* _res_,
                                                             GError** error);
static gboolean boxes_libvirt_broker_add_domain_co (BoxesLibvirtBrokerAddDomainData* _data_);
static Block33Data* block33_data_ref (Block33Data* _data33_);
static void block33_data_unref (void * _userdata_);
static Block34Data* block34_data_ref (Block34Data* _data34_);
static void block34_data_unref (void * _userdata_);
static gboolean _boxes_libvirt_broker_add_domain_co_gsource_func (gpointer self);
GType boxes_app_get_type (void) G_GNUC_CONST;
GType boxes_collection_get_type (void) G_GNUC_CONST;
static void ___lambda19_ (Block34Data* _data34_,
                   BoxesCollectionItem* item);
GVirDomain* boxes_libvirt_machine_get_domain (BoxesLibvirtMachine* self);
static void ____lambda19__boxes_collection_item_added (BoxesCollection* _sender,
                                                BoxesCollectionItem* item,
                                                gpointer self);
void boxes_libvirt_machine_new (BoxesCollectionSource* source,
                                GVirConnection* connection,
                                GVirDomain* domain,
                                GAsyncReadyCallback _callback_,
                                gpointer _user_data_);
BoxesLibvirtMachine* boxes_libvirt_machine_new_finish (GAsyncResult* _res_,
                                                       GError** error);
void boxes_libvirt_machine_construct (GType object_type,
                                      BoxesCollectionSource* source,
                                      GVirConnection* connection,
                                      GVirDomain* domain,
                                      GAsyncReadyCallback _callback_,
                                      gpointer _user_data_);
BoxesLibvirtMachine* boxes_libvirt_machine_construct_finish (GAsyncResult* _res_,
                                                             GError** error);
static void boxes_libvirt_broker_add_domain_ready (GObject* source_object,
                                            GAsyncResult* _res_,
                                            gpointer _user_data_);
void boxes_collection_add_item (BoxesCollection* self,
                                BoxesCollectionItem* item);
#define BOXES_APP_DEFAULT_SOURCE_NAME "QEMU Session"
void boxes_vm_configurator_update_existing_domain (GVirConfigDomain* domain,
                                                   GVirConnection* connection,
                                                   GAsyncReadyCallback _callback_,
                                                   gpointer _user_data_);
void boxes_vm_configurator_update_existing_domain_finish (GAsyncResult* _res_);
static void boxes_libvirt_broker_try_add_new_domain_data_free (gpointer _data);
static void boxes_libvirt_broker_try_add_new_domain_async_ready_wrapper (GObject *source_object,
                                                                  GAsyncResult *res,
                                                                  void *user_data);
static void boxes_libvirt_broker_try_add_new_domain (BoxesLibvirtBroker* self,
                                              BoxesCollectionSource* source,
                                              GVirConnection* connection,
                                              GVirDomain* domain,
                                              GAsyncReadyCallback _callback_,
                                              gpointer _user_data_);
static void boxes_libvirt_broker_try_add_new_domain_finish (BoxesLibvirtBroker* self,
                                                     GAsyncResult* _res_);
static gboolean boxes_libvirt_broker_try_add_new_domain_co (BoxesLibvirtBrokerTryAddNewDomainData* _data_);
static void boxes_libvirt_broker_try_add_new_domain_ready (GObject* source_object,
                                                    GAsyncResult* _res_,
                                                    gpointer _user_data_);
static void boxes_libvirt_broker_try_add_existing_domain_data_free (gpointer _data);
static void boxes_libvirt_broker_try_add_existing_domain_async_ready_wrapper (GObject *source_object,
                                                                       GAsyncResult *res,
                                                                       void *user_data);
static void boxes_libvirt_broker_try_add_existing_domain (BoxesLibvirtBroker* self,
                                                   BoxesCollectionSource* source,
                                                   GVirConnection* connection,
                                                   GVirDomain* domain,
                                                   GAsyncReadyCallback _callback_,
                                                   gpointer _user_data_);
static BoxesLibvirtMachine* boxes_libvirt_broker_try_add_existing_domain_finish (BoxesLibvirtBroker* self,
                                                                          GAsyncResult* _res_);
static gboolean boxes_libvirt_broker_try_add_existing_domain_co (BoxesLibvirtBrokerTryAddExistingDomainData* _data_);
static void boxes_libvirt_broker_try_add_existing_domain_ready (GObject* source_object,
                                                         GAsyncResult* _res_,
                                                         gpointer _user_data_);
GVirConfigDomain* boxes_libvirt_machine_get_domain_config (BoxesLibvirtMachine* self);
gboolean boxes_vm_configurator_is_install_config (GVirConfigDomain* domain);
gboolean boxes_vm_configurator_is_live_config (GVirConfigDomain* domain);
const gchar* boxes_collection_item_get_name (BoxesCollectionItem* self);
BoxesVMCreator* boxes_vm_creator_new_for_install_completion (BoxesLibvirtMachine* machine);
BoxesVMCreator* boxes_vm_creator_construct_for_install_completion (GType object_type,
                                                                   BoxesLibvirtMachine* machine);
gpointer boxes_vm_creator_ref (gpointer instance);
void boxes_vm_creator_unref (gpointer instance);
GParamSpec* boxes_param_spec_vm_creator (const gchar* name,
                                         const gchar* nick,
                                         const gchar* blurb,
                                         GType object_type,
                                         GParamFlags flags);
void boxes_value_set_vm_creator (GValue* value,
                                 gpointer v_object);
void boxes_value_take_vm_creator (GValue* value,
                                  gpointer v_object);
gpointer boxes_value_get_vm_creator (const GValue* value);
GType boxes_vm_creator_get_type (void) G_GNUC_CONST;
gboolean boxes_vm_configurator_is_import_config (GVirConfigDomain* domain);
BoxesVMImporter* boxes_vm_importer_new_for_import_completion (BoxesLibvirtMachine* machine);
BoxesVMImporter* boxes_vm_importer_construct_for_import_completion (GType object_type,
                                                                    BoxesLibvirtMachine* machine);
GType boxes_vm_importer_get_type (void) G_GNUC_CONST;
gboolean boxes_vm_configurator_is_libvirt_system_import_config (GVirConfigDomain* domain);
BoxesLibvirtVMImporter* boxes_libvirt_vm_importer_new_for_import_completion (BoxesLibvirtMachine* machine);
BoxesLibvirtVMImporter* boxes_libvirt_vm_importer_construct_for_import_completion (GType object_type,
                                                                                   BoxesLibvirtMachine* machine);
GType boxes_libvirt_vm_importer_get_type (void) G_GNUC_CONST;
gboolean boxes_vm_configurator_is_libvirt_cloning_config (GVirConfigDomain* domain);
BoxesLibvirtVMCloner* boxes_libvirt_vm_cloner_new_for_cloning_completion (BoxesLibvirtMachine* machine);
BoxesLibvirtVMCloner* boxes_libvirt_vm_cloner_construct_for_cloning_completion (GType object_type,
                                                                                BoxesLibvirtMachine* machine);
GType boxes_libvirt_vm_cloner_get_type (void) G_GNUC_CONST;
static void boxes_libvirt_broker_real_add_source_data_free (gpointer _data);
static void boxes_libvirt_broker_real_add_source_async_ready_wrapper (GObject *source_object,
                                                               GAsyncResult *res,
                                                               void *user_data);
static void boxes_libvirt_broker_real_add_source (BoxesBroker* base,
                                           BoxesCollectionSource* source,
                                           GAsyncReadyCallback _callback_,
                                           gpointer _user_data_);
static gboolean boxes_libvirt_broker_real_add_source_co (BoxesLibvirtBrokerAddSourceData* _data_);
static Block35Data* block35_data_ref (Block35Data* _data35_);
static void block35_data_unref (void * _userdata_);
static void boxes_libvirt_broker_add_source_ready (GObject* source_object,
                                            GAsyncResult* _res_,
                                            gpointer _user_data_);
void boxes_ensure_storage_pool (GVirConnection* connection,
                                GAsyncReadyCallback _callback_,
                                gpointer _user_data_);
GVirStoragePool* boxes_ensure_storage_pool_finish (GAsyncResult* _res_,
                                                   GError** error);
static Block36Data* block36_data_ref (Block36Data* _data36_);
static void block36_data_unref (void * _userdata_);
BoxesVMCreator* boxes_libvirt_machine_get_vm_creator (BoxesLibvirtMachine* self);
GType boxes_installer_media_get_type (void) G_GNUC_CONST;
GType boxes_installed_media_get_type (void) G_GNUC_CONST;
BoxesInstalledMedia* boxes_vm_importer_get_source_media (BoxesVMImporter* self);
GVirStorageVol* boxes_libvirt_machine_get_storage_volume (BoxesLibvirtMachine* self);
void boxes_machine_set_can_delete (BoxesMachine* self,
                                   gboolean value);
static void ____lambda20_ (Block36Data* _data36_);
gboolean boxes_machine_get_under_construction (BoxesMachine* self);
static void _____lambda20__g_object_notify (GObject* _sender,
                                     GParamSpec* pspec,
                                     gpointer self);
static void __lambda21_ (BoxesLibvirtBroker* self,
                  GVirConnection* connection,
                  GVirDomain* domain);
void boxes_app_delete_machine (BoxesApp* self,
                               BoxesMachine* machine,
                               gboolean by_user);
static void ___lambda21__gvir_connection_domain_removed (GVirConnection* _sender,
                                                  GVirDomain* dom,
                                                  gpointer self);
static void __lambda23_ (Block35Data* _data35_,
                  GVirConnection* connection,
                  GVirDomain* domain);
static void ___lambda23__gvir_connection_domain_added (GVirConnection* _sender,
                                                GVirDomain* dom,
                                                gpointer self);
void boxes_broker_add_source (BoxesBroker* self,
                              BoxesCollectionSource* source,
                              GAsyncReadyCallback _callback_,
                              gpointer _user_data_);
void boxes_broker_add_source_finish (BoxesBroker* self,
                                     GAsyncResult* _res_,
                                     GError** error);
static void boxes_libvirt_broker_finalize (GObject * obj);


static void
_g_object_unref0_ (gpointer var)
{
#line 8 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	(var == NULL) ? NULL : (var = (g_object_unref (var), NULL));
#line 719 "libvirt-broker.c"
}


static inline void
_g_list_free__g_object_unref0_ (GList* self)
{
#line 8 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_list_free_full (self, (GDestroyNotify) _g_object_unref0_);
#line 728 "libvirt-broker.c"
}


static gpointer
_g_object_ref0 (gpointer self)
{
#line 14 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return self ? g_object_ref (self) : NULL;
#line 737 "libvirt-broker.c"
}


BoxesLibvirtBroker*
boxes_libvirt_broker_get_default (void)
{
	BoxesLibvirtBroker* result = NULL;
	BoxesLibvirtBroker* _tmp0_;
	BoxesLibvirtBroker* _tmp2_;
	BoxesLibvirtBroker* _tmp3_;
#line 11 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp0_ = boxes_libvirt_broker_broker;
#line 11 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_tmp0_ == NULL) {
#line 752 "libvirt-broker.c"
		BoxesLibvirtBroker* _tmp1_;
#line 12 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_tmp1_ = boxes_libvirt_broker_new ();
#line 12 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (boxes_libvirt_broker_broker);
#line 12 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		boxes_libvirt_broker_broker = _tmp1_;
#line 760 "libvirt-broker.c"
	}
#line 14 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp2_ = boxes_libvirt_broker_broker;
#line 14 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp3_ = _g_object_ref0 (_tmp2_);
#line 14 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	result = _tmp3_;
#line 14 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return result;
#line 770 "libvirt-broker.c"
}


static void
_g_free0_ (gpointer var)
{
#line 18 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	var = (g_free (var), NULL);
#line 779 "libvirt-broker.c"
}


static BoxesLibvirtBroker*
boxes_libvirt_broker_construct (GType object_type)
{
	BoxesLibvirtBroker * self = NULL;
	GHashFunc _tmp0_;
	GEqualFunc _tmp1_;
	GHashTable* _tmp2_;
#line 17 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	self = (BoxesLibvirtBroker*) boxes_broker_construct (object_type);
#line 18 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp0_ = g_str_hash;
#line 18 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp1_ = g_str_equal;
#line 18 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp2_ = g_hash_table_new_full (_tmp0_, _tmp1_, _g_free0_, _g_object_unref0_);
#line 18 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_hash_table_unref0 (self->priv->connections);
#line 18 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	self->priv->connections = _tmp2_;
#line 19 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	__g_list_free__g_object_unref0_0 (self->priv->pending_domains);
#line 19 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	self->priv->pending_domains = NULL;
#line 17 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return self;
#line 808 "libvirt-broker.c"
}


static BoxesLibvirtBroker*
boxes_libvirt_broker_new (void)
{
#line 17 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return boxes_libvirt_broker_construct (BOXES_TYPE_LIBVIRT_BROKER);
#line 817 "libvirt-broker.c"
}


GVirConnection*
boxes_libvirt_broker_get_connection (BoxesLibvirtBroker* self,
                                     const gchar* name)
{
	GVirConnection* result = NULL;
	BoxesLibvirtBroker* _tmp0_;
	BoxesLibvirtBroker* _tmp1_;
	GHashTable* _tmp2_;
	gconstpointer _tmp3_;
	GVirConnection* _tmp4_;
#line 22 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 22 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_return_val_if_fail (name != NULL, NULL);
#line 23 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp0_ = boxes_libvirt_broker_broker;
#line 23 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_return_if_fail (_tmp0_ != NULL);
#line 24 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp1_ = boxes_libvirt_broker_broker;
#line 24 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp2_ = _tmp1_->priv->connections;
#line 24 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp3_ = g_hash_table_lookup (_tmp2_, name);
#line 24 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp4_ = _g_object_ref0 ((GVirConnection*) _tmp3_);
#line 24 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	result = _tmp4_;
#line 24 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return result;
#line 851 "libvirt-broker.c"
}


static void
boxes_libvirt_broker_add_domain_data_free (gpointer _data)
{
	BoxesLibvirtBrokerAddDomainData* _data_;
	_data_ = _data;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->source);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->connection);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->result);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_slice_free (BoxesLibvirtBrokerAddDomainData, _data_);
#line 870 "libvirt-broker.c"
}


static void
boxes_libvirt_broker_add_domain_async_ready_wrapper (GObject *source_object,
                                                     GAsyncResult *res,
                                                     void *user_data)
{
	BoxesLibvirtBrokerAddDomainData* _task_data_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_task_data_ = g_task_get_task_data (G_TASK (res));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_task_data_->_callback_ != NULL) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_task_data_->_callback_ (source_object, res, user_data);
#line 886 "libvirt-broker.c"
	}
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_task_data_->_task_complete_ = TRUE;
#line 890 "libvirt-broker.c"
}


void
boxes_libvirt_broker_add_domain (BoxesLibvirtBroker* self,
                                 BoxesCollectionSource* source,
                                 GVirConnection* connection,
                                 GVirDomain* domain,
                                 GAsyncReadyCallback _callback_,
                                 gpointer _user_data_)
{
	BoxesLibvirtBrokerAddDomainData* _data_;
	BoxesLibvirtBroker* _tmp0_;
	BoxesCollectionSource* _tmp1_;
	GVirConnection* _tmp2_;
	GVirDomain* _tmp3_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_ = g_slice_new0 (BoxesLibvirtBrokerAddDomainData);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_callback_ = _callback_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, boxes_libvirt_broker_add_domain_async_ready_wrapper, _user_data_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_callback_ == NULL) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_task_complete_ = TRUE;
#line 917 "libvirt-broker.c"
	}
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_libvirt_broker_add_domain_data_free);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->self = _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp1_ = _g_object_ref0 (source);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->source);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->source = _tmp1_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp2_ = _g_object_ref0 (connection);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->connection);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->connection = _tmp2_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp3_ = _g_object_ref0 (domain);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->domain);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->domain = _tmp3_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_libvirt_broker_add_domain_co (_data_);
#line 945 "libvirt-broker.c"
}


BoxesLibvirtMachine*
boxes_libvirt_broker_add_domain_finish (BoxesLibvirtBroker* self,
                                        GAsyncResult* _res_,
                                        GError** error)
{
	BoxesLibvirtMachine* result;
	BoxesLibvirtBrokerAddDomainData* _data_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), error);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (NULL == _data_) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return NULL;
#line 962 "libvirt-broker.c"
	}
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	result = _data_->result;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->result = NULL;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return result;
#line 970 "libvirt-broker.c"
}


static Block33Data*
block33_data_ref (Block33Data* _data33_)
{
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_atomic_int_inc (&_data33_->_ref_count_);
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return _data33_;
#line 981 "libvirt-broker.c"
}


static void
block33_data_unref (void * _userdata_)
{
	Block33Data* _data33_;
	_data33_ = (Block33Data*) _userdata_;
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (g_atomic_int_dec_and_test (&_data33_->_ref_count_)) {
#line 992 "libvirt-broker.c"
		BoxesLibvirtBroker* self;
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		self = _data33_->self;
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data33_->domain);
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (self);
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_slice_free (Block33Data, _data33_);
#line 1002 "libvirt-broker.c"
	}
}


static Block34Data*
block34_data_ref (Block34Data* _data34_)
{
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_atomic_int_inc (&_data34_->_ref_count_);
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return _data34_;
#line 1014 "libvirt-broker.c"
}


static void
block34_data_unref (void * _userdata_)
{
	Block34Data* _data34_;
	_data34_ = (Block34Data*) _userdata_;
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (g_atomic_int_dec_and_test (&_data34_->_ref_count_)) {
#line 1025 "libvirt-broker.c"
		BoxesLibvirtBroker* self;
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		self = _data34_->_data33_->self;
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		(_data34_->callback_target_destroy_notify == NULL) ? NULL : (_data34_->callback_target_destroy_notify (_data34_->callback_target), NULL);
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data34_->callback = NULL;
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data34_->callback_target = NULL;
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data34_->callback_target_destroy_notify = NULL;
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block33_data_unref (_data34_->_data33_);
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data34_->_data33_ = NULL;
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_slice_free (Block34Data, _data34_);
#line 1043 "libvirt-broker.c"
	}
}


static gboolean
_boxes_libvirt_broker_add_domain_co_gsource_func (gpointer self)
{
	gboolean result;
	result = boxes_libvirt_broker_add_domain_co (self);
#line 33 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return result;
#line 1055 "libvirt-broker.c"
}


static void
___lambda19_ (Block34Data* _data34_,
              BoxesCollectionItem* item)
{
	Block33Data* _data33_;
	BoxesLibvirtBroker* self;
	gboolean _tmp0_ = FALSE;
	BoxesApp* _tmp3_;
	BoxesCollection* _tmp4_;
	gulong _tmp5_;
	GSourceFunc _tmp6_;
	void* _tmp6__target;
#line 35 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data33_ = _data34_->_data33_;
#line 35 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	self = _data33_->self;
#line 35 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_return_if_fail (item != NULL);
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (!G_TYPE_CHECK_INSTANCE_TYPE (item, BOXES_TYPE_LIBVIRT_MACHINE)) {
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_tmp0_ = TRUE;
#line 1081 "libvirt-broker.c"
	} else {
		GVirDomain* _tmp1_;
		GVirDomain* _tmp2_;
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_tmp1_ = boxes_libvirt_machine_get_domain (G_TYPE_CHECK_INSTANCE_TYPE (item, BOXES_TYPE_LIBVIRT_MACHINE) ? ((BoxesLibvirtMachine*) item) : NULL);
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_tmp2_ = _tmp1_;
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_tmp0_ = _tmp2_ != _data33_->domain;
#line 1091 "libvirt-broker.c"
	}
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_tmp0_) {
#line 37 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return;
#line 1097 "libvirt-broker.c"
	}
#line 39 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp3_ = boxes_app_app;
#line 39 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp4_ = _tmp3_->collection;
#line 39 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp5_ = _data34_->id;
#line 39 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_signal_handler_disconnect ((GObject*) _tmp4_, _tmp5_);
#line 40 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp6_ = _data34_->callback;
#line 40 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp6__target = _data34_->callback_target;
#line 40 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp6_ (_tmp6__target);
#line 1113 "libvirt-broker.c"
}


static void
____lambda19__boxes_collection_item_added (BoxesCollection* _sender,
                                           BoxesCollectionItem* item,
                                           gpointer self)
{
#line 35 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	___lambda19_ (self, item);
#line 1124 "libvirt-broker.c"
}


static void
boxes_libvirt_broker_add_domain_ready (GObject* source_object,
                                       GAsyncResult* _res_,
                                       gpointer _user_data_)
{
	BoxesLibvirtBrokerAddDomainData* _data_;
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_ = _user_data_;
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_source_object_ = source_object;
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_res_ = _res_;
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_task_complete_ = TRUE;
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_libvirt_broker_add_domain_co (_data_);
#line 1144 "libvirt-broker.c"
}


static gboolean
boxes_libvirt_broker_add_domain_co (BoxesLibvirtBrokerAddDomainData* _data_)
{
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	switch (_data_->_state_) {
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 0:
#line 1155 "libvirt-broker.c"
		goto _state_0;
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 1:
#line 1159 "libvirt-broker.c"
		goto _state_1;
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 2:
#line 1163 "libvirt-broker.c"
		goto _state_2;
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 3:
#line 1167 "libvirt-broker.c"
		goto _state_3;
		default:
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_assert_not_reached ();
#line 1172 "libvirt-broker.c"
	}
	_state_0:
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_data33_ = g_slice_new0 (Block33Data);
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_data33_->_ref_count_ = 1;
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_data33_->self = g_object_ref (_data_->self);
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->_data33_->domain);
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_data33_->domain = _data_->domain;
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_data33_->_async_data_ = _data_;
#line 29 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp0_ = boxes_libvirt_broker_broker;
#line 29 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_return_if_fail (_data_->_tmp0_ != NULL);
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp1_ = _data_->self->priv->pending_domains;
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp2_ = g_list_find (_data_->_tmp1_, _data_->_data33_->domain);
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_data_->_tmp2_ != NULL) {
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data34_ = g_slice_new0 (Block34Data);
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data34_->_ref_count_ = 1;
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data34_->_data33_ = block33_data_ref (_data_->_data33_);
#line 33 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data34_->callback = _boxes_libvirt_broker_add_domain_co_gsource_func;
#line 33 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data34_->callback_target = _data_;
#line 33 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data34_->callback_target_destroy_notify = NULL;
#line 34 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data34_->id = (gulong) 0;
#line 35 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp3_ = boxes_app_app;
#line 35 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp4_ = _data_->_tmp3_->collection;
#line 35 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp5_ = g_signal_connect_data (_data_->_tmp4_, "item-added", (GCallback) ____lambda19__boxes_collection_item_added, block34_data_ref (_data_->_data34_), (GClosureNotify) block34_data_unref, 0);
#line 35 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data34_->id = _data_->_tmp5_;
#line 43 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_state_ = 1;
#line 43 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 1223 "libvirt-broker.c"
		_state_1:
		;
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block34_data_unref (_data_->_data34_);
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data34_ = NULL;
#line 1230 "libvirt-broker.c"
	}
#line 46 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp6_ = g_object_get_data ((GObject*) _data_->_data33_->domain, "machine");
#line 46 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp7_ = _g_object_ref0 ((BoxesLibvirtMachine*) _data_->_tmp6_);
#line 46 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->machine = _data_->_tmp7_;
#line 47 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp8_ = _data_->machine;
#line 47 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_data_->_tmp8_ != NULL) {
#line 48 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->result = _data_->machine;
#line 48 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block33_data_unref (_data_->_data33_);
#line 48 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data33_ = NULL;
#line 48 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 48 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		if (_data_->_state_ != 0) {
#line 48 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			while (_data_->_task_complete_ != TRUE) {
#line 48 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 1256 "libvirt-broker.c"
			}
		}
#line 48 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 48 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 1263 "libvirt-broker.c"
	}
#line 50 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp9_ = _g_object_ref0 (_data_->_data33_->domain);
#line 50 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->self->priv->pending_domains = g_list_append (_data_->self->priv->pending_domains, _data_->_tmp9_);
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_state_ = 2;
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_libvirt_machine_new (_data_->source, _data_->connection, _data_->_data33_->domain, boxes_libvirt_broker_add_domain_ready, _data_);
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return FALSE;
#line 1275 "libvirt-broker.c"
	_state_2:
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp11_ = boxes_libvirt_machine_new_finish (_data_->_res_, &_data_->_inner_error_);
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp10_ = _data_->_tmp11_;
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data_->machine);
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block33_data_unref (_data_->_data33_);
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data33_ = NULL;
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 1295 "libvirt-broker.c"
	}
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp12_ = _data_->_tmp10_;
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp10_ = NULL;
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->machine);
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->machine = _data_->_tmp12_;
#line 52 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->self->priv->pending_domains = g_list_remove (_data_->self->priv->pending_domains, _data_->_data33_->domain);
#line 54 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp13_ = _data_->machine;
#line 54 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp14_ = _g_object_ref0 (_data_->_tmp13_);
#line 54 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_object_set_data_full ((GObject*) _data_->_data33_->domain, "machine", _data_->_tmp14_, g_object_unref);
#line 55 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp15_ = boxes_app_app;
#line 55 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp16_ = _data_->_tmp15_->collection;
#line 55 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp17_ = _data_->machine;
#line 55 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_collection_add_item (_data_->_tmp16_, (BoxesCollectionItem*) _data_->_tmp17_);
#line 57 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp18_ = boxes_collection_source_get_name (_data_->source);
#line 57 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp19_ = _data_->_tmp18_;
#line 57 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp20_ = _data_->_tmp19_;
#line 57 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp21_ = g_strcmp0 (_data_->_tmp20_, BOXES_APP_DEFAULT_SOURCE_NAME) != 0;
#line 57 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_free0 (_data_->_tmp20_);
#line 57 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_data_->_tmp21_) {
#line 58 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->result = _data_->machine;
#line 58 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data_->_tmp10_);
#line 58 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block33_data_unref (_data_->_data33_);
#line 58 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data33_ = NULL;
#line 58 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 58 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		if (_data_->_state_ != 0) {
#line 58 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			while (_data_->_task_complete_ != TRUE) {
#line 58 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 1349 "libvirt-broker.c"
			}
		}
#line 58 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 58 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 1356 "libvirt-broker.c"
	}
	{
#line 62 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp22_ = _data_->machine;
#line 62 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp23_ = boxes_libvirt_machine_get_domain (_data_->_tmp22_);
#line 62 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp24_ = _data_->_tmp23_;
#line 62 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp25_ = gvir_domain_get_config (_data_->_tmp24_, (guint) 0, &_data_->_inner_error_);
#line 62 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->config = _data_->_tmp25_;
#line 62 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 1371 "libvirt-broker.c"
			goto __catch12_g_error;
		}
#line 63 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp26_ = _data_->config;
#line 63 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_state_ = 3;
#line 63 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		boxes_vm_configurator_update_existing_domain (_data_->_tmp26_, _data_->connection, boxes_libvirt_broker_add_domain_ready, _data_);
#line 63 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 1382 "libvirt-broker.c"
		_state_3:
#line 63 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		boxes_vm_configurator_update_existing_domain_finish (_data_->_res_);
#line 64 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp27_ = _data_->machine;
#line 64 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp28_ = boxes_libvirt_machine_get_domain (_data_->_tmp27_);
#line 64 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp29_ = _data_->_tmp28_;
#line 64 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp30_ = _data_->config;
#line 64 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		gvir_domain_set_config (_data_->_tmp29_, _data_->_tmp30_, &_data_->_inner_error_);
#line 64 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 64 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_g_object_unref0 (_data_->config);
#line 1400 "libvirt-broker.c"
			goto __catch12_g_error;
		}
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data_->config);
#line 1405 "libvirt-broker.c"
	}
	goto __finally12;
	__catch12_g_error:
	{
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->e = _data_->_inner_error_;
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_inner_error_ = NULL;
#line 66 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp31_ = gvir_domain_get_name (_data_->_data33_->domain);
#line 66 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp32_ = _data_->e;
#line 66 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp33_ = _data_->_tmp32_->message;
#line 66 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_warning ("libvirt-broker.vala:66: Failed to update domain '%s': %s", _data_->_tmp31_, _data_->_tmp33_);
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_error_free0 (_data_->e);
#line 1424 "libvirt-broker.c"
	}
	__finally12:
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data_->_tmp10_);
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data_->machine);
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block33_data_unref (_data_->_data33_);
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data33_ = NULL;
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 1443 "libvirt-broker.c"
	}
#line 69 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->result = _data_->machine;
#line 69 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->_tmp10_);
#line 69 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	block33_data_unref (_data_->_data33_);
#line 69 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_data33_ = NULL;
#line 69 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 69 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_data_->_state_ != 0) {
#line 69 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		while (_data_->_task_complete_ != TRUE) {
#line 69 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 1461 "libvirt-broker.c"
		}
	}
#line 69 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_object_unref (_data_->_async_result);
#line 69 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return FALSE;
#line 1468 "libvirt-broker.c"
}


static void
boxes_libvirt_broker_try_add_new_domain_data_free (gpointer _data)
{
	BoxesLibvirtBrokerTryAddNewDomainData* _data_;
	_data_ = _data;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->source);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->connection);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->domain);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_slice_free (BoxesLibvirtBrokerTryAddNewDomainData, _data_);
#line 1487 "libvirt-broker.c"
}


static void
boxes_libvirt_broker_try_add_new_domain_async_ready_wrapper (GObject *source_object,
                                                             GAsyncResult *res,
                                                             void *user_data)
{
	BoxesLibvirtBrokerTryAddNewDomainData* _task_data_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_task_data_ = g_task_get_task_data (G_TASK (res));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_task_data_->_callback_ != NULL) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_task_data_->_callback_ (source_object, res, user_data);
#line 1503 "libvirt-broker.c"
	}
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_task_data_->_task_complete_ = TRUE;
#line 1507 "libvirt-broker.c"
}


static void
boxes_libvirt_broker_try_add_new_domain (BoxesLibvirtBroker* self,
                                         BoxesCollectionSource* source,
                                         GVirConnection* connection,
                                         GVirDomain* domain,
                                         GAsyncReadyCallback _callback_,
                                         gpointer _user_data_)
{
	BoxesLibvirtBrokerTryAddNewDomainData* _data_;
	BoxesLibvirtBroker* _tmp0_;
	BoxesCollectionSource* _tmp1_;
	GVirConnection* _tmp2_;
	GVirDomain* _tmp3_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_ = g_slice_new0 (BoxesLibvirtBrokerTryAddNewDomainData);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_callback_ = _callback_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, boxes_libvirt_broker_try_add_new_domain_async_ready_wrapper, _user_data_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_callback_ == NULL) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_task_complete_ = TRUE;
#line 1534 "libvirt-broker.c"
	}
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_libvirt_broker_try_add_new_domain_data_free);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->self = _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp1_ = _g_object_ref0 (source);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->source);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->source = _tmp1_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp2_ = _g_object_ref0 (connection);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->connection);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->connection = _tmp2_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp3_ = _g_object_ref0 (domain);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->domain);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->domain = _tmp3_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_libvirt_broker_try_add_new_domain_co (_data_);
#line 1562 "libvirt-broker.c"
}


static void
boxes_libvirt_broker_try_add_new_domain_finish (BoxesLibvirtBroker* self,
                                                GAsyncResult* _res_)
{
	BoxesLibvirtBrokerTryAddNewDomainData* _data_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
#line 1573 "libvirt-broker.c"
}


static void
boxes_libvirt_broker_try_add_new_domain_ready (GObject* source_object,
                                               GAsyncResult* _res_,
                                               gpointer _user_data_)
{
	BoxesLibvirtBrokerTryAddNewDomainData* _data_;
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_ = _user_data_;
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_source_object_ = source_object;
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_res_ = _res_;
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_task_complete_ = TRUE;
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_libvirt_broker_try_add_new_domain_co (_data_);
#line 1593 "libvirt-broker.c"
}


static gboolean
boxes_libvirt_broker_try_add_new_domain_co (BoxesLibvirtBrokerTryAddNewDomainData* _data_)
{
#line 73 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	switch (_data_->_state_) {
#line 73 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 0:
#line 1604 "libvirt-broker.c"
		goto _state_0;
#line 73 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 1:
#line 1608 "libvirt-broker.c"
		goto _state_1;
		default:
#line 73 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_assert_not_reached ();
#line 1613 "libvirt-broker.c"
	}
	_state_0:
#line 74 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp0_ = gvir_domain_get_name (_data_->domain);
#line 74 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (g_str_has_prefix (_data_->_tmp0_, "guestfs-")) {
#line 75 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp1_ = gvir_domain_get_name (_data_->domain);
#line 75 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_debug ("libvirt-broker.vala:75: Ignoring guestfs domain '%s'", _data_->_tmp1_);
#line 77 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 77 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		if (_data_->_state_ != 0) {
#line 77 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			while (_data_->_task_complete_ != TRUE) {
#line 77 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 1632 "libvirt-broker.c"
			}
		}
#line 77 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 77 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 1639 "libvirt-broker.c"
	}
	{
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_state_ = 1;
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		boxes_libvirt_broker_add_domain (_data_->self, _data_->source, _data_->connection, _data_->domain, boxes_libvirt_broker_try_add_new_domain_ready, _data_);
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 1648 "libvirt-broker.c"
		_state_1:
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp2_ = boxes_libvirt_broker_add_domain_finish (_data_->self, _data_->_res_, &_data_->_inner_error_);
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp3_ = _data_->_tmp2_;
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data_->_tmp3_);
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 1658 "libvirt-broker.c"
			goto __catch13_g_error;
		}
	}
	goto __finally13;
	__catch13_g_error:
	{
#line 80 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_error_ = _data_->_inner_error_;
#line 80 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_inner_error_ = NULL;
#line 83 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp4_ = boxes_collection_source_get_name (_data_->source);
#line 83 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp5_ = _data_->_tmp4_;
#line 83 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp6_ = _data_->_tmp5_;
#line 83 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp7_ = _data_->_error_;
#line 83 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp8_ = _data_->_tmp7_->message;
#line 83 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_warning ("libvirt-broker.vala:83: Failed to create source '%s': %s", _data_->_tmp6_, _data_->_tmp8_);
#line 83 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_free0 (_data_->_tmp6_);
#line 80 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_error_free0 (_data_->_error_);
#line 1685 "libvirt-broker.c"
	}
	__finally13:
#line 80 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 80 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _data_->_inner_error_->message, g_quark_to_string (_data_->_inner_error_->domain), _data_->_inner_error_->code);
#line 80 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_clear_error (&_data_->_inner_error_);
#line 80 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 80 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 1698 "libvirt-broker.c"
	}
#line 73 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 73 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_data_->_state_ != 0) {
#line 73 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		while (_data_->_task_complete_ != TRUE) {
#line 73 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 1708 "libvirt-broker.c"
		}
	}
#line 73 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_object_unref (_data_->_async_result);
#line 73 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return FALSE;
#line 1715 "libvirt-broker.c"
}


static void
boxes_libvirt_broker_try_add_existing_domain_data_free (gpointer _data)
{
	BoxesLibvirtBrokerTryAddExistingDomainData* _data_;
	_data_ = _data;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->source);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->connection);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->domain);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->result);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_slice_free (BoxesLibvirtBrokerTryAddExistingDomainData, _data_);
#line 1736 "libvirt-broker.c"
}


static void
boxes_libvirt_broker_try_add_existing_domain_async_ready_wrapper (GObject *source_object,
                                                                  GAsyncResult *res,
                                                                  void *user_data)
{
	BoxesLibvirtBrokerTryAddExistingDomainData* _task_data_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_task_data_ = g_task_get_task_data (G_TASK (res));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_task_data_->_callback_ != NULL) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_task_data_->_callback_ (source_object, res, user_data);
#line 1752 "libvirt-broker.c"
	}
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_task_data_->_task_complete_ = TRUE;
#line 1756 "libvirt-broker.c"
}


static void
boxes_libvirt_broker_try_add_existing_domain (BoxesLibvirtBroker* self,
                                              BoxesCollectionSource* source,
                                              GVirConnection* connection,
                                              GVirDomain* domain,
                                              GAsyncReadyCallback _callback_,
                                              gpointer _user_data_)
{
	BoxesLibvirtBrokerTryAddExistingDomainData* _data_;
	BoxesLibvirtBroker* _tmp0_;
	BoxesCollectionSource* _tmp1_;
	GVirConnection* _tmp2_;
	GVirDomain* _tmp3_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_ = g_slice_new0 (BoxesLibvirtBrokerTryAddExistingDomainData);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_callback_ = _callback_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, boxes_libvirt_broker_try_add_existing_domain_async_ready_wrapper, _user_data_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_callback_ == NULL) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_task_complete_ = TRUE;
#line 1783 "libvirt-broker.c"
	}
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_libvirt_broker_try_add_existing_domain_data_free);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->self = _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp1_ = _g_object_ref0 (source);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->source);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->source = _tmp1_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp2_ = _g_object_ref0 (connection);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->connection);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->connection = _tmp2_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp3_ = _g_object_ref0 (domain);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->domain);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->domain = _tmp3_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_libvirt_broker_try_add_existing_domain_co (_data_);
#line 1811 "libvirt-broker.c"
}


static BoxesLibvirtMachine*
boxes_libvirt_broker_try_add_existing_domain_finish (BoxesLibvirtBroker* self,
                                                     GAsyncResult* _res_)
{
	BoxesLibvirtMachine* result;
	BoxesLibvirtBrokerTryAddExistingDomainData* _data_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	result = _data_->result;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->result = NULL;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return result;
#line 1829 "libvirt-broker.c"
}


static void
boxes_libvirt_broker_try_add_existing_domain_ready (GObject* source_object,
                                                    GAsyncResult* _res_,
                                                    gpointer _user_data_)
{
	BoxesLibvirtBrokerTryAddExistingDomainData* _data_;
#line 92 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_ = _user_data_;
#line 92 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_source_object_ = source_object;
#line 92 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_res_ = _res_;
#line 92 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_task_complete_ = TRUE;
#line 92 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_libvirt_broker_try_add_existing_domain_co (_data_);
#line 1849 "libvirt-broker.c"
}


static gboolean
boxes_libvirt_broker_try_add_existing_domain_co (BoxesLibvirtBrokerTryAddExistingDomainData* _data_)
{
#line 88 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	switch (_data_->_state_) {
#line 88 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 0:
#line 1860 "libvirt-broker.c"
		goto _state_0;
#line 88 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 1:
#line 1864 "libvirt-broker.c"
		goto _state_1;
		default:
#line 88 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_assert_not_reached ();
#line 1869 "libvirt-broker.c"
	}
	_state_0:
	{
#line 92 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_state_ = 1;
#line 92 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		boxes_libvirt_broker_add_domain (_data_->self, _data_->source, _data_->connection, _data_->domain, boxes_libvirt_broker_try_add_existing_domain_ready, _data_);
#line 92 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 1879 "libvirt-broker.c"
		_state_1:
#line 92 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp0_ = boxes_libvirt_broker_add_domain_finish (_data_->self, _data_->_res_, &_data_->_inner_error_);
#line 92 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->machine = _data_->_tmp0_;
#line 92 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 1887 "libvirt-broker.c"
			goto __catch14_g_error;
		}
#line 93 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp1_ = boxes_libvirt_machine_get_domain_config (_data_->machine);
#line 93 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp2_ = _data_->_tmp1_;
#line 93 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp3_ = _g_object_ref0 (_data_->_tmp2_);
#line 93 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->config = _data_->_tmp3_;
#line 96 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp5_ = _data_->config;
#line 96 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		if (boxes_vm_configurator_is_install_config (_data_->_tmp5_)) {
#line 96 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->_tmp4_ = TRUE;
#line 1904 "libvirt-broker.c"
		} else {
#line 96 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->_tmp6_ = _data_->config;
#line 96 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->_tmp4_ = boxes_vm_configurator_is_live_config (_data_->_tmp6_);
#line 1910 "libvirt-broker.c"
		}
#line 96 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		if (_data_->_tmp4_) {
#line 97 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->_tmp7_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->machine);
#line 97 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->_tmp8_ = _data_->_tmp7_;
#line 97 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			g_debug ("libvirt-broker.vala:97: Continuing installation/live session for '%s'," \
" ..", _data_->_tmp8_);
#line 98 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->_tmp9_ = boxes_vm_creator_new_for_install_completion (_data_->machine);
#line 98 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->_tmp10_ = _data_->_tmp9_;
#line 98 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_boxes_vm_creator_unref0 (_data_->_tmp10_);
#line 1926 "libvirt-broker.c"
		} else {
#line 99 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->_tmp11_ = _data_->config;
#line 99 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			if (boxes_vm_configurator_is_import_config (_data_->_tmp11_)) {
#line 100 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp12_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->machine);
#line 100 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp13_ = _data_->_tmp12_;
#line 100 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				g_debug ("libvirt-broker.vala:100: Continuing import of '%s', ..", _data_->_tmp13_);
#line 101 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp14_ = boxes_vm_importer_new_for_import_completion (_data_->machine);
#line 101 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp15_ = _data_->_tmp14_;
#line 101 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_boxes_vm_creator_unref0 (_data_->_tmp15_);
#line 1944 "libvirt-broker.c"
			} else {
#line 102 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp16_ = _data_->config;
#line 102 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				if (boxes_vm_configurator_is_libvirt_system_import_config (_data_->_tmp16_)) {
#line 103 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->_tmp17_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->machine);
#line 103 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->_tmp18_ = _data_->_tmp17_;
#line 103 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					g_debug ("libvirt-broker.vala:103: Continuing import of '%s', ..", _data_->_tmp18_);
#line 104 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->_tmp19_ = boxes_libvirt_vm_importer_new_for_import_completion (_data_->machine);
#line 104 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->_tmp20_ = _data_->_tmp19_;
#line 104 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_boxes_vm_creator_unref0 (_data_->_tmp20_);
#line 1962 "libvirt-broker.c"
				} else {
#line 105 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->_tmp21_ = _data_->config;
#line 105 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					if (boxes_vm_configurator_is_libvirt_cloning_config (_data_->_tmp21_)) {
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
						_data_->_tmp22_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->machine);
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
						_data_->_tmp23_ = _data_->_tmp22_;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
						g_debug ("libvirt-broker.vala:106: Continuing cloning of '%s', ..", _data_->_tmp23_);
#line 107 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
						_data_->_tmp24_ = boxes_libvirt_vm_cloner_new_for_cloning_completion (_data_->machine);
#line 107 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
						_data_->_tmp25_ = _data_->_tmp24_;
#line 107 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
						_boxes_vm_creator_unref0 (_data_->_tmp25_);
#line 1980 "libvirt-broker.c"
					}
				}
			}
		}
#line 110 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->result = _data_->machine;
#line 110 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data_->config);
#line 110 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 110 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		if (_data_->_state_ != 0) {
#line 110 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			while (_data_->_task_complete_ != TRUE) {
#line 110 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 1997 "libvirt-broker.c"
			}
		}
#line 110 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 110 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 2004 "libvirt-broker.c"
	}
	goto __finally14;
	__catch14_g_error:
	{
#line 91 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_error_ = _data_->_inner_error_;
#line 91 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_inner_error_ = NULL;
#line 112 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp26_ = boxes_collection_source_get_name (_data_->source);
#line 112 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp27_ = _data_->_tmp26_;
#line 112 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp28_ = _data_->_tmp27_;
#line 112 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp29_ = _data_->_error_;
#line 112 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp30_ = _data_->_tmp29_->message;
#line 112 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_warning ("libvirt-broker.vala:112: Failed to create source '%s': %s", _data_->_tmp28_, _data_->_tmp30_);
#line 112 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_free0 (_data_->_tmp28_);
#line 114 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->result = NULL;
#line 114 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_error_free0 (_data_->_error_);
#line 114 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 114 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		if (_data_->_state_ != 0) {
#line 114 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			while (_data_->_task_complete_ != TRUE) {
#line 114 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 2039 "libvirt-broker.c"
			}
		}
#line 114 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 114 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 2046 "libvirt-broker.c"
	}
	__finally14:
#line 91 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _data_->_inner_error_->message, g_quark_to_string (_data_->_inner_error_->domain), _data_->_inner_error_->code);
#line 91 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_clear_error (&_data_->_inner_error_);
#line 91 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_object_unref (_data_->_async_result);
#line 91 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return FALSE;
#line 2057 "libvirt-broker.c"
}


static void
boxes_libvirt_broker_real_add_source_data_free (gpointer _data)
{
	BoxesLibvirtBrokerAddSourceData* _data_;
	_data_ = _data;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_slice_free (BoxesLibvirtBrokerAddSourceData, _data_);
#line 2070 "libvirt-broker.c"
}


static void
boxes_libvirt_broker_real_add_source_async_ready_wrapper (GObject *source_object,
                                                          GAsyncResult *res,
                                                          void *user_data)
{
	BoxesLibvirtBrokerAddSourceData* _task_data_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_task_data_ = g_task_get_task_data (G_TASK (res));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_task_data_->_callback_ != NULL) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_task_data_->_callback_ (source_object, res, user_data);
#line 2086 "libvirt-broker.c"
	}
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_task_data_->_task_complete_ = TRUE;
#line 2090 "libvirt-broker.c"
}


static void
boxes_libvirt_broker_real_add_source (BoxesBroker* base,
                                      BoxesCollectionSource* source,
                                      GAsyncReadyCallback _callback_,
                                      gpointer _user_data_)
{
	BoxesLibvirtBroker * self;
	BoxesLibvirtBrokerAddSourceData* _data_;
	BoxesLibvirtBroker* _tmp0_;
	BoxesCollectionSource* _tmp1_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	self = (BoxesLibvirtBroker*) base;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_ = g_slice_new0 (BoxesLibvirtBrokerAddSourceData);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_callback_ = _callback_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, boxes_libvirt_broker_real_add_source_async_ready_wrapper, _user_data_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_callback_ == NULL) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_task_complete_ = TRUE;
#line 2116 "libvirt-broker.c"
	}
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_libvirt_broker_real_add_source_data_free);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->self = _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp1_ = _g_object_ref0 (source);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->source);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->source = _tmp1_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_libvirt_broker_real_add_source_co (_data_);
#line 2132 "libvirt-broker.c"
}


static void
boxes_libvirt_broker_real_add_source_finish (BoxesBroker* base,
                                             GAsyncResult* _res_,
                                             GError** error)
{
	BoxesLibvirtBrokerAddSourceData* _data_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), error);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (NULL == _data_) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return;
#line 2148 "libvirt-broker.c"
	}
}


static Block35Data*
block35_data_ref (Block35Data* _data35_)
{
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_atomic_int_inc (&_data35_->_ref_count_);
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return _data35_;
#line 2160 "libvirt-broker.c"
}


static void
block35_data_unref (void * _userdata_)
{
	Block35Data* _data35_;
	_data35_ = (Block35Data*) _userdata_;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (g_atomic_int_dec_and_test (&_data35_->_ref_count_)) {
#line 2171 "libvirt-broker.c"
		BoxesLibvirtBroker* self;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		self = _data35_->self;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data35_->source);
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (self);
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_slice_free (Block35Data, _data35_);
#line 2181 "libvirt-broker.c"
	}
}


static void
boxes_libvirt_broker_add_source_ready (GObject* source_object,
                                       GAsyncResult* _res_,
                                       gpointer _user_data_)
{
	BoxesLibvirtBrokerAddSourceData* _data_;
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_ = _user_data_;
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_source_object_ = source_object;
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_res_ = _res_;
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_task_complete_ = TRUE;
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_libvirt_broker_real_add_source_co (_data_);
#line 2202 "libvirt-broker.c"
}


static Block36Data*
block36_data_ref (Block36Data* _data36_)
{
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_atomic_int_inc (&_data36_->_ref_count_);
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return _data36_;
#line 2213 "libvirt-broker.c"
}


static void
block36_data_unref (void * _userdata_)
{
	Block36Data* _data36_;
	_data36_ = (Block36Data*) _userdata_;
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (g_atomic_int_dec_and_test (&_data36_->_ref_count_)) {
#line 2224 "libvirt-broker.c"
		BoxesLibvirtBroker* self;
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		self = _data36_->_data35_->self;
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data36_->cloned);
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data36_->clone);
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block35_data_unref (_data36_->_data35_);
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data36_->_data35_ = NULL;
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_slice_free (Block36Data, _data36_);
#line 2238 "libvirt-broker.c"
	}
}


static void
____lambda20_ (Block36Data* _data36_)
{
	Block35Data* _data35_;
	BoxesLibvirtBroker* self;
	BoxesLibvirtMachine* _tmp0_;
	gboolean _tmp1_;
	gboolean _tmp2_;
#line 164 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data35_ = _data36_->_data35_;
#line 164 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	self = _data35_->self;
#line 165 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp0_ = _data36_->clone;
#line 165 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp1_ = boxes_machine_get_under_construction ((BoxesMachine*) _tmp0_);
#line 165 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp2_ = _tmp1_;
#line 165 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (!_tmp2_) {
#line 2263 "libvirt-broker.c"
		BoxesLibvirtMachine* _tmp3_;
		BoxesLibvirtMachine* _tmp4_;
		gulong _tmp5_;
#line 166 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_tmp3_ = _data36_->cloned;
#line 166 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		boxes_machine_set_can_delete ((BoxesMachine*) _tmp3_, TRUE);
#line 167 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_tmp4_ = _data36_->clone;
#line 167 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_tmp5_ = _data36_->under_construct_id;
#line 167 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_signal_handler_disconnect ((GObject*) _tmp4_, _tmp5_);
#line 2277 "libvirt-broker.c"
	}
}


static void
_____lambda20__g_object_notify (GObject* _sender,
                                GParamSpec* pspec,
                                gpointer self)
{
#line 164 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	____lambda20_ (self);
#line 2289 "libvirt-broker.c"
}


static void
__lambda21_ (BoxesLibvirtBroker* self,
             GVirConnection* connection,
             GVirDomain* domain)
{
	BoxesLibvirtMachine* machine = NULL;
	gconstpointer _tmp0_;
	BoxesLibvirtMachine* _tmp1_;
	BoxesLibvirtMachine* _tmp2_;
	BoxesApp* _tmp3_;
	BoxesLibvirtMachine* _tmp4_;
#line 172 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_return_if_fail (connection != NULL);
#line 172 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_return_if_fail (domain != NULL);
#line 173 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp0_ = g_object_get_data ((GObject*) domain, "machine");
#line 173 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp1_ = _g_object_ref0 ((BoxesLibvirtMachine*) _tmp0_);
#line 173 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	machine = _tmp1_;
#line 174 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp2_ = machine;
#line 174 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_tmp2_ == NULL) {
#line 175 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (machine);
#line 175 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return;
#line 2322 "libvirt-broker.c"
	}
#line 177 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp3_ = boxes_app_app;
#line 177 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp4_ = machine;
#line 177 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_app_delete_machine (_tmp3_, (BoxesMachine*) _tmp4_, FALSE);
#line 172 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (machine);
#line 2332 "libvirt-broker.c"
}


static void
___lambda21__gvir_connection_domain_removed (GVirConnection* _sender,
                                             GVirDomain* dom,
                                             gpointer self)
{
#line 172 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	__lambda21_ ((BoxesLibvirtBroker*) self, _sender, dom);
#line 2343 "libvirt-broker.c"
}


static void
__lambda23_ (Block35Data* _data35_,
             GVirConnection* connection,
             GVirDomain* domain)
{
	BoxesLibvirtBroker* self;
	const gchar* _tmp0_;
#line 180 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	self = _data35_->self;
#line 180 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_return_if_fail (connection != NULL);
#line 180 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_return_if_fail (domain != NULL);
#line 181 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp0_ = gvir_domain_get_name (domain);
#line 181 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_debug ("libvirt-broker.vala:181: New domain '%s'", _tmp0_);
#line 182 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_libvirt_broker_try_add_new_domain (self, _data35_->source, connection, domain, NULL, NULL);
#line 2366 "libvirt-broker.c"
}


static void
___lambda23__gvir_connection_domain_added (GVirConnection* _sender,
                                           GVirDomain* dom,
                                           gpointer self)
{
#line 180 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	__lambda23_ (self, _sender, dom);
#line 2377 "libvirt-broker.c"
}


static gboolean
boxes_libvirt_broker_real_add_source_co (BoxesLibvirtBrokerAddSourceData* _data_)
{
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	switch (_data_->_state_) {
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 0:
#line 2388 "libvirt-broker.c"
		goto _state_0;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 1:
#line 2392 "libvirt-broker.c"
		goto _state_1;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 2:
#line 2396 "libvirt-broker.c"
		goto _state_2;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 3:
#line 2400 "libvirt-broker.c"
		goto _state_3;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 4:
#line 2404 "libvirt-broker.c"
		goto _state_4;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 5:
#line 2408 "libvirt-broker.c"
		goto _state_5;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 6:
#line 2412 "libvirt-broker.c"
		goto _state_6;
		default:
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_assert_not_reached ();
#line 2417 "libvirt-broker.c"
	}
	_state_0:
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_data35_ = g_slice_new0 (Block35Data);
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_data35_->_ref_count_ = 1;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_data35_->self = g_object_ref (_data_->self);
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->_data35_->source);
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_data35_->source = _data_->source;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_data35_->_async_data_ = _data_;
#line 119 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp0_ = _data_->self->priv->connections;
#line 119 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp1_ = boxes_collection_source_get_name (_data_->_data35_->source);
#line 119 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp2_ = _data_->_tmp1_;
#line 119 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp3_ = _data_->_tmp2_;
#line 119 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp4_ = g_hash_table_lookup (_data_->_tmp0_, _data_->_tmp3_);
#line 119 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp5_ = ((GVirConnection*) _data_->_tmp4_) != NULL;
#line 119 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_free0 (_data_->_tmp3_);
#line 119 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_data_->_tmp5_) {
#line 120 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block35_data_unref (_data_->_data35_);
#line 120 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data35_ = NULL;
#line 120 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 120 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		if (_data_->_state_ != 0) {
#line 120 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			while (_data_->_task_complete_ != TRUE) {
#line 120 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 2460 "libvirt-broker.c"
			}
		}
#line 120 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 120 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 2467 "libvirt-broker.c"
	}
#line 122 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp6_ = boxes_collection_source_get_uri (_data_->_data35_->source);
#line 122 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp7_ = _data_->_tmp6_;
#line 122 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp8_ = _data_->_tmp7_;
#line 122 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp9_ = gvir_connection_new (_data_->_tmp8_);
#line 122 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp10_ = _data_->_tmp9_;
#line 122 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_free0 (_data_->_tmp8_);
#line 122 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->connection = _data_->_tmp10_;
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp11_ = _data_->connection;
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_state_ = 1;
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	gvir_connection_open_async (_data_->_tmp11_, NULL, boxes_libvirt_broker_add_source_ready, _data_);
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return FALSE;
#line 2491 "libvirt-broker.c"
	_state_1:
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	gvir_connection_open_finish (_data_->_tmp11_, _data_->_res_, &_data_->_inner_error_);
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data_->connection);
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block35_data_unref (_data_->_data35_);
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data35_ = NULL;
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 2509 "libvirt-broker.c"
	}
#line 125 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp12_ = _data_->connection;
#line 125 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_state_ = 2;
#line 125 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	gvir_connection_fetch_domains_async (_data_->_tmp12_, NULL, boxes_libvirt_broker_add_source_ready, _data_);
#line 125 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return FALSE;
#line 2519 "libvirt-broker.c"
	_state_2:
#line 125 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	gvir_connection_fetch_domains_finish (_data_->_tmp12_, _data_->_res_, &_data_->_inner_error_);
#line 125 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 125 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 125 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data_->connection);
#line 125 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block35_data_unref (_data_->_data35_);
#line 125 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data35_ = NULL;
#line 125 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 125 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 2537 "libvirt-broker.c"
	}
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp13_ = _data_->connection;
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_state_ = 3;
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	gvir_connection_fetch_storage_pools_async (_data_->_tmp13_, NULL, boxes_libvirt_broker_add_source_ready, _data_);
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return FALSE;
#line 2547 "libvirt-broker.c"
	_state_3:
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	gvir_connection_fetch_storage_pools_finish (_data_->_tmp13_, _data_->_res_, &_data_->_inner_error_);
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data_->connection);
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block35_data_unref (_data_->_data35_);
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data35_ = NULL;
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 2565 "libvirt-broker.c"
	}
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp14_ = _data_->connection;
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_state_ = 4;
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_ensure_storage_pool (_data_->_tmp14_, boxes_libvirt_broker_add_source_ready, _data_);
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return FALSE;
#line 2575 "libvirt-broker.c"
	_state_4:
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp15_ = boxes_ensure_storage_pool_finish (_data_->_res_, &_data_->_inner_error_);
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp16_ = _data_->_tmp15_;
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->_tmp16_);
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data_->connection);
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block35_data_unref (_data_->_data35_);
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data35_ = NULL;
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 2597 "libvirt-broker.c"
	}
#line 129 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp17_ = _data_->self->priv->connections;
#line 129 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp18_ = boxes_collection_source_get_name (_data_->_data35_->source);
#line 129 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp19_ = _data_->_tmp18_;
#line 129 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp20_ = _data_->connection;
#line 129 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp21_ = _g_object_ref0 (_data_->_tmp20_);
#line 129 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_hash_table_insert (_data_->_tmp17_, _data_->_tmp19_, _data_->_tmp21_);
#line 131 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->clones = NULL;
#line 132 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp22_ = _data_->connection;
#line 132 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp23_ = gvir_connection_get_domains (_data_->_tmp22_);
#line 2617 "libvirt-broker.c"
	{
#line 132 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->domain_collection = _data_->_tmp23_;
#line 132 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		for (_data_->domain_it = _data_->domain_collection; _data_->domain_it != NULL; _data_->domain_it = _data_->domain_it->next) {
#line 132 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->_tmp24_ = _g_object_ref0 ((GVirDomain*) _data_->domain_it->data);
#line 132 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->domain = _data_->_tmp24_;
#line 2627 "libvirt-broker.c"
			{
#line 133 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp25_ = _data_->connection;
#line 133 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp26_ = _data_->domain;
#line 133 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_state_ = 5;
#line 133 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				boxes_libvirt_broker_try_add_existing_domain (_data_->self, _data_->_data35_->source, _data_->_tmp25_, _data_->_tmp26_, boxes_libvirt_broker_add_source_ready, _data_);
#line 133 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				return FALSE;
#line 2639 "libvirt-broker.c"
				_state_5:
#line 133 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp27_ = boxes_libvirt_broker_try_add_existing_domain_finish (_data_->self, _data_->_res_);
#line 133 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->machine = _data_->_tmp27_;
#line 135 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp28_ = _data_->machine;
#line 135 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp29_ = boxes_libvirt_machine_get_domain_config (_data_->_tmp28_);
#line 135 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp30_ = _data_->_tmp29_;
#line 135 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				if (boxes_vm_configurator_is_libvirt_cloning_config (_data_->_tmp30_)) {
#line 136 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->_tmp31_ = _data_->machine;
#line 136 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->_tmp32_ = _g_object_ref0 (_data_->_tmp31_);
#line 136 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->clones = g_list_append (_data_->clones, _data_->_tmp32_);
#line 2659 "libvirt-broker.c"
				}
#line 132 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_g_object_unref0 (_data_->machine);
#line 132 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_g_object_unref0 (_data_->domain);
#line 2665 "libvirt-broker.c"
			}
		}
#line 132 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		__g_list_free__g_object_unref0_0 (_data_->domain_collection);
#line 2670 "libvirt-broker.c"
	}
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp33_ = _data_->clones;
#line 2674 "libvirt-broker.c"
	{
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->clone_collection = _data_->_tmp33_;
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		for (_data_->clone_it = _data_->clone_collection; _data_->clone_it != NULL; _data_->clone_it = _data_->clone_it->next) {
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->_tmp34_ = _g_object_ref0 ((BoxesLibvirtMachine*) _data_->clone_it->data);
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->clone = _data_->_tmp34_;
#line 2684 "libvirt-broker.c"
			{
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_data36_ = g_slice_new0 (Block36Data);
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_data36_->_ref_count_ = 1;
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_data36_->_data35_ = block35_data_ref (_data_->_data35_);
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_data36_->clone = _data_->clone;
#line 140 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp35_ = _data_->_data36_->clone;
#line 140 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp36_ = boxes_libvirt_machine_get_vm_creator (_data_->_tmp35_);
#line 140 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp37_ = _data_->_tmp36_;
#line 140 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp38_ = boxes_vm_importer_get_source_media (G_TYPE_CHECK_INSTANCE_TYPE (_data_->_tmp37_, BOXES_TYPE_VM_IMPORTER) ? ((BoxesVMImporter*) _data_->_tmp37_) : NULL);
#line 140 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp39_ = _data_->_tmp38_;
#line 140 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp40_ = ((BoxesInstallerMedia*) _data_->_tmp39_)->device_file;
#line 140 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp41_ = g_strdup (_data_->_tmp40_);
#line 140 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->disk_path = _data_->_tmp41_;
#line 141 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_data36_->cloned = NULL;
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp42_ = boxes_app_app;
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp43_ = _data_->_tmp42_->collection;
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp44_ = _data_->_tmp43_->items;
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp45_ = _data_->_tmp44_->pdata;
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp45__length1 = (gint) _data_->_tmp44_->len;
#line 2722 "libvirt-broker.c"
				{
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->item_collection_length1 = 0;
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->_item_collection_size_ = 0;
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->item_collection = _data_->_tmp45_;
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->item_collection_length1 = _data_->_tmp45__length1;
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					for (_data_->item_it = 0; _data_->item_it < _data_->_tmp45__length1; _data_->item_it = _data_->item_it + 1) {
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
						_data_->_tmp46_ = _g_object_ref0 (_data_->item_collection[_data_->item_it]);
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
						_data_->item = _data_->_tmp46_;
#line 2738 "libvirt-broker.c"
						{
#line 144 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp47_ = _data_->item;
#line 144 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							if (!G_TYPE_CHECK_INSTANCE_TYPE (_data_->_tmp47_, BOXES_TYPE_LIBVIRT_MACHINE)) {
#line 145 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_g_object_unref0 (_data_->item);
#line 145 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								continue;
#line 2748 "libvirt-broker.c"
							}
#line 147 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp48_ = _data_->item;
#line 147 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp49_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_data_->_tmp48_, BOXES_TYPE_LIBVIRT_MACHINE) ? ((BoxesLibvirtMachine*) _data_->_tmp48_) : NULL);
#line 147 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_vala1_machine = _data_->_tmp49_;
#line 148 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp50_ = _data_->_vala1_machine;
#line 148 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp51_ = boxes_libvirt_machine_get_storage_volume (_data_->_tmp50_);
#line 148 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp52_ = _data_->_tmp51_;
#line 148 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp53_ = _g_object_ref0 (_data_->_tmp52_);
#line 148 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->volume = _data_->_tmp53_;
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp55_ = _data_->volume;
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							if (_data_->_tmp55_ != NULL) {
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_data_->_tmp57_ = _data_->volume;
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_data_->_tmp58_ = gvir_storage_vol_get_path (_data_->_tmp57_, &_data_->_inner_error_);
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_data_->_tmp56_ = _data_->_tmp58_;
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									_g_object_unref0 (_data_->volume);
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									_g_object_unref0 (_data_->_vala1_machine);
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									_g_object_unref0 (_data_->item);
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									_g_free0 (_data_->disk_path);
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									block36_data_unref (_data_->_data36_);
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									_data_->_data36_ = NULL;
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									__g_list_free__g_object_unref0_0 (_data_->clones);
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									_g_object_unref0 (_data_->connection);
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									block35_data_unref (_data_->_data35_);
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									_data_->_data35_ = NULL;
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									g_object_unref (_data_->_async_result);
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									return FALSE;
#line 2804 "libvirt-broker.c"
								}
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_data_->_tmp59_ = _data_->disk_path;
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_data_->_tmp54_ = g_strcmp0 (_data_->_tmp56_, _data_->_tmp59_) == 0;
#line 2810 "libvirt-broker.c"
							} else {
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_data_->_tmp54_ = FALSE;
#line 2814 "libvirt-broker.c"
							}
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							if (_data_->_tmp54_) {
#line 150 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_data_->_tmp60_ = _data_->_vala1_machine;
#line 150 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_data_->_tmp61_ = _g_object_ref0 (_data_->_tmp60_);
#line 150 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_g_object_unref0 (_data_->_data36_->cloned);
#line 150 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_data_->_data36_->cloned = _data_->_tmp61_;
#line 152 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_g_object_unref0 (_data_->volume);
#line 152 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_g_object_unref0 (_data_->_vala1_machine);
#line 152 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_g_object_unref0 (_data_->item);
#line 152 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								break;
#line 2834 "libvirt-broker.c"
							}
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_g_object_unref0 (_data_->volume);
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_g_object_unref0 (_data_->_vala1_machine);
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_g_object_unref0 (_data_->item);
#line 2842 "libvirt-broker.c"
						}
					}
				}
#line 156 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp62_ = _data_->_data36_->cloned;
#line 156 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				if (_data_->_tmp62_ == NULL) {
#line 157 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->_tmp63_ = _data_->_data36_->clone;
#line 157 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->_tmp64_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->_tmp63_);
#line 157 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->_tmp65_ = _data_->_tmp64_;
#line 157 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					g_warning ("libvirt-broker.vala:157: Failed to find source machine of clone %s", _data_->_tmp65_);
#line 159 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_g_free0 (_data_->disk_path);
#line 159 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					block36_data_unref (_data_->_data36_);
#line 159 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->_data36_ = NULL;
#line 159 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					continue;
#line 2866 "libvirt-broker.c"
				}
#line 162 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp66_ = _data_->_data36_->cloned;
#line 162 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				boxes_machine_set_can_delete ((BoxesMachine*) _data_->_tmp66_, FALSE);
#line 163 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_data36_->under_construct_id = (gulong) 0;
#line 164 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp67_ = _data_->_data36_->clone;
#line 164 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp68_ = g_signal_connect_data ((GObject*) _data_->_tmp67_, "notify::under-construction", (GCallback) _____lambda20__g_object_notify, block36_data_ref (_data_->_data36_), (GClosureNotify) block36_data_unref, 0);
#line 164 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_data36_->under_construct_id = _data_->_tmp68_;
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_g_free0 (_data_->disk_path);
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				block36_data_unref (_data_->_data36_);
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_data36_ = NULL;
#line 2886 "libvirt-broker.c"
			}
		}
	}
#line 172 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp69_ = _data_->connection;
#line 172 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_signal_connect_object (_data_->_tmp69_, "domain-removed", (GCallback) ___lambda21__gvir_connection_domain_removed, _data_->self, 0);
#line 180 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp70_ = _data_->connection;
#line 180 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_signal_connect_data (_data_->_tmp70_, "domain-added", (GCallback) ___lambda23__gvir_connection_domain_added, block35_data_ref (_data_->_data35_), (GClosureNotify) block35_data_unref, 0);
#line 185 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_state_ = 6;
#line 185 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	BOXES_BROKER_CLASS (boxes_libvirt_broker_parent_class)->add_source (G_TYPE_CHECK_INSTANCE_CAST (_data_->self, BOXES_TYPE_BROKER, BoxesBroker), _data_->_data35_->source, boxes_libvirt_broker_add_source_ready, _data_);
#line 185 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return FALSE;
#line 2904 "libvirt-broker.c"
	_state_6:
#line 185 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	BOXES_BROKER_CLASS (boxes_libvirt_broker_parent_class)->add_source_finish (G_TYPE_CHECK_INSTANCE_CAST (_data_->self, BOXES_TYPE_BROKER, BoxesBroker), _data_->_res_, &_data_->_inner_error_);
#line 185 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 185 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 185 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		__g_list_free__g_object_unref0_0 (_data_->clones);
#line 185 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data_->connection);
#line 185 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block35_data_unref (_data_->_data35_);
#line 185 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data35_ = NULL;
#line 185 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 185 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 2924 "libvirt-broker.c"
	}
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	__g_list_free__g_object_unref0_0 (_data_->clones);
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->connection);
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	block35_data_unref (_data_->_data35_);
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_data35_ = NULL;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_data_->_state_ != 0) {
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		while (_data_->_task_complete_ != TRUE) {
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 2942 "libvirt-broker.c"
		}
	}
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_object_unref (_data_->_async_result);
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return FALSE;
#line 2949 "libvirt-broker.c"
}


static void
boxes_libvirt_broker_class_init (BoxesLibvirtBrokerClass * klass)
{
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_libvirt_broker_parent_class = g_type_class_peek_parent (klass);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_type_class_add_private (klass, sizeof (BoxesLibvirtBrokerPrivate));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	((BoxesBrokerClass *) klass)->add_source = (void (*) (BoxesBroker *, BoxesCollectionSource*, GAsyncReadyCallback, gpointer)) boxes_libvirt_broker_real_add_source;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	((BoxesBrokerClass *) klass)->add_source_finish = (void (*) (BoxesBroker *, GAsyncResult*, GError**)) boxes_libvirt_broker_real_add_source_finish;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	G_OBJECT_CLASS (klass)->finalize = boxes_libvirt_broker_finalize;
#line 2966 "libvirt-broker.c"
}


static void
boxes_libvirt_broker_instance_init (BoxesLibvirtBroker * self)
{
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	self->priv = BOXES_LIBVIRT_BROKER_GET_PRIVATE (self);
#line 2975 "libvirt-broker.c"
}


static void
boxes_libvirt_broker_finalize (GObject * obj)
{
	BoxesLibvirtBroker * self;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, BOXES_TYPE_LIBVIRT_BROKER, BoxesLibvirtBroker);
#line 7 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_hash_table_unref0 (self->priv->connections);
#line 8 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	__g_list_free__g_object_unref0_0 (self->priv->pending_domains);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	G_OBJECT_CLASS (boxes_libvirt_broker_parent_class)->finalize (obj);
#line 2991 "libvirt-broker.c"
}


GType
boxes_libvirt_broker_get_type (void)
{
	static volatile gsize boxes_libvirt_broker_type_id__volatile = 0;
	if (g_once_init_enter (&boxes_libvirt_broker_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (BoxesLibvirtBrokerClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) boxes_libvirt_broker_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (BoxesLibvirtBroker), 0, (GInstanceInitFunc) boxes_libvirt_broker_instance_init, NULL };
		GType boxes_libvirt_broker_type_id;
		boxes_libvirt_broker_type_id = g_type_register_static (BOXES_TYPE_BROKER, "BoxesLibvirtBroker", &g_define_type_info, 0);
		g_once_init_leave (&boxes_libvirt_broker_type_id__volatile, boxes_libvirt_broker_type_id);
	}
	return boxes_libvirt_broker_type_id__volatile;
}



