/* YandexPublishing.c generated by valac 0.40.4, the Vala compiler
 * generated from YandexPublishing.vala, do not modify */

/* Copyright 2010+ Evgeniy Polyakov <zbr@ioremap.net>
 *
 * This software is licensed under the GNU LGPL (version 2.1 or later).
 * See the COPYING file in this distribution.
 */


#include <glib.h>
#include <glib-object.h>
#include <shotwell-plugin-dev-1.0.h>
#include <stdlib.h>
#include <string.h>
#include <glib/gi18n-lib.h>
#include "shotwell-plugin-common.h"
#include <webkit2/webkit2.h>
#include <gdk/gdk.h>
#include <gtk/gtk.h>
#include <gee.h>
#include <libsoup/soup.h>
#include <glib/gstdio.h>
#include <gio/gio.h>
#include <libxml/tree.h>
#include <float.h>
#include <math.h>
#include <gobject/gvaluecollector.h>


#define TYPE_YANDEX_SERVICE (yandex_service_get_type ())
#define YANDEX_SERVICE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_YANDEX_SERVICE, YandexService))
#define YANDEX_SERVICE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_YANDEX_SERVICE, YandexServiceClass))
#define IS_YANDEX_SERVICE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_YANDEX_SERVICE))
#define IS_YANDEX_SERVICE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_YANDEX_SERVICE))
#define YANDEX_SERVICE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_YANDEX_SERVICE, YandexServiceClass))

typedef struct _YandexService YandexService;
typedef struct _YandexServiceClass YandexServiceClass;
typedef struct _YandexServicePrivate YandexServicePrivate;
enum  {
	YANDEX_SERVICE_0_PROPERTY,
	YANDEX_SERVICE_NUM_PROPERTIES
};
static GParamSpec* yandex_service_properties[YANDEX_SERVICE_NUM_PROPERTIES];
#define _g_free0(var) (var = (g_free (var), NULL))

#define PUBLISHING_YANDEX_TYPE_YANDEX_PUBLISHER (publishing_yandex_yandex_publisher_get_type ())
#define PUBLISHING_YANDEX_YANDEX_PUBLISHER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PUBLISHING_YANDEX_TYPE_YANDEX_PUBLISHER, PublishingYandexYandexPublisher))
#define PUBLISHING_YANDEX_YANDEX_PUBLISHER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PUBLISHING_YANDEX_TYPE_YANDEX_PUBLISHER, PublishingYandexYandexPublisherClass))
#define PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PUBLISHING_YANDEX_TYPE_YANDEX_PUBLISHER))
#define PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PUBLISHING_YANDEX_TYPE_YANDEX_PUBLISHER))
#define PUBLISHING_YANDEX_YANDEX_PUBLISHER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PUBLISHING_YANDEX_TYPE_YANDEX_PUBLISHER, PublishingYandexYandexPublisherClass))

typedef struct _PublishingYandexYandexPublisher PublishingYandexYandexPublisher;
typedef struct _PublishingYandexYandexPublisherClass PublishingYandexYandexPublisherClass;

#define PUBLISHING_YANDEX_TYPE_TRANSACTION (publishing_yandex_transaction_get_type ())
#define PUBLISHING_YANDEX_TRANSACTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PUBLISHING_YANDEX_TYPE_TRANSACTION, PublishingYandexTransaction))
#define PUBLISHING_YANDEX_TRANSACTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PUBLISHING_YANDEX_TYPE_TRANSACTION, PublishingYandexTransactionClass))
#define PUBLISHING_YANDEX_IS_TRANSACTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PUBLISHING_YANDEX_TYPE_TRANSACTION))
#define PUBLISHING_YANDEX_IS_TRANSACTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PUBLISHING_YANDEX_TYPE_TRANSACTION))
#define PUBLISHING_YANDEX_TRANSACTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PUBLISHING_YANDEX_TYPE_TRANSACTION, PublishingYandexTransactionClass))

typedef struct _PublishingYandexTransaction PublishingYandexTransaction;
typedef struct _PublishingYandexTransactionClass PublishingYandexTransactionClass;
typedef struct _PublishingYandexTransactionPrivate PublishingYandexTransactionPrivate;

#define PUBLISHING_YANDEX_TYPE_SESSION (publishing_yandex_session_get_type ())
#define PUBLISHING_YANDEX_SESSION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PUBLISHING_YANDEX_TYPE_SESSION, PublishingYandexSession))
#define PUBLISHING_YANDEX_SESSION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PUBLISHING_YANDEX_TYPE_SESSION, PublishingYandexSessionClass))
#define PUBLISHING_YANDEX_IS_SESSION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PUBLISHING_YANDEX_TYPE_SESSION))
#define PUBLISHING_YANDEX_IS_SESSION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PUBLISHING_YANDEX_TYPE_SESSION))
#define PUBLISHING_YANDEX_SESSION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PUBLISHING_YANDEX_TYPE_SESSION, PublishingYandexSessionClass))

typedef struct _PublishingYandexSession PublishingYandexSession;
typedef struct _PublishingYandexSessionClass PublishingYandexSessionClass;
#define _publishing_rest_support_session_unref0(var) ((var == NULL) ? NULL : (var = (publishing_rest_support_session_unref (var), NULL)))
typedef struct _PublishingYandexSessionPrivate PublishingYandexSessionPrivate;

#define PUBLISHING_YANDEX_TYPE_WEB_AUTH_PANE (publishing_yandex_web_auth_pane_get_type ())
#define PUBLISHING_YANDEX_WEB_AUTH_PANE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PUBLISHING_YANDEX_TYPE_WEB_AUTH_PANE, PublishingYandexWebAuthPane))
#define PUBLISHING_YANDEX_WEB_AUTH_PANE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PUBLISHING_YANDEX_TYPE_WEB_AUTH_PANE, PublishingYandexWebAuthPaneClass))
#define PUBLISHING_YANDEX_IS_WEB_AUTH_PANE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PUBLISHING_YANDEX_TYPE_WEB_AUTH_PANE))
#define PUBLISHING_YANDEX_IS_WEB_AUTH_PANE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PUBLISHING_YANDEX_TYPE_WEB_AUTH_PANE))
#define PUBLISHING_YANDEX_WEB_AUTH_PANE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PUBLISHING_YANDEX_TYPE_WEB_AUTH_PANE, PublishingYandexWebAuthPaneClass))

typedef struct _PublishingYandexWebAuthPane PublishingYandexWebAuthPane;
typedef struct _PublishingYandexWebAuthPaneClass PublishingYandexWebAuthPaneClass;
typedef struct _PublishingYandexWebAuthPanePrivate PublishingYandexWebAuthPanePrivate;
enum  {
	PUBLISHING_YANDEX_WEB_AUTH_PANE_0_PROPERTY,
	PUBLISHING_YANDEX_WEB_AUTH_PANE_NUM_PROPERTIES
};
static GParamSpec* publishing_yandex_web_auth_pane_properties[PUBLISHING_YANDEX_WEB_AUTH_PANE_NUM_PROPERTIES];
#define _g_regex_unref0(var) ((var == NULL) ? NULL : (var = (g_regex_unref (var), NULL)))
#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
#define _g_match_info_unref0(var) ((var == NULL) ? NULL : (var = (g_match_info_unref (var), NULL)))
#define __vala_WebKitNavigationAction_free0(var) ((var == NULL) ? NULL : (var = (_vala_WebKitNavigationAction_free (var), NULL)))
enum  {
	PUBLISHING_YANDEX_WEB_AUTH_PANE_LOGIN_SUCCEEDED_SIGNAL,
	PUBLISHING_YANDEX_WEB_AUTH_PANE_LOGIN_FAILED_SIGNAL,
	PUBLISHING_YANDEX_WEB_AUTH_PANE_NUM_SIGNALS
};
static guint publishing_yandex_web_auth_pane_signals[PUBLISHING_YANDEX_WEB_AUTH_PANE_NUM_SIGNALS] = {0};

#define PUBLISHING_YANDEX_TYPE_PUBLISH_OPTIONS (publishing_yandex_publish_options_get_type ())
#define PUBLISHING_YANDEX_PUBLISH_OPTIONS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PUBLISHING_YANDEX_TYPE_PUBLISH_OPTIONS, PublishingYandexPublishOptions))
#define PUBLISHING_YANDEX_PUBLISH_OPTIONS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PUBLISHING_YANDEX_TYPE_PUBLISH_OPTIONS, PublishingYandexPublishOptionsClass))
#define PUBLISHING_YANDEX_IS_PUBLISH_OPTIONS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PUBLISHING_YANDEX_TYPE_PUBLISH_OPTIONS))
#define PUBLISHING_YANDEX_IS_PUBLISH_OPTIONS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PUBLISHING_YANDEX_TYPE_PUBLISH_OPTIONS))
#define PUBLISHING_YANDEX_PUBLISH_OPTIONS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PUBLISHING_YANDEX_TYPE_PUBLISH_OPTIONS, PublishingYandexPublishOptionsClass))

typedef struct _PublishingYandexPublishOptions PublishingYandexPublishOptions;
typedef struct _PublishingYandexPublishOptionsClass PublishingYandexPublishOptionsClass;
typedef struct _PublishingYandexPublishOptionsPrivate PublishingYandexPublishOptionsPrivate;
typedef struct _PublishingYandexParamSpecPublishOptions PublishingYandexParamSpecPublishOptions;

#define PUBLISHING_YANDEX_TYPE_PUBLISHING_OPTIONS_PANE (publishing_yandex_publishing_options_pane_get_type ())
#define PUBLISHING_YANDEX_PUBLISHING_OPTIONS_PANE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PUBLISHING_YANDEX_TYPE_PUBLISHING_OPTIONS_PANE, PublishingYandexPublishingOptionsPane))
#define PUBLISHING_YANDEX_PUBLISHING_OPTIONS_PANE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PUBLISHING_YANDEX_TYPE_PUBLISHING_OPTIONS_PANE, PublishingYandexPublishingOptionsPaneClass))
#define PUBLISHING_YANDEX_IS_PUBLISHING_OPTIONS_PANE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PUBLISHING_YANDEX_TYPE_PUBLISHING_OPTIONS_PANE))
#define PUBLISHING_YANDEX_IS_PUBLISHING_OPTIONS_PANE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PUBLISHING_YANDEX_TYPE_PUBLISHING_OPTIONS_PANE))
#define PUBLISHING_YANDEX_PUBLISHING_OPTIONS_PANE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PUBLISHING_YANDEX_TYPE_PUBLISHING_OPTIONS_PANE, PublishingYandexPublishingOptionsPaneClass))

typedef struct _PublishingYandexPublishingOptionsPane PublishingYandexPublishingOptionsPane;
typedef struct _PublishingYandexPublishingOptionsPaneClass PublishingYandexPublishingOptionsPaneClass;
typedef struct _PublishingYandexPublishingOptionsPanePrivate PublishingYandexPublishingOptionsPanePrivate;
enum  {
	PUBLISHING_YANDEX_PUBLISHING_OPTIONS_PANE_0_PROPERTY,
	PUBLISHING_YANDEX_PUBLISHING_OPTIONS_PANE_NUM_PROPERTIES
};
static GParamSpec* publishing_yandex_publishing_options_pane_properties[PUBLISHING_YANDEX_PUBLISHING_OPTIONS_PANE_NUM_PROPERTIES];
enum  {
	PUBLISHING_YANDEX_PUBLISHING_OPTIONS_PANE_PUBLISH_SIGNAL,
	PUBLISHING_YANDEX_PUBLISHING_OPTIONS_PANE_LOGOUT_SIGNAL,
	PUBLISHING_YANDEX_PUBLISHING_OPTIONS_PANE_NUM_SIGNALS
};
static guint publishing_yandex_publishing_options_pane_signals[PUBLISHING_YANDEX_PUBLISHING_OPTIONS_PANE_NUM_SIGNALS] = {0};

#define PUBLISHING_YANDEX_TYPE_UPLOADER (publishing_yandex_uploader_get_type ())
#define PUBLISHING_YANDEX_UPLOADER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PUBLISHING_YANDEX_TYPE_UPLOADER, PublishingYandexUploader))
#define PUBLISHING_YANDEX_UPLOADER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PUBLISHING_YANDEX_TYPE_UPLOADER, PublishingYandexUploaderClass))
#define PUBLISHING_YANDEX_IS_UPLOADER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PUBLISHING_YANDEX_TYPE_UPLOADER))
#define PUBLISHING_YANDEX_IS_UPLOADER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PUBLISHING_YANDEX_TYPE_UPLOADER))
#define PUBLISHING_YANDEX_UPLOADER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PUBLISHING_YANDEX_TYPE_UPLOADER, PublishingYandexUploaderClass))

typedef struct _PublishingYandexUploader PublishingYandexUploader;
typedef struct _PublishingYandexUploaderClass PublishingYandexUploaderClass;
typedef struct _PublishingYandexUploaderPrivate PublishingYandexUploaderPrivate;

#define PUBLISHING_YANDEX_TYPE_UPLOAD_TRANSACTION (publishing_yandex_upload_transaction_get_type ())
#define PUBLISHING_YANDEX_UPLOAD_TRANSACTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PUBLISHING_YANDEX_TYPE_UPLOAD_TRANSACTION, PublishingYandexUploadTransaction))
#define PUBLISHING_YANDEX_UPLOAD_TRANSACTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PUBLISHING_YANDEX_TYPE_UPLOAD_TRANSACTION, PublishingYandexUploadTransactionClass))
#define PUBLISHING_YANDEX_IS_UPLOAD_TRANSACTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PUBLISHING_YANDEX_TYPE_UPLOAD_TRANSACTION))
#define PUBLISHING_YANDEX_IS_UPLOAD_TRANSACTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PUBLISHING_YANDEX_TYPE_UPLOAD_TRANSACTION))
#define PUBLISHING_YANDEX_UPLOAD_TRANSACTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PUBLISHING_YANDEX_TYPE_UPLOAD_TRANSACTION, PublishingYandexUploadTransactionClass))

typedef struct _PublishingYandexUploadTransaction PublishingYandexUploadTransaction;
typedef struct _PublishingYandexUploadTransactionClass PublishingYandexUploadTransactionClass;
typedef struct _PublishingYandexUploadTransactionPrivate PublishingYandexUploadTransactionPrivate;
#define __vala_SoupMultipart_free0(var) ((var == NULL) ? NULL : (var = (_vala_SoupMultipart_free (var), NULL)))
#define _g_hash_table_unref0(var) ((var == NULL) ? NULL : (var = (g_hash_table_unref (var), NULL)))
#define __vala_SoupBuffer_free0(var) ((var == NULL) ? NULL : (var = (_vala_SoupBuffer_free (var), NULL)))
typedef struct _PublishingYandexYandexPublisherPrivate PublishingYandexYandexPublisherPrivate;
enum  {
	PUBLISHING_YANDEX_YANDEX_PUBLISHER_0_PROPERTY,
	PUBLISHING_YANDEX_YANDEX_PUBLISHER_NUM_PROPERTIES
};
static GParamSpec* publishing_yandex_yandex_publisher_properties[PUBLISHING_YANDEX_YANDEX_PUBLISHER_NUM_PROPERTIES];
#define _publishing_yandex_publish_options_unref0(var) ((var == NULL) ? NULL : (var = (publishing_yandex_publish_options_unref (var), NULL)))
#define _publishing_rest_support_xml_document_unref0(var) ((var == NULL) ? NULL : (var = (publishing_rest_support_xml_document_unref (var), NULL)))
#define _publishing_rest_support_transaction_unref0(var) ((var == NULL) ? NULL : (var = (publishing_rest_support_transaction_unref (var), NULL)))
#define _publishing_rest_support_batch_uploader_unref0(var) ((var == NULL) ? NULL : (var = (publishing_rest_support_batch_uploader_unref (var), NULL)))
#define _vala_assert(expr, msg) if G_LIKELY (expr) ; else g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);
#define _vala_return_if_fail(expr, msg) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return; }
#define _vala_return_val_if_fail(expr, msg, val) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return val; }
#define _vala_warn_if_fail(expr, msg) if G_LIKELY (expr) ; else g_warn_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);

struct _YandexService {
	GObject parent_instance;
	YandexServicePrivate * priv;
};

struct _YandexServiceClass {
	GObjectClass parent_class;
};

struct _PublishingYandexTransaction {
	PublishingRESTSupportTransaction parent_instance;
	PublishingYandexTransactionPrivate * priv;
};

struct _PublishingYandexTransactionClass {
	PublishingRESTSupportTransactionClass parent_class;
};

struct _PublishingYandexSession {
	PublishingRESTSupportSession parent_instance;
	PublishingYandexSessionPrivate * priv;
};

struct _PublishingYandexSessionClass {
	PublishingRESTSupportSessionClass parent_class;
};

struct _PublishingYandexSessionPrivate {
	gchar* auth_token;
};

struct _PublishingYandexWebAuthPane {
	ShotwellPluginsCommonWebAuthenticationPane parent_instance;
	PublishingYandexWebAuthPanePrivate * priv;
};

struct _PublishingYandexWebAuthPaneClass {
	ShotwellPluginsCommonWebAuthenticationPaneClass parent_class;
};

struct _PublishingYandexWebAuthPanePrivate {
	GRegex* re;
};

struct _PublishingYandexPublishOptions {
	GTypeInstance parent_instance;
	volatile int ref_count;
	PublishingYandexPublishOptionsPrivate * priv;
	gboolean disable_comments;
	gboolean hide_original;
	gchar* access_type;
	gchar* destination_album;
	gchar* destination_album_url;
};

struct _PublishingYandexPublishOptionsClass {
	GTypeClass parent_class;
	void (*finalize) (PublishingYandexPublishOptions *self);
};

struct _PublishingYandexParamSpecPublishOptions {
	GParamSpec parent_instance;
};

struct _PublishingYandexPublishingOptionsPane {
	GObject parent_instance;
	PublishingYandexPublishingOptionsPanePrivate * priv;
};

struct _PublishingYandexPublishingOptionsPaneClass {
	GObjectClass parent_class;
};

struct _PublishingYandexPublishingOptionsPanePrivate {
	GtkBox* box;
	GtkBuilder* builder;
	GtkButton* logout_button;
	GtkButton* publish_button;
	GtkComboBoxText* album_list;
	PublishingYandexPublishOptions* options;
};

struct _PublishingYandexUploader {
	PublishingRESTSupportBatchUploader parent_instance;
	PublishingYandexUploaderPrivate * priv;
};

struct _PublishingYandexUploaderClass {
	PublishingRESTSupportBatchUploaderClass parent_class;
};

struct _PublishingYandexUploaderPrivate {
	PublishingYandexPublishOptions* options;
};

struct _PublishingYandexUploadTransaction {
	PublishingYandexTransaction parent_instance;
	PublishingYandexUploadTransactionPrivate * priv;
};

struct _PublishingYandexUploadTransactionClass {
	PublishingYandexTransactionClass parent_class;
};

struct _PublishingYandexYandexPublisher {
	GObject parent_instance;
	PublishingYandexYandexPublisherPrivate * priv;
};

struct _PublishingYandexYandexPublisherClass {
	GObjectClass parent_class;
};

struct _PublishingYandexYandexPublisherPrivate {
	SpitPublishingPluginHost* host;
	SpitPublishingProgressCallback progress_reporter;
	gpointer progress_reporter_target;
	GDestroyNotify progress_reporter_target_destroy_notify;
	SpitPublishingService* service;
	gchar* service_url;
	GeeHashMap* album_list;
	PublishingYandexPublishOptions* options;
	gboolean running;
	PublishingYandexWebAuthPane* web_auth_pane;
	PublishingYandexSession* session;
};


static gpointer yandex_service_parent_class = NULL;
static SpitPluggableIface * yandex_service_spit_pluggable_parent_iface = NULL;
static SpitPublishingServiceIface * yandex_service_spit_publishing_service_parent_iface = NULL;
static gpointer publishing_yandex_transaction_parent_class = NULL;
static gpointer publishing_yandex_session_parent_class = NULL;
static gpointer publishing_yandex_web_auth_pane_parent_class = NULL;
static gpointer publishing_yandex_publish_options_parent_class = NULL;
static gpointer publishing_yandex_publishing_options_pane_parent_class = NULL;
static SpitPublishingDialogPaneIface * publishing_yandex_publishing_options_pane_spit_publishing_dialog_pane_parent_iface = NULL;
static gpointer publishing_yandex_uploader_parent_class = NULL;
static gpointer publishing_yandex_upload_transaction_parent_class = NULL;
static gpointer publishing_yandex_yandex_publisher_parent_class = NULL;
static SpitPublishingPublisherIface * publishing_yandex_yandex_publisher_spit_publishing_publisher_parent_iface = NULL;

GType yandex_service_get_type (void) G_GNUC_CONST;
static gint yandex_service_real_get_pluggable_interface (SpitPluggable* base,
                                                  gint min_host_interface,
                                                  gint max_host_interface);
static const gchar* yandex_service_real_get_id (SpitPluggable* base);
static const gchar* yandex_service_real_get_pluggable_name (SpitPluggable* base);
static void yandex_service_real_get_info (SpitPluggable* base,
                                   SpitPluggableInfo* info);
static SpitPublishingPublisher* yandex_service_real_create_publisher (SpitPublishingService* base,
                                                               SpitPublishingPluginHost* host);
PublishingYandexYandexPublisher* publishing_yandex_yandex_publisher_new (SpitPublishingService* service,
                                                                         SpitPublishingPluginHost* host);
PublishingYandexYandexPublisher* publishing_yandex_yandex_publisher_construct (GType object_type,
                                                                               SpitPublishingService* service,
                                                                               SpitPublishingPluginHost* host);
GType publishing_yandex_yandex_publisher_get_type (void) G_GNUC_CONST;
static SpitPublishingPublisherMediaType yandex_service_real_get_supported_media (SpitPublishingService* base);
static void yandex_service_real_activation (SpitPluggable* base,
                                     gboolean enabled);
YandexService* yandex_service_new (void);
YandexService* yandex_service_construct (GType object_type);
#define PUBLISHING_YANDEX_SERVICE_NAME "Yandex.Fotki"
#define PUBLISHING_YANDEX_client_id "52be4756dee3438792c831a75d7cd360"
GType publishing_yandex_transaction_get_type (void) G_GNUC_CONST;
GType publishing_yandex_session_get_type (void) G_GNUC_CONST;
PublishingYandexTransaction* publishing_yandex_transaction_new_with_url (PublishingYandexSession* session,
                                                                         const gchar* url,
                                                                         PublishingRESTSupportHttpMethod method);
PublishingYandexTransaction* publishing_yandex_transaction_construct_with_url (GType object_type,
                                                                               PublishingYandexSession* session,
                                                                               const gchar* url,
                                                                               PublishingRESTSupportHttpMethod method);
static void publishing_yandex_transaction_add_headers (PublishingYandexTransaction* self);
gchar* publishing_yandex_session_get_auth_token (PublishingYandexSession* self);
PublishingYandexTransaction* publishing_yandex_transaction_new (PublishingYandexSession* session,
                                                                PublishingRESTSupportHttpMethod method);
PublishingYandexTransaction* publishing_yandex_transaction_construct (GType object_type,
                                                                      PublishingYandexSession* session,
                                                                      PublishingRESTSupportHttpMethod method);
void publishing_yandex_transaction_add_data (PublishingYandexTransaction* self,
                                             const gchar* type,
                                             const gchar* data);
#define PUBLISHING_YANDEX_SESSION_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), PUBLISHING_YANDEX_TYPE_SESSION, PublishingYandexSessionPrivate))
PublishingYandexSession* publishing_yandex_session_new (void);
PublishingYandexSession* publishing_yandex_session_construct (GType object_type);
static gboolean publishing_yandex_session_real_is_authenticated (PublishingRESTSupportSession* base);
void publishing_yandex_session_deauthenticate (PublishingYandexSession* self);
void publishing_yandex_session_set_auth_token (PublishingYandexSession* self,
                                               const gchar* token);
static void publishing_yandex_session_finalize (PublishingRESTSupportSession * obj);
GType publishing_yandex_web_auth_pane_get_type (void) G_GNUC_CONST;
#define PUBLISHING_YANDEX_WEB_AUTH_PANE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), PUBLISHING_YANDEX_TYPE_WEB_AUTH_PANE, PublishingYandexWebAuthPanePrivate))
PublishingYandexWebAuthPane* publishing_yandex_web_auth_pane_new (const gchar* login_url);
PublishingYandexWebAuthPane* publishing_yandex_web_auth_pane_construct (GType object_type,
                                                                        const gchar* login_url);
static void publishing_yandex_web_auth_pane_real_constructed (GObject* base);
static gboolean publishing_yandex_web_auth_pane_on_decide_policy (PublishingYandexWebAuthPane* self,
                                                           WebKitPolicyDecision* decision,
                                                           WebKitPolicyDecisionType type);
static gboolean _publishing_yandex_web_auth_pane_on_decide_policy_webkit_web_view_decide_policy (WebKitWebView* _sender,
                                                                                          WebKitPolicyDecision* decision,
                                                                                          WebKitPolicyDecisionType type,
                                                                                          gpointer self);
static void publishing_yandex_web_auth_pane_real_on_page_load (ShotwellPluginsCommonWebAuthenticationPane* base);
static WebKitNavigationAction* _vala_WebKitNavigationAction_copy (WebKitNavigationAction* self);
static void _vala_WebKitNavigationAction_free (WebKitNavigationAction* self);
static void publishing_yandex_web_auth_pane_finalize (GObject * obj);
gpointer publishing_yandex_publish_options_ref (gpointer instance);
void publishing_yandex_publish_options_unref (gpointer instance);
GParamSpec* publishing_yandex_param_spec_publish_options (const gchar* name,
                                                          const gchar* nick,
                                                          const gchar* blurb,
                                                          GType object_type,
                                                          GParamFlags flags);
void publishing_yandex_value_set_publish_options (GValue* value,
                                                  gpointer v_object);
void publishing_yandex_value_take_publish_options (GValue* value,
                                                   gpointer v_object);
gpointer publishing_yandex_value_get_publish_options (const GValue* value);
GType publishing_yandex_publish_options_get_type (void) G_GNUC_CONST;
PublishingYandexPublishOptions* publishing_yandex_publish_options_new (void);
PublishingYandexPublishOptions* publishing_yandex_publish_options_construct (GType object_type);
static void publishing_yandex_publish_options_finalize (PublishingYandexPublishOptions * obj);
GType publishing_yandex_publishing_options_pane_get_type (void) G_GNUC_CONST;
#define PUBLISHING_YANDEX_PUBLISHING_OPTIONS_PANE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), PUBLISHING_YANDEX_TYPE_PUBLISHING_OPTIONS_PANE, PublishingYandexPublishingOptionsPanePrivate))
static SpitPublishingDialogPaneGeometryOptions publishing_yandex_publishing_options_pane_real_get_preferred_geometry (SpitPublishingDialogPane* base);
static void publishing_yandex_publishing_options_pane_real_on_pane_installed (SpitPublishingDialogPane* base);
static void publishing_yandex_publishing_options_pane_real_on_pane_uninstalled (SpitPublishingDialogPane* base);
static GtkWidget* publishing_yandex_publishing_options_pane_real_get_widget (SpitPublishingDialogPane* base);
PublishingYandexPublishingOptionsPane* publishing_yandex_publishing_options_pane_new (PublishingYandexPublishOptions* options,
                                                                                      GeeHashMap* list,
                                                                                      SpitPublishingPluginHost* host);
PublishingYandexPublishingOptionsPane* publishing_yandex_publishing_options_pane_construct (GType object_type,
                                                                                            PublishingYandexPublishOptions* options,
                                                                                            GeeHashMap* list,
                                                                                            SpitPublishingPluginHost* host);
static void publishing_yandex_publishing_options_pane_on_publish_clicked (PublishingYandexPublishingOptionsPane* self);
static void _publishing_yandex_publishing_options_pane_on_publish_clicked_gtk_button_clicked (GtkButton* _sender,
                                                                                       gpointer self);
static void publishing_yandex_publishing_options_pane_on_logout_clicked (PublishingYandexPublishingOptionsPane* self);
static void _publishing_yandex_publishing_options_pane_on_logout_clicked_gtk_button_clicked (GtkButton* _sender,
                                                                                      gpointer self);
static void publishing_yandex_publishing_options_pane_finalize (GObject * obj);
GType publishing_yandex_uploader_get_type (void) G_GNUC_CONST;
#define PUBLISHING_YANDEX_UPLOADER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), PUBLISHING_YANDEX_TYPE_UPLOADER, PublishingYandexUploaderPrivate))
PublishingYandexUploader* publishing_yandex_uploader_new (PublishingYandexSession* session,
                                                          PublishingYandexPublishOptions* options,
                                                          SpitPublishingPublishable** photos,
                                                          int photos_length1);
PublishingYandexUploader* publishing_yandex_uploader_construct (GType object_type,
                                                                PublishingYandexSession* session,
                                                                PublishingYandexPublishOptions* options,
                                                                SpitPublishingPublishable** photos,
                                                                int photos_length1);
static PublishingRESTSupportTransaction* publishing_yandex_uploader_real_create_transaction (PublishingRESTSupportBatchUploader* base,
                                                                                      SpitPublishingPublishable* publishable);
PublishingYandexUploadTransaction* publishing_yandex_upload_transaction_new (PublishingYandexSession* session,
                                                                             PublishingYandexPublishOptions* options,
                                                                             SpitPublishingPublishable* photo);
PublishingYandexUploadTransaction* publishing_yandex_upload_transaction_construct (GType object_type,
                                                                                   PublishingYandexSession* session,
                                                                                   PublishingYandexPublishOptions* options,
                                                                                   SpitPublishingPublishable* photo);
GType publishing_yandex_upload_transaction_get_type (void) G_GNUC_CONST;
static void publishing_yandex_uploader_finalize (PublishingRESTSupportBatchUploader * obj);
static void _vala_SoupMultipart_free (SoupMultipart* self);
static void _g_free0_ (gpointer var);
static void _vala_SoupBuffer_free (SoupBuffer* self);
#define PUBLISHING_YANDEX_YANDEX_PUBLISHER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), PUBLISHING_YANDEX_TYPE_YANDEX_PUBLISHER, PublishingYandexYandexPublisherPrivate))
gchar* publishing_yandex_yandex_publisher_get_persistent_auth_token (PublishingYandexYandexPublisher* self);
void publishing_yandex_yandex_publisher_set_persistent_auth_token (PublishingYandexYandexPublisher* self,
                                                                   const gchar* auth_token);
void publishing_yandex_yandex_publisher_invalidate_persistent_session (PublishingYandexYandexPublisher* self);
gboolean publishing_yandex_yandex_publisher_is_persistent_session_available (PublishingYandexYandexPublisher* self);
static gboolean publishing_yandex_yandex_publisher_real_is_running (SpitPublishingPublisher* base);
static SpitPublishingService* publishing_yandex_yandex_publisher_real_get_service (SpitPublishingPublisher* base);
static gchar* publishing_yandex_yandex_publisher_check_response (PublishingYandexYandexPublisher* self,
                                                          PublishingRESTSupportXmlDocument* doc);
static void publishing_yandex_yandex_publisher_parse_album_entry (PublishingYandexYandexPublisher* self,
                                                           xmlNode* e,
                                                           GError** error);
void publishing_yandex_yandex_publisher_parse_album_creation (PublishingYandexYandexPublisher* self,
                                                              const gchar* data,
                                                              GError** error);
static gchar* _publishing_yandex_yandex_publisher_check_response_publishing_rest_support_xml_document_check_for_error_response (PublishingRESTSupportXmlDocument* doc,
                                                                                                                         gpointer self);
void publishing_yandex_yandex_publisher_parse_album_list (PublishingYandexYandexPublisher* self,
                                                          const gchar* data,
                                                          GError** error);
static void publishing_yandex_yandex_publisher_album_creation_error (PublishingYandexYandexPublisher* self,
                                                              PublishingRESTSupportTransaction* t,
                                                              GError* err);
static void publishing_yandex_yandex_publisher_album_creation_complete (PublishingYandexYandexPublisher* self,
                                                                 PublishingRESTSupportTransaction* t);
static void _publishing_yandex_yandex_publisher_album_creation_complete_publishing_rest_support_transaction_completed (PublishingRESTSupportTransaction* _sender,
                                                                                                                gpointer self);
static void _publishing_yandex_yandex_publisher_album_creation_error_publishing_rest_support_transaction_network_error (PublishingRESTSupportTransaction* _sender,
                                                                                                                 GError* err,
                                                                                                                 gpointer self);
static void publishing_yandex_yandex_publisher_start_upload (PublishingYandexYandexPublisher* self);
static void publishing_yandex_yandex_publisher_create_destination_album (PublishingYandexYandexPublisher* self);
static void publishing_yandex_yandex_publisher_on_upload_complete (PublishingYandexYandexPublisher* self,
                                                            PublishingRESTSupportBatchUploader* uploader,
                                                            gint num_published);
static void _publishing_yandex_yandex_publisher_on_upload_complete_publishing_rest_support_batch_uploader_upload_complete (PublishingRESTSupportBatchUploader* _sender,
                                                                                                                    gint num_photos_published,
                                                                                                                    gpointer self);
static void publishing_yandex_yandex_publisher_on_upload_error (PublishingYandexYandexPublisher* self,
                                                         PublishingRESTSupportBatchUploader* uploader,
                                                         GError* err);
static void _publishing_yandex_yandex_publisher_on_upload_error_publishing_rest_support_batch_uploader_upload_error (PublishingRESTSupportBatchUploader* _sender,
                                                                                                              GError* err,
                                                                                                              gpointer self);
static void publishing_yandex_yandex_publisher_on_upload_status_updated (PublishingYandexYandexPublisher* self,
                                                                  gint file_number,
                                                                  gdouble completed_fraction);
static void _publishing_yandex_yandex_publisher_on_upload_status_updated_spit_publishing_progress_callback (gint file_number,
                                                                                                     gdouble fraction_complete,
                                                                                                     gpointer self);
static void publishing_yandex_yandex_publisher_on_logout (PublishingYandexYandexPublisher* self);
static void publishing_yandex_yandex_publisher_on_publish (PublishingYandexYandexPublisher* self);
void publishing_yandex_yandex_publisher_service_get_album_list_error (PublishingYandexYandexPublisher* self,
                                                                      PublishingRESTSupportTransaction* t,
                                                                      GError* err);
void publishing_yandex_yandex_publisher_service_get_album_list_complete (PublishingYandexYandexPublisher* self,
                                                                         PublishingRESTSupportTransaction* t);
static void _publishing_yandex_yandex_publisher_service_get_album_list_complete_publishing_rest_support_transaction_completed (PublishingRESTSupportTransaction* _sender,
                                                                                                                        gpointer self);
static void _publishing_yandex_yandex_publisher_service_get_album_list_error_publishing_rest_support_transaction_network_error (PublishingRESTSupportTransaction* _sender,
                                                                                                                         GError* err,
                                                                                                                         gpointer self);
static void _publishing_yandex_yandex_publisher_on_publish_publishing_yandex_publishing_options_pane_publish (PublishingYandexPublishingOptionsPane* _sender,
                                                                                                       gpointer self);
static void _publishing_yandex_yandex_publisher_on_logout_publishing_yandex_publishing_options_pane_logout (PublishingYandexPublishingOptionsPane* _sender,
                                                                                                     gpointer self);
void publishing_yandex_yandex_publisher_service_get_album_list (PublishingYandexYandexPublisher* self,
                                                                const gchar* url);
void publishing_yandex_yandex_publisher_fetch_account_error (PublishingYandexYandexPublisher* self,
                                                             PublishingRESTSupportTransaction* t,
                                                             GError* err);
void publishing_yandex_yandex_publisher_fetch_account_complete (PublishingYandexYandexPublisher* self,
                                                                PublishingRESTSupportTransaction* t);
static void _publishing_yandex_yandex_publisher_fetch_account_complete_publishing_rest_support_transaction_completed (PublishingRESTSupportTransaction* _sender,
                                                                                                               gpointer self);
static void _publishing_yandex_yandex_publisher_fetch_account_error_publishing_rest_support_transaction_network_error (PublishingRESTSupportTransaction* _sender,
                                                                                                                GError* err,
                                                                                                                gpointer self);
void publishing_yandex_yandex_publisher_fetch_account_information (PublishingYandexYandexPublisher* self,
                                                                   const gchar* auth_token);
static void publishing_yandex_yandex_publisher_web_auth_login_succeeded (PublishingYandexYandexPublisher* self,
                                                                  const gchar* access_token);
static void publishing_yandex_yandex_publisher_web_auth_login_failed (PublishingYandexYandexPublisher* self);
static void publishing_yandex_yandex_publisher_start_web_auth (PublishingYandexYandexPublisher* self);
static void _publishing_yandex_yandex_publisher_web_auth_login_succeeded_publishing_yandex_web_auth_pane_login_succeeded (PublishingYandexWebAuthPane* _sender,
                                                                                                                   const gchar* success_url,
                                                                                                                   gpointer self);
static void _publishing_yandex_yandex_publisher_web_auth_login_failed_publishing_yandex_web_auth_pane_login_failed (PublishingYandexWebAuthPane* _sender,
                                                                                                             gpointer self);
static void publishing_yandex_yandex_publisher_show_welcome_page (PublishingYandexYandexPublisher* self);
static void _publishing_yandex_yandex_publisher_start_web_auth_spit_publishing_login_callback (gpointer self);
static void publishing_yandex_yandex_publisher_real_start (SpitPublishingPublisher* base);
static void publishing_yandex_yandex_publisher_real_stop (SpitPublishingPublisher* base);
static void publishing_yandex_yandex_publisher_finalize (GObject * obj);
static void _vala_array_destroy (gpointer array,
                          gint array_length,
                          GDestroyNotify destroy_func);
static void _vala_array_free (gpointer array,
                       gint array_length,
                       GDestroyNotify destroy_func);
static gint _vala_array_length (gpointer array);


static gint
yandex_service_real_get_pluggable_interface (SpitPluggable* base,
                                             gint min_host_interface,
                                             gint max_host_interface)
{
	YandexService * self;
	gint result = 0;
#line 8 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_YANDEX_SERVICE, YandexService);
#line 9 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	result = spit_negotiate_interfaces (min_host_interface, max_host_interface, SPIT_PUBLISHING_CURRENT_INTERFACE);
#line 9 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return result;
#line 569 "YandexPublishing.c"
}


static const gchar*
yandex_service_real_get_id (SpitPluggable* base)
{
	YandexService * self;
	const gchar* result = NULL;
#line 12 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_YANDEX_SERVICE, YandexService);
#line 13 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	result = "org.yorba.shotwell.publishing.yandex-fotki";
#line 13 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return result;
#line 584 "YandexPublishing.c"
}


static const gchar*
yandex_service_real_get_pluggable_name (SpitPluggable* base)
{
	YandexService * self;
	const gchar* result = NULL;
#line 16 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_YANDEX_SERVICE, YandexService);
#line 17 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	result = "Yandex.Fotki";
#line 17 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return result;
#line 599 "YandexPublishing.c"
}


static void
yandex_service_real_get_info (SpitPluggable* base,
                              SpitPluggableInfo* info)
{
	YandexService * self;
	gchar* _tmp0_;
	gchar* _tmp1_;
	gchar* _tmp2_;
	gchar* _tmp3_;
	gchar* _tmp4_;
	gchar* _tmp5_;
	gchar* _tmp6_;
#line 20 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_YANDEX_SERVICE, YandexService);
#line 20 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (info != NULL);
#line 21 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = g_strdup ("Evgeniy Polyakov <zbr@ioremap.net>");
#line 21 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 ((*info).authors);
#line 21 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	(*info).authors = _tmp0_;
#line 22 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp1_ = g_strdup (_ ("Copyright 2010+ Evgeniy Polyakov <zbr@ioremap.net>"));
#line 22 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 ((*info).copyright);
#line 22 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	(*info).copyright = _tmp1_;
#line 23 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp2_ = g_strdup (RESOURCES_TRANSLATORS);
#line 23 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 ((*info).translators);
#line 23 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	(*info).translators = _tmp2_;
#line 24 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp3_ = g_strdup (_VERSION);
#line 24 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 ((*info).version);
#line 24 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	(*info).version = _tmp3_;
#line 25 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp4_ = g_strdup (_ ("Visit the Yandex.Fotki web site"));
#line 25 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 ((*info).website_name);
#line 25 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	(*info).website_name = _tmp4_;
#line 26 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp5_ = g_strdup ("https://fotki.yandex.ru/");
#line 26 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 ((*info).website_url);
#line 26 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	(*info).website_url = _tmp5_;
#line 27 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	(*info).is_license_wordwrapped = FALSE;
#line 28 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp6_ = g_strdup (RESOURCES_LICENSE);
#line 28 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 ((*info).license);
#line 28 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	(*info).license = _tmp6_;
#line 663 "YandexPublishing.c"
}


static SpitPublishingPublisher*
yandex_service_real_create_publisher (SpitPublishingService* base,
                                      SpitPublishingPluginHost* host)
{
	YandexService * self;
	SpitPublishingPublisher* result = NULL;
	PublishingYandexYandexPublisher* _tmp0_;
#line 31 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_YANDEX_SERVICE, YandexService);
#line 31 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (SPIT_PUBLISHING_IS_PLUGIN_HOST (host), NULL);
#line 32 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = publishing_yandex_yandex_publisher_new (G_TYPE_CHECK_INSTANCE_CAST (self, SPIT_PUBLISHING_TYPE_SERVICE, SpitPublishingService), host);
#line 32 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	result = G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, SPIT_PUBLISHING_TYPE_PUBLISHER, SpitPublishingPublisher);
#line 32 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return result;
#line 684 "YandexPublishing.c"
}


static SpitPublishingPublisherMediaType
yandex_service_real_get_supported_media (SpitPublishingService* base)
{
	YandexService * self;
	SpitPublishingPublisherMediaType result = 0;
#line 35 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_YANDEX_SERVICE, YandexService);
#line 36 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	result = SPIT_PUBLISHING_PUBLISHER_MEDIA_TYPE_PHOTO;
#line 36 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return result;
#line 699 "YandexPublishing.c"
}


static void
yandex_service_real_activation (SpitPluggable* base,
                                gboolean enabled)
{
	YandexService * self;
#line 39 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_YANDEX_SERVICE, YandexService);
#line 710 "YandexPublishing.c"
}


YandexService*
yandex_service_construct (GType object_type)
{
	YandexService * self = NULL;
#line 7 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = (YandexService*) g_object_new (object_type, NULL);
#line 7 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return self;
#line 722 "YandexPublishing.c"
}


YandexService*
yandex_service_new (void)
{
#line 7 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return yandex_service_construct (TYPE_YANDEX_SERVICE);
#line 731 "YandexPublishing.c"
}


static void
yandex_service_class_init (YandexServiceClass * klass)
{
#line 7 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	yandex_service_parent_class = g_type_class_peek_parent (klass);
#line 740 "YandexPublishing.c"
}


static void
yandex_service_spit_pluggable_interface_init (SpitPluggableIface * iface)
{
#line 7 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	yandex_service_spit_pluggable_parent_iface = g_type_interface_peek_parent (iface);
#line 7 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	iface->get_pluggable_interface = (gint (*) (SpitPluggable *, gint, gint)) yandex_service_real_get_pluggable_interface;
#line 7 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	iface->get_id = (const gchar* (*) (SpitPluggable *)) yandex_service_real_get_id;
#line 7 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	iface->get_pluggable_name = (const gchar* (*) (SpitPluggable *)) yandex_service_real_get_pluggable_name;
#line 7 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	iface->get_info = (void (*) (SpitPluggable *, SpitPluggableInfo*)) yandex_service_real_get_info;
#line 7 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	iface->activation = (void (*) (SpitPluggable *, gboolean)) yandex_service_real_activation;
#line 759 "YandexPublishing.c"
}


static void
yandex_service_spit_publishing_service_interface_init (SpitPublishingServiceIface * iface)
{
#line 7 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	yandex_service_spit_publishing_service_parent_iface = g_type_interface_peek_parent (iface);
#line 7 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	iface->create_publisher = (SpitPublishingPublisher* (*) (SpitPublishingService *, SpitPublishingPluginHost*)) yandex_service_real_create_publisher;
#line 7 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	iface->get_supported_media = (SpitPublishingPublisherMediaType (*) (SpitPublishingService *)) yandex_service_real_get_supported_media;
#line 772 "YandexPublishing.c"
}


static void
yandex_service_instance_init (YandexService * self)
{
}


GType
yandex_service_get_type (void)
{
	static volatile gsize yandex_service_type_id__volatile = 0;
	if (g_once_init_enter (&yandex_service_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (YandexServiceClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) yandex_service_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (YandexService), 0, (GInstanceInitFunc) yandex_service_instance_init, NULL };
		static const GInterfaceInfo spit_pluggable_info = { (GInterfaceInitFunc) yandex_service_spit_pluggable_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
		static const GInterfaceInfo spit_publishing_service_info = { (GInterfaceInitFunc) yandex_service_spit_publishing_service_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
		GType yandex_service_type_id;
		yandex_service_type_id = g_type_register_static (G_TYPE_OBJECT, "YandexService", &g_define_type_info, 0);
		g_type_add_interface_static (yandex_service_type_id, SPIT_TYPE_PLUGGABLE, &spit_pluggable_info);
		g_type_add_interface_static (yandex_service_type_id, SPIT_PUBLISHING_TYPE_SERVICE, &spit_publishing_service_info);
		g_once_init_leave (&yandex_service_type_id__volatile, yandex_service_type_id);
	}
	return yandex_service_type_id__volatile;
}


PublishingYandexTransaction*
publishing_yandex_transaction_construct_with_url (GType object_type,
                                                  PublishingYandexSession* session,
                                                  const gchar* url,
                                                  PublishingRESTSupportHttpMethod method)
{
	PublishingYandexTransaction* self = NULL;
#line 50 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (PUBLISHING_YANDEX_IS_SESSION (session), NULL);
#line 50 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (url != NULL, NULL);
#line 51 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = (PublishingYandexTransaction*) publishing_rest_support_transaction_construct_with_endpoint_url (object_type, G_TYPE_CHECK_INSTANCE_CAST (session, PUBLISHING_REST_SUPPORT_TYPE_SESSION, PublishingRESTSupportSession), url, method);
#line 52 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_transaction_add_headers (self);
#line 50 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return self;
#line 817 "YandexPublishing.c"
}


PublishingYandexTransaction*
publishing_yandex_transaction_new_with_url (PublishingYandexSession* session,
                                            const gchar* url,
                                            PublishingRESTSupportHttpMethod method)
{
#line 50 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return publishing_yandex_transaction_construct_with_url (PUBLISHING_YANDEX_TYPE_TRANSACTION, session, url, method);
#line 828 "YandexPublishing.c"
}


static void
publishing_yandex_transaction_add_headers (PublishingYandexTransaction* self)
{
	PublishingRESTSupportSession* _tmp0_;
	PublishingYandexSession* _tmp1_;
	gboolean _tmp2_;
#line 55 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_TRANSACTION (self));
#line 56 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = publishing_rest_support_transaction_get_parent_session (G_TYPE_CHECK_INSTANCE_CAST (self, PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, PublishingRESTSupportTransaction));
#line 56 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp1_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, PUBLISHING_YANDEX_TYPE_SESSION, PublishingYandexSession);
#line 56 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp2_ = publishing_rest_support_session_is_authenticated (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, PUBLISHING_REST_SUPPORT_TYPE_SESSION, PublishingRESTSupportSession));
#line 56 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_publishing_rest_support_session_unref0 (_tmp1_);
#line 56 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (_tmp2_) {
#line 850 "YandexPublishing.c"
		PublishingRESTSupportSession* _tmp3_;
		PublishingYandexSession* _tmp4_;
		gchar* _tmp5_;
		gchar* _tmp6_;
		gchar* _tmp7_;
		gchar* _tmp8_;
#line 57 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp3_ = publishing_rest_support_transaction_get_parent_session (G_TYPE_CHECK_INSTANCE_CAST (self, PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, PublishingRESTSupportTransaction));
#line 57 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp4_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, PUBLISHING_YANDEX_TYPE_SESSION, PublishingYandexSession);
#line 57 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp5_ = publishing_yandex_session_get_auth_token (_tmp4_);
#line 57 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp6_ = _tmp5_;
#line 57 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp7_ = g_strdup_printf ("OAuth %s", _tmp6_);
#line 57 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp8_ = _tmp7_;
#line 57 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		publishing_rest_support_transaction_add_header (G_TYPE_CHECK_INSTANCE_CAST (self, PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, PublishingRESTSupportTransaction), "Authorization", _tmp8_);
#line 57 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_free0 (_tmp8_);
#line 57 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_free0 (_tmp6_);
#line 57 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_publishing_rest_support_session_unref0 (_tmp4_);
#line 58 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		publishing_rest_support_transaction_add_header (G_TYPE_CHECK_INSTANCE_CAST (self, PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, PublishingRESTSupportTransaction), "Connection", "close");
#line 879 "YandexPublishing.c"
	}
}


PublishingYandexTransaction*
publishing_yandex_transaction_construct (GType object_type,
                                         PublishingYandexSession* session,
                                         PublishingRESTSupportHttpMethod method)
{
	PublishingYandexTransaction* self = NULL;
#line 62 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (PUBLISHING_YANDEX_IS_SESSION (session), NULL);
#line 63 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = (PublishingYandexTransaction*) publishing_rest_support_transaction_construct (object_type, G_TYPE_CHECK_INSTANCE_CAST (session, PUBLISHING_REST_SUPPORT_TYPE_SESSION, PublishingRESTSupportSession), method);
#line 64 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_transaction_add_headers (self);
#line 62 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return self;
#line 898 "YandexPublishing.c"
}


PublishingYandexTransaction*
publishing_yandex_transaction_new (PublishingYandexSession* session,
                                   PublishingRESTSupportHttpMethod method)
{
#line 62 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return publishing_yandex_transaction_construct (PUBLISHING_YANDEX_TYPE_TRANSACTION, session, method);
#line 908 "YandexPublishing.c"
}


void
publishing_yandex_transaction_add_data (PublishingYandexTransaction* self,
                                        const gchar* type,
                                        const gchar* data)
{
#line 67 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_TRANSACTION (self));
#line 67 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (type != NULL);
#line 67 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (data != NULL);
#line 68 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_rest_support_transaction_set_custom_payload (G_TYPE_CHECK_INSTANCE_CAST (self, PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, PublishingRESTSupportTransaction), data, type, (gulong) 0);
#line 925 "YandexPublishing.c"
}


static void
publishing_yandex_transaction_class_init (PublishingYandexTransactionClass * klass)
{
#line 49 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_transaction_parent_class = g_type_class_peek_parent (klass);
#line 934 "YandexPublishing.c"
}


static void
publishing_yandex_transaction_instance_init (PublishingYandexTransaction * self)
{
}


GType
publishing_yandex_transaction_get_type (void)
{
	static volatile gsize publishing_yandex_transaction_type_id__volatile = 0;
	if (g_once_init_enter (&publishing_yandex_transaction_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (PublishingYandexTransactionClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) publishing_yandex_transaction_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PublishingYandexTransaction), 0, (GInstanceInitFunc) publishing_yandex_transaction_instance_init, NULL };
		GType publishing_yandex_transaction_type_id;
		publishing_yandex_transaction_type_id = g_type_register_static (PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, "PublishingYandexTransaction", &g_define_type_info, 0);
		g_once_init_leave (&publishing_yandex_transaction_type_id__volatile, publishing_yandex_transaction_type_id);
	}
	return publishing_yandex_transaction_type_id__volatile;
}


PublishingYandexSession*
publishing_yandex_session_construct (GType object_type)
{
	PublishingYandexSession* self = NULL;
#line 75 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = (PublishingYandexSession*) publishing_rest_support_session_construct (object_type, NULL);
#line 75 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return self;
#line 966 "YandexPublishing.c"
}


PublishingYandexSession*
publishing_yandex_session_new (void)
{
#line 75 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return publishing_yandex_session_construct (PUBLISHING_YANDEX_TYPE_SESSION);
#line 975 "YandexPublishing.c"
}


static gboolean
publishing_yandex_session_real_is_authenticated (PublishingRESTSupportSession* base)
{
	PublishingYandexSession * self;
	gboolean result = FALSE;
	const gchar* _tmp0_;
#line 78 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, PUBLISHING_YANDEX_TYPE_SESSION, PublishingYandexSession);
#line 79 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = self->priv->auth_token;
#line 79 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	result = _tmp0_ != NULL;
#line 79 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return result;
#line 993 "YandexPublishing.c"
}


void
publishing_yandex_session_deauthenticate (PublishingYandexSession* self)
{
#line 82 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_SESSION (self));
#line 83 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (self->priv->auth_token);
#line 83 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->auth_token = NULL;
#line 1006 "YandexPublishing.c"
}


void
publishing_yandex_session_set_auth_token (PublishingYandexSession* self,
                                          const gchar* token)
{
	gchar* _tmp0_;
#line 86 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_SESSION (self));
#line 86 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (token != NULL);
#line 87 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = g_strdup (token);
#line 87 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (self->priv->auth_token);
#line 87 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->auth_token = _tmp0_;
#line 1025 "YandexPublishing.c"
}


gchar*
publishing_yandex_session_get_auth_token (PublishingYandexSession* self)
{
	gchar* result = NULL;
	const gchar* _tmp0_;
	gchar* _tmp1_;
#line 90 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (PUBLISHING_YANDEX_IS_SESSION (self), NULL);
#line 91 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = self->priv->auth_token;
#line 91 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp1_ = g_strdup (_tmp0_);
#line 91 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	result = _tmp1_;
#line 91 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return result;
#line 1045 "YandexPublishing.c"
}


static void
publishing_yandex_session_class_init (PublishingYandexSessionClass * klass)
{
#line 72 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_session_parent_class = g_type_class_peek_parent (klass);
#line 72 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	((PublishingRESTSupportSessionClass *) klass)->finalize = publishing_yandex_session_finalize;
#line 72 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_type_class_add_private (klass, sizeof (PublishingYandexSessionPrivate));
#line 72 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	((PublishingRESTSupportSessionClass *) klass)->is_authenticated = (gboolean (*) (PublishingRESTSupportSession *)) publishing_yandex_session_real_is_authenticated;
#line 1060 "YandexPublishing.c"
}


static void
publishing_yandex_session_instance_init (PublishingYandexSession * self)
{
#line 72 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv = PUBLISHING_YANDEX_SESSION_GET_PRIVATE (self);
#line 73 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->auth_token = NULL;
#line 1071 "YandexPublishing.c"
}


static void
publishing_yandex_session_finalize (PublishingRESTSupportSession * obj)
{
	PublishingYandexSession * self;
#line 72 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PUBLISHING_YANDEX_TYPE_SESSION, PublishingYandexSession);
#line 73 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (self->priv->auth_token);
#line 72 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	PUBLISHING_REST_SUPPORT_SESSION_CLASS (publishing_yandex_session_parent_class)->finalize (obj);
#line 1085 "YandexPublishing.c"
}


GType
publishing_yandex_session_get_type (void)
{
	static volatile gsize publishing_yandex_session_type_id__volatile = 0;
	if (g_once_init_enter (&publishing_yandex_session_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (PublishingYandexSessionClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) publishing_yandex_session_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PublishingYandexSession), 0, (GInstanceInitFunc) publishing_yandex_session_instance_init, NULL };
		GType publishing_yandex_session_type_id;
		publishing_yandex_session_type_id = g_type_register_static (PUBLISHING_REST_SUPPORT_TYPE_SESSION, "PublishingYandexSession", &g_define_type_info, 0);
		g_once_init_leave (&publishing_yandex_session_type_id__volatile, publishing_yandex_session_type_id);
	}
	return publishing_yandex_session_type_id__volatile;
}


PublishingYandexWebAuthPane*
publishing_yandex_web_auth_pane_construct (GType object_type,
                                           const gchar* login_url)
{
	PublishingYandexWebAuthPane * self = NULL;
#line 101 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (login_url != NULL, NULL);
#line 102 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = (PublishingYandexWebAuthPane*) g_object_new (object_type, "login-uri", login_url, "preferred-geometry", SPIT_PUBLISHING_DIALOG_PANE_GEOMETRY_OPTIONS_RESIZABLE, NULL);
#line 101 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return self;
#line 1114 "YandexPublishing.c"
}


PublishingYandexWebAuthPane*
publishing_yandex_web_auth_pane_new (const gchar* login_url)
{
#line 101 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return publishing_yandex_web_auth_pane_construct (PUBLISHING_YANDEX_TYPE_WEB_AUTH_PANE, login_url);
#line 1123 "YandexPublishing.c"
}


static gboolean
_publishing_yandex_web_auth_pane_on_decide_policy_webkit_web_view_decide_policy (WebKitWebView* _sender,
                                                                                 WebKitPolicyDecision* decision,
                                                                                 WebKitPolicyDecisionType type,
                                                                                 gpointer self)
{
	gboolean result;
	result = publishing_yandex_web_auth_pane_on_decide_policy ((PublishingYandexWebAuthPane*) self, decision, type);
#line 114 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return result;
#line 1137 "YandexPublishing.c"
}


static void
publishing_yandex_web_auth_pane_real_constructed (GObject* base)
{
	PublishingYandexWebAuthPane * self;
	WebKitWebView* _tmp3_;
	WebKitWebView* _tmp4_;
	GError * _inner_error_ = NULL;
#line 107 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, PUBLISHING_YANDEX_TYPE_WEB_AUTH_PANE, PublishingYandexWebAuthPane);
#line 1150 "YandexPublishing.c"
	{
		GRegex* _tmp0_ = NULL;
		GRegex* _tmp1_;
		GRegex* _tmp2_;
#line 109 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp1_ = g_regex_new ("(.*)#access_token=([a-zA-Z0-9]*)&", 0, 0, &_inner_error_);
#line 109 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp0_ = _tmp1_;
#line 109 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 109 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			if (_inner_error_->domain == G_REGEX_ERROR) {
#line 1163 "YandexPublishing.c"
				goto __catch32_g_regex_error;
			}
#line 109 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 109 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_clear_error (&_inner_error_);
#line 109 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			return;
#line 1172 "YandexPublishing.c"
		}
#line 109 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp2_ = _tmp0_;
#line 109 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp0_ = NULL;
#line 109 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_regex_unref0 (self->priv->re);
#line 109 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		self->priv->re = _tmp2_;
#line 108 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_regex_unref0 (_tmp0_);
#line 1184 "YandexPublishing.c"
	}
	goto __finally32;
	__catch32_g_regex_error:
	{
		GError* e = NULL;
#line 108 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		e = _inner_error_;
#line 108 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_inner_error_ = NULL;
#line 111 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_assert_not_reached ();
#line 108 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_error_free0 (e);
#line 1198 "YandexPublishing.c"
	}
	__finally32:
#line 108 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 108 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 108 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_clear_error (&_inner_error_);
#line 108 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		return;
#line 1209 "YandexPublishing.c"
	}
#line 114 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp3_ = shotwell_plugins_common_web_authentication_pane_get_view (G_TYPE_CHECK_INSTANCE_CAST (self, SHOTWELL_PLUGINS_COMMON_TYPE_WEB_AUTHENTICATION_PANE, ShotwellPluginsCommonWebAuthenticationPane));
#line 114 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp4_ = _tmp3_;
#line 114 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_connect_object (_tmp4_, "decide-policy", (GCallback) _publishing_yandex_web_auth_pane_on_decide_policy_webkit_web_view_decide_policy, self, 0);
#line 114 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_object_unref0 (_tmp4_);
#line 1219 "YandexPublishing.c"
}


static void
publishing_yandex_web_auth_pane_real_on_page_load (ShotwellPluginsCommonWebAuthenticationPane* base)
{
	PublishingYandexWebAuthPane * self;
#line 117 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, PUBLISHING_YANDEX_TYPE_WEB_AUTH_PANE, PublishingYandexWebAuthPane);
#line 1229 "YandexPublishing.c"
}


static gpointer
_g_object_ref0 (gpointer self)
{
#line 123 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return self ? g_object_ref (self) : NULL;
#line 1238 "YandexPublishing.c"
}


static WebKitNavigationAction*
_vala_WebKitNavigationAction_copy (WebKitNavigationAction* self)
{
#line 124 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return g_boxed_copy (webkit_navigation_action_get_type (), self);
#line 1247 "YandexPublishing.c"
}


static gpointer
__vala_WebKitNavigationAction_copy0 (gpointer self)
{
#line 124 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return self ? _vala_WebKitNavigationAction_copy (self) : NULL;
#line 1256 "YandexPublishing.c"
}


static void
_vala_WebKitNavigationAction_free (WebKitNavigationAction* self)
{
#line 138 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_boxed_free (webkit_navigation_action_get_type (), self);
#line 1265 "YandexPublishing.c"
}


static gboolean
publishing_yandex_web_auth_pane_on_decide_policy (PublishingYandexWebAuthPane* self,
                                                  WebKitPolicyDecision* decision,
                                                  WebKitPolicyDecisionType type)
{
	gboolean result = FALSE;
#line 119 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (PUBLISHING_YANDEX_IS_WEB_AUTH_PANE (self), FALSE);
#line 119 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (WEBKIT_IS_POLICY_DECISION (decision), FALSE);
#line 121 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	switch (type) {
#line 121 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		case WEBKIT_POLICY_DECISION_TYPE_NAVIGATION_ACTION:
#line 1283 "YandexPublishing.c"
		{
			WebKitNavigationPolicyDecision* n_decision = NULL;
			WebKitNavigationPolicyDecision* _tmp0_;
			WebKitNavigationAction* action = NULL;
			WebKitNavigationPolicyDecision* _tmp1_;
			WebKitNavigationAction* _tmp2_;
			WebKitNavigationAction* _tmp3_;
			WebKitNavigationAction* _tmp4_;
			gchar* uri = NULL;
			WebKitNavigationAction* _tmp5_;
			WebKitURIRequest* _tmp6_;
			const gchar* _tmp7_;
			const gchar* _tmp8_;
			gchar* _tmp9_;
			const gchar* _tmp10_;
			GMatchInfo* info = NULL;
			GRegex* _tmp11_;
			const gchar* _tmp12_;
			GMatchInfo* _tmp13_ = NULL;
			gboolean _tmp14_;
#line 123 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_tmp0_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (decision, webkit_navigation_policy_decision_get_type (), WebKitNavigationPolicyDecision));
#line 123 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			n_decision = _tmp0_;
#line 124 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_tmp1_ = n_decision;
#line 124 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_tmp2_ = webkit_navigation_policy_decision_get_navigation_action (_tmp1_);
#line 124 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_tmp3_ = _tmp2_;
#line 124 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_tmp4_ = __vala_WebKitNavigationAction_copy0 (_tmp3_);
#line 124 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			action = _tmp4_;
#line 125 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_tmp5_ = action;
#line 125 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_tmp6_ = webkit_navigation_action_get_request (_tmp5_);
#line 125 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_tmp7_ = webkit_uri_request_get_uri (_tmp6_);
#line 125 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_tmp8_ = _tmp7_;
#line 125 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_tmp9_ = g_strdup (_tmp8_);
#line 125 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			uri = _tmp9_;
#line 126 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_tmp10_ = uri;
#line 126 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_debug ("YandexPublishing.vala:126: Navigating to '%s'", _tmp10_);
#line 128 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			info = NULL;
#line 130 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_tmp11_ = self->priv->re;
#line 130 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_tmp12_ = uri;
#line 130 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_tmp14_ = g_regex_match (_tmp11_, _tmp12_, 0, &_tmp13_);
#line 130 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_g_match_info_unref0 (info);
#line 130 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			info = _tmp13_;
#line 130 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			if (_tmp14_) {
#line 1348 "YandexPublishing.c"
				gchar* access_token = NULL;
				GMatchInfo* _tmp15_;
				gchar** _tmp16_;
				gchar** _tmp17_;
				gchar** _tmp18_;
				gint _tmp18__length1;
				const gchar* _tmp19_;
				gchar* _tmp20_;
				gchar* _tmp21_;
				const gchar* _tmp22_;
				const gchar* _tmp23_;
#line 131 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp15_ = info;
#line 131 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp17_ = _tmp16_ = g_match_info_fetch_all (_tmp15_);
#line 131 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp18_ = _tmp17_;
#line 131 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp18__length1 = _vala_array_length (_tmp16_);
#line 131 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp19_ = _tmp18_[2];
#line 131 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp20_ = g_strdup (_tmp19_);
#line 131 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp21_ = _tmp20_;
#line 131 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp18_ = (_vala_array_free (_tmp18_, _tmp18__length1, (GDestroyNotify) g_free), NULL);
#line 131 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				access_token = _tmp21_;
#line 133 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp22_ = access_token;
#line 133 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				g_debug ("YandexPublishing.vala:133: Load completed: %s", _tmp22_);
#line 134 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				shotwell_plugins_common_web_authentication_pane_set_cursor (G_TYPE_CHECK_INSTANCE_CAST (self, SHOTWELL_PLUGINS_COMMON_TYPE_WEB_AUTHENTICATION_PANE, ShotwellPluginsCommonWebAuthenticationPane), GDK_LEFT_PTR);
#line 135 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp23_ = access_token;
#line 135 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				if (_tmp23_ != NULL) {
#line 1388 "YandexPublishing.c"
					const gchar* _tmp24_;
#line 136 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp24_ = access_token;
#line 136 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					g_signal_emit (self, publishing_yandex_web_auth_pane_signals[PUBLISHING_YANDEX_WEB_AUTH_PANE_LOGIN_SUCCEEDED_SIGNAL], 0, _tmp24_);
#line 137 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					webkit_policy_decision_ignore (decision);
#line 138 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_g_free0 (access_token);
#line 138 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_g_match_info_unref0 (info);
#line 138 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_g_free0 (uri);
#line 138 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					__vala_WebKitNavigationAction_free0 (action);
#line 138 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_g_object_unref0 (n_decision);
#line 138 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					break;
#line 1408 "YandexPublishing.c"
				} else {
#line 140 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					g_signal_emit (self, publishing_yandex_web_auth_pane_signals[PUBLISHING_YANDEX_WEB_AUTH_PANE_LOGIN_FAILED_SIGNAL], 0);
#line 1412 "YandexPublishing.c"
				}
#line 130 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_g_free0 (access_token);
#line 1416 "YandexPublishing.c"
			}
#line 142 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			webkit_policy_decision_use (decision);
#line 143 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_g_match_info_unref0 (info);
#line 143 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_g_free0 (uri);
#line 143 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			__vala_WebKitNavigationAction_free0 (action);
#line 143 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_g_object_unref0 (n_decision);
#line 143 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			break;
#line 1430 "YandexPublishing.c"
		}
#line 121 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		case WEBKIT_POLICY_DECISION_TYPE_RESPONSE:
#line 1434 "YandexPublishing.c"
		{
#line 145 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			webkit_policy_decision_use (decision);
#line 146 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			break;
#line 1440 "YandexPublishing.c"
		}
		default:
		{
#line 148 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			result = FALSE;
#line 148 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			return result;
#line 1448 "YandexPublishing.c"
		}
	}
#line 150 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	result = TRUE;
#line 150 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return result;
#line 1455 "YandexPublishing.c"
}


static void
publishing_yandex_web_auth_pane_class_init (PublishingYandexWebAuthPaneClass * klass)
{
#line 95 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_web_auth_pane_parent_class = g_type_class_peek_parent (klass);
#line 95 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_type_class_add_private (klass, sizeof (PublishingYandexWebAuthPanePrivate));
#line 95 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	((GObjectClass *) klass)->constructed = (void (*) (GObject *)) publishing_yandex_web_auth_pane_real_constructed;
#line 95 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	((ShotwellPluginsCommonWebAuthenticationPaneClass *) klass)->on_page_load = (void (*) (ShotwellPluginsCommonWebAuthenticationPane *)) publishing_yandex_web_auth_pane_real_on_page_load;
#line 95 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	G_OBJECT_CLASS (klass)->finalize = publishing_yandex_web_auth_pane_finalize;
#line 95 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_web_auth_pane_signals[PUBLISHING_YANDEX_WEB_AUTH_PANE_LOGIN_SUCCEEDED_SIGNAL] = g_signal_new ("login-succeeded", PUBLISHING_YANDEX_TYPE_WEB_AUTH_PANE, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__STRING, G_TYPE_NONE, 1, G_TYPE_STRING);
#line 95 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_web_auth_pane_signals[PUBLISHING_YANDEX_WEB_AUTH_PANE_LOGIN_FAILED_SIGNAL] = g_signal_new ("login-failed", PUBLISHING_YANDEX_TYPE_WEB_AUTH_PANE, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
#line 1476 "YandexPublishing.c"
}


static void
publishing_yandex_web_auth_pane_instance_init (PublishingYandexWebAuthPane * self)
{
#line 95 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv = PUBLISHING_YANDEX_WEB_AUTH_PANE_GET_PRIVATE (self);
#line 1485 "YandexPublishing.c"
}


static void
publishing_yandex_web_auth_pane_finalize (GObject * obj)
{
	PublishingYandexWebAuthPane * self;
#line 95 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PUBLISHING_YANDEX_TYPE_WEB_AUTH_PANE, PublishingYandexWebAuthPane);
#line 96 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_regex_unref0 (self->priv->re);
#line 95 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	G_OBJECT_CLASS (publishing_yandex_web_auth_pane_parent_class)->finalize (obj);
#line 1499 "YandexPublishing.c"
}


GType
publishing_yandex_web_auth_pane_get_type (void)
{
	static volatile gsize publishing_yandex_web_auth_pane_type_id__volatile = 0;
	if (g_once_init_enter (&publishing_yandex_web_auth_pane_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (PublishingYandexWebAuthPaneClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) publishing_yandex_web_auth_pane_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PublishingYandexWebAuthPane), 0, (GInstanceInitFunc) publishing_yandex_web_auth_pane_instance_init, NULL };
		GType publishing_yandex_web_auth_pane_type_id;
		publishing_yandex_web_auth_pane_type_id = g_type_register_static (SHOTWELL_PLUGINS_COMMON_TYPE_WEB_AUTHENTICATION_PANE, "PublishingYandexWebAuthPane", &g_define_type_info, 0);
		g_once_init_leave (&publishing_yandex_web_auth_pane_type_id__volatile, publishing_yandex_web_auth_pane_type_id);
	}
	return publishing_yandex_web_auth_pane_type_id__volatile;
}


PublishingYandexPublishOptions*
publishing_yandex_publish_options_construct (GType object_type)
{
	PublishingYandexPublishOptions* self = NULL;
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = (PublishingYandexPublishOptions*) g_type_create_instance (object_type);
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return self;
#line 1525 "YandexPublishing.c"
}


PublishingYandexPublishOptions*
publishing_yandex_publish_options_new (void)
{
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return publishing_yandex_publish_options_construct (PUBLISHING_YANDEX_TYPE_PUBLISH_OPTIONS);
#line 1534 "YandexPublishing.c"
}


static void
publishing_yandex_value_publish_options_init (GValue* value)
{
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	value->data[0].v_pointer = NULL;
#line 1543 "YandexPublishing.c"
}


static void
publishing_yandex_value_publish_options_free_value (GValue* value)
{
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (value->data[0].v_pointer) {
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		publishing_yandex_publish_options_unref (value->data[0].v_pointer);
#line 1554 "YandexPublishing.c"
	}
}


static void
publishing_yandex_value_publish_options_copy_value (const GValue* src_value,
                                                    GValue* dest_value)
{
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (src_value->data[0].v_pointer) {
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		dest_value->data[0].v_pointer = publishing_yandex_publish_options_ref (src_value->data[0].v_pointer);
#line 1567 "YandexPublishing.c"
	} else {
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		dest_value->data[0].v_pointer = NULL;
#line 1571 "YandexPublishing.c"
	}
}


static gpointer
publishing_yandex_value_publish_options_peek_pointer (const GValue* value)
{
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return value->data[0].v_pointer;
#line 1581 "YandexPublishing.c"
}


static gchar*
publishing_yandex_value_publish_options_collect_value (GValue* value,
                                                       guint n_collect_values,
                                                       GTypeCValue* collect_values,
                                                       guint collect_flags)
{
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (collect_values[0].v_pointer) {
#line 1593 "YandexPublishing.c"
		PublishingYandexPublishOptions * object;
		object = collect_values[0].v_pointer;
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		if (object->parent_instance.g_class == NULL) {
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
#line 1600 "YandexPublishing.c"
		} else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) {
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			return g_strconcat ("invalid object type `", g_type_name (G_TYPE_FROM_INSTANCE (object)), "' for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
#line 1604 "YandexPublishing.c"
		}
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		value->data[0].v_pointer = publishing_yandex_publish_options_ref (object);
#line 1608 "YandexPublishing.c"
	} else {
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		value->data[0].v_pointer = NULL;
#line 1612 "YandexPublishing.c"
	}
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return NULL;
#line 1616 "YandexPublishing.c"
}


static gchar*
publishing_yandex_value_publish_options_lcopy_value (const GValue* value,
                                                     guint n_collect_values,
                                                     GTypeCValue* collect_values,
                                                     guint collect_flags)
{
	PublishingYandexPublishOptions ** object_p;
	object_p = collect_values[0].v_pointer;
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (!object_p) {
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value));
#line 1632 "YandexPublishing.c"
	}
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (!value->data[0].v_pointer) {
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		*object_p = NULL;
#line 1638 "YandexPublishing.c"
	} else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) {
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		*object_p = value->data[0].v_pointer;
#line 1642 "YandexPublishing.c"
	} else {
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		*object_p = publishing_yandex_publish_options_ref (value->data[0].v_pointer);
#line 1646 "YandexPublishing.c"
	}
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return NULL;
#line 1650 "YandexPublishing.c"
}


GParamSpec*
publishing_yandex_param_spec_publish_options (const gchar* name,
                                              const gchar* nick,
                                              const gchar* blurb,
                                              GType object_type,
                                              GParamFlags flags)
{
	PublishingYandexParamSpecPublishOptions* spec;
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (g_type_is_a (object_type, PUBLISHING_YANDEX_TYPE_PUBLISH_OPTIONS), NULL);
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags);
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	G_PARAM_SPEC (spec)->value_type = object_type;
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return G_PARAM_SPEC (spec);
#line 1670 "YandexPublishing.c"
}


gpointer
publishing_yandex_value_get_publish_options (const GValue* value)
{
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, PUBLISHING_YANDEX_TYPE_PUBLISH_OPTIONS), NULL);
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return value->data[0].v_pointer;
#line 1681 "YandexPublishing.c"
}


void
publishing_yandex_value_set_publish_options (GValue* value,
                                             gpointer v_object)
{
	PublishingYandexPublishOptions * old;
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, PUBLISHING_YANDEX_TYPE_PUBLISH_OPTIONS));
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	old = value->data[0].v_pointer;
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (v_object) {
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, PUBLISHING_YANDEX_TYPE_PUBLISH_OPTIONS));
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		value->data[0].v_pointer = v_object;
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		publishing_yandex_publish_options_ref (value->data[0].v_pointer);
#line 1704 "YandexPublishing.c"
	} else {
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		value->data[0].v_pointer = NULL;
#line 1708 "YandexPublishing.c"
	}
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (old) {
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		publishing_yandex_publish_options_unref (old);
#line 1714 "YandexPublishing.c"
	}
}


void
publishing_yandex_value_take_publish_options (GValue* value,
                                              gpointer v_object)
{
	PublishingYandexPublishOptions * old;
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, PUBLISHING_YANDEX_TYPE_PUBLISH_OPTIONS));
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	old = value->data[0].v_pointer;
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (v_object) {
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, PUBLISHING_YANDEX_TYPE_PUBLISH_OPTIONS));
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		value->data[0].v_pointer = v_object;
#line 1736 "YandexPublishing.c"
	} else {
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		value->data[0].v_pointer = NULL;
#line 1740 "YandexPublishing.c"
	}
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (old) {
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		publishing_yandex_publish_options_unref (old);
#line 1746 "YandexPublishing.c"
	}
}


static void
publishing_yandex_publish_options_class_init (PublishingYandexPublishOptionsClass * klass)
{
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_publish_options_parent_class = g_type_class_peek_parent (klass);
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	((PublishingYandexPublishOptionsClass *) klass)->finalize = publishing_yandex_publish_options_finalize;
#line 1758 "YandexPublishing.c"
}


static void
publishing_yandex_publish_options_instance_init (PublishingYandexPublishOptions * self)
{
#line 155 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->disable_comments = FALSE;
#line 156 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->hide_original = FALSE;
#line 159 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->destination_album = NULL;
#line 160 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->destination_album_url = NULL;
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->ref_count = 1;
#line 1775 "YandexPublishing.c"
}


static void
publishing_yandex_publish_options_finalize (PublishingYandexPublishOptions * obj)
{
	PublishingYandexPublishOptions * self;
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PUBLISHING_YANDEX_TYPE_PUBLISH_OPTIONS, PublishingYandexPublishOptions);
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_handlers_destroy (self);
#line 157 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (self->access_type);
#line 159 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (self->destination_album);
#line 160 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (self->destination_album_url);
#line 1793 "YandexPublishing.c"
}


GType
publishing_yandex_publish_options_get_type (void)
{
	static volatile gsize publishing_yandex_publish_options_type_id__volatile = 0;
	if (g_once_init_enter (&publishing_yandex_publish_options_type_id__volatile)) {
		static const GTypeValueTable g_define_type_value_table = { publishing_yandex_value_publish_options_init, publishing_yandex_value_publish_options_free_value, publishing_yandex_value_publish_options_copy_value, publishing_yandex_value_publish_options_peek_pointer, "p", publishing_yandex_value_publish_options_collect_value, "p", publishing_yandex_value_publish_options_lcopy_value };
		static const GTypeInfo g_define_type_info = { sizeof (PublishingYandexPublishOptionsClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) publishing_yandex_publish_options_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PublishingYandexPublishOptions), 0, (GInstanceInitFunc) publishing_yandex_publish_options_instance_init, &g_define_type_value_table };
		static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) };
		GType publishing_yandex_publish_options_type_id;
		publishing_yandex_publish_options_type_id = g_type_register_fundamental (g_type_fundamental_next (), "PublishingYandexPublishOptions", &g_define_type_info, &g_define_type_fundamental_info, 0);
		g_once_init_leave (&publishing_yandex_publish_options_type_id__volatile, publishing_yandex_publish_options_type_id);
	}
	return publishing_yandex_publish_options_type_id__volatile;
}


gpointer
publishing_yandex_publish_options_ref (gpointer instance)
{
	PublishingYandexPublishOptions * self;
	self = instance;
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_atomic_int_inc (&self->ref_count);
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return instance;
#line 1822 "YandexPublishing.c"
}


void
publishing_yandex_publish_options_unref (gpointer instance)
{
	PublishingYandexPublishOptions * self;
	self = instance;
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (g_atomic_int_dec_and_test (&self->ref_count)) {
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		PUBLISHING_YANDEX_PUBLISH_OPTIONS_GET_CLASS (self)->finalize (self);
#line 154 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_type_free_instance ((GTypeInstance *) self);
#line 1837 "YandexPublishing.c"
	}
}


static SpitPublishingDialogPaneGeometryOptions
publishing_yandex_publishing_options_pane_real_get_preferred_geometry (SpitPublishingDialogPane* base)
{
	PublishingYandexPublishingOptionsPane * self;
	SpitPublishingDialogPaneGeometryOptions result = 0;
#line 175 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, PUBLISHING_YANDEX_TYPE_PUBLISHING_OPTIONS_PANE, PublishingYandexPublishingOptionsPane);
#line 176 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	result = SPIT_PUBLISHING_DIALOG_PANE_GEOMETRY_OPTIONS_NONE;
#line 176 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return result;
#line 1853 "YandexPublishing.c"
}


static void
publishing_yandex_publishing_options_pane_real_on_pane_installed (SpitPublishingDialogPane* base)
{
	PublishingYandexPublishingOptionsPane * self;
#line 178 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, PUBLISHING_YANDEX_TYPE_PUBLISHING_OPTIONS_PANE, PublishingYandexPublishingOptionsPane);
#line 1863 "YandexPublishing.c"
}


static void
publishing_yandex_publishing_options_pane_real_on_pane_uninstalled (SpitPublishingDialogPane* base)
{
	PublishingYandexPublishingOptionsPane * self;
#line 180 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, PUBLISHING_YANDEX_TYPE_PUBLISHING_OPTIONS_PANE, PublishingYandexPublishingOptionsPane);
#line 1873 "YandexPublishing.c"
}


static GtkWidget*
publishing_yandex_publishing_options_pane_real_get_widget (SpitPublishingDialogPane* base)
{
	PublishingYandexPublishingOptionsPane * self;
	GtkWidget* result = NULL;
	GtkBox* _tmp0_;
	GtkWidget* _tmp1_;
#line 182 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, PUBLISHING_YANDEX_TYPE_PUBLISHING_OPTIONS_PANE, PublishingYandexPublishingOptionsPane);
#line 183 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = self->priv->box;
#line 183 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_widget_get_type (), GtkWidget));
#line 183 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	result = _tmp1_;
#line 183 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return result;
#line 1894 "YandexPublishing.c"
}


static void
_publishing_yandex_publishing_options_pane_on_publish_clicked_gtk_button_clicked (GtkButton* _sender,
                                                                                  gpointer self)
{
#line 208 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_publishing_options_pane_on_publish_clicked ((PublishingYandexPublishingOptionsPane*) self);
#line 1904 "YandexPublishing.c"
}


static void
_publishing_yandex_publishing_options_pane_on_logout_clicked_gtk_button_clicked (GtkButton* _sender,
                                                                                 gpointer self)
{
#line 209 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_publishing_options_pane_on_logout_clicked ((PublishingYandexPublishingOptionsPane*) self);
#line 1914 "YandexPublishing.c"
}


PublishingYandexPublishingOptionsPane*
publishing_yandex_publishing_options_pane_construct (GType object_type,
                                                     PublishingYandexPublishOptions* options,
                                                     GeeHashMap* list,
                                                     SpitPublishingPluginHost* host)
{
	PublishingYandexPublishingOptionsPane * self = NULL;
	GtkBox* _tmp0_;
	GError * _inner_error_ = NULL;
#line 186 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (PUBLISHING_YANDEX_IS_PUBLISH_OPTIONS (options), NULL);
#line 186 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (GEE_IS_HASH_MAP (list), NULL);
#line 186 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (SPIT_PUBLISHING_IS_PLUGIN_HOST (host), NULL);
#line 186 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = (PublishingYandexPublishingOptionsPane*) g_object_new (object_type, NULL);
#line 188 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->options = options;
#line 190 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
#line 190 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_object_ref_sink (_tmp0_);
#line 190 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_object_unref0 (self->priv->box);
#line 190 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->box = _tmp0_;
#line 1945 "YandexPublishing.c"
	{
		GtkBuilder* _tmp1_;
		GtkBuilder* _tmp2_;
		GtkBuilder* _tmp3_;
		GtkWidget* content = NULL;
		GtkBuilder* _tmp4_;
		GObject* _tmp5_;
		GtkWidget* _tmp6_;
		GtkBuilder* _tmp7_;
		GObject* _tmp8_;
		GtkComboBoxText* _tmp9_;
		GtkComboBoxText* _tmp20_;
		GtkBuilder* _tmp21_;
		GObject* _tmp22_;
		GtkButton* _tmp23_;
		GtkBuilder* _tmp24_;
		GObject* _tmp25_;
		GtkButton* _tmp26_;
		GtkButton* _tmp27_;
		GtkButton* _tmp28_;
		GtkWidget* _tmp29_;
		GtkContainer* _tmp30_;
		GtkContainer* _tmp31_;
		GtkWidget* _tmp32_;
		GtkBox* _tmp33_;
		GtkWidget* _tmp34_;
#line 193 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp1_ = gtk_builder_new ();
#line 193 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_object_unref0 (self->priv->builder);
#line 193 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		self->priv->builder = _tmp1_;
#line 194 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp2_ = self->priv->builder;
#line 194 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		gtk_builder_add_from_resource (_tmp2_, PLUGIN_RESOURCE_PATH "/yandex_publish_model.ui", &_inner_error_);
#line 194 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 1984 "YandexPublishing.c"
			goto __catch33_g_error;
		}
#line 196 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp3_ = self->priv->builder;
#line 196 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		gtk_builder_connect_signals (_tmp3_, NULL);
#line 197 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp4_ = self->priv->builder;
#line 197 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp5_ = gtk_builder_get_object (_tmp4_, "content");
#line 197 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp6_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp5_, gtk_widget_get_type ()) ? ((GtkWidget*) _tmp5_) : NULL);
#line 197 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		content = _tmp6_;
#line 199 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp7_ = self->priv->builder;
#line 199 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp8_ = gtk_builder_get_object (_tmp7_, "album_list");
#line 199 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp9_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp8_, gtk_combo_box_text_get_type ()) ? ((GtkComboBoxText*) _tmp8_) : NULL);
#line 199 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_object_unref0 (self->priv->album_list);
#line 199 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		self->priv->album_list = _tmp9_;
#line 2009 "YandexPublishing.c"
		{
			GeeIterator* _key_it = NULL;
			GeeSet* _tmp10_;
			GeeSet* _tmp11_;
			GeeSet* _tmp12_;
			GeeIterator* _tmp13_;
			GeeIterator* _tmp14_;
#line 200 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_tmp10_ = gee_abstract_map_get_keys (G_TYPE_CHECK_INSTANCE_CAST (list, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap));
#line 200 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_tmp11_ = _tmp10_;
#line 200 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_tmp12_ = _tmp11_;
#line 200 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_tmp13_ = gee_iterable_iterator (G_TYPE_CHECK_INSTANCE_CAST (_tmp12_, GEE_TYPE_ITERABLE, GeeIterable));
#line 200 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_tmp14_ = _tmp13_;
#line 200 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_g_object_unref0 (_tmp12_);
#line 200 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_key_it = _tmp14_;
#line 200 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			while (TRUE) {
#line 2033 "YandexPublishing.c"
				GeeIterator* _tmp15_;
				gchar* key = NULL;
				GeeIterator* _tmp16_;
				gpointer _tmp17_;
				GtkComboBoxText* _tmp18_;
				const gchar* _tmp19_;
#line 200 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp15_ = _key_it;
#line 200 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				if (!gee_iterator_next (_tmp15_)) {
#line 200 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					break;
#line 2046 "YandexPublishing.c"
				}
#line 200 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp16_ = _key_it;
#line 200 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp17_ = gee_iterator_get (_tmp16_);
#line 200 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				key = (gchar*) _tmp17_;
#line 201 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp18_ = self->priv->album_list;
#line 201 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp19_ = key;
#line 201 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				gtk_combo_box_text_append_text (_tmp18_, _tmp19_);
#line 200 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_g_free0 (key);
#line 2062 "YandexPublishing.c"
			}
#line 200 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_g_object_unref0 (_key_it);
#line 2066 "YandexPublishing.c"
		}
#line 203 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp20_ = self->priv->album_list;
#line 203 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		gtk_combo_box_set_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp20_, gtk_combo_box_get_type (), GtkComboBox), 0);
#line 205 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp21_ = self->priv->builder;
#line 205 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp22_ = gtk_builder_get_object (_tmp21_, "publish_button");
#line 205 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp23_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp22_, gtk_button_get_type ()) ? ((GtkButton*) _tmp22_) : NULL);
#line 205 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_object_unref0 (self->priv->publish_button);
#line 205 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		self->priv->publish_button = _tmp23_;
#line 206 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp24_ = self->priv->builder;
#line 206 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp25_ = gtk_builder_get_object (_tmp24_, "logout_button");
#line 206 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp26_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp25_, gtk_button_get_type ()) ? ((GtkButton*) _tmp25_) : NULL);
#line 206 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_object_unref0 (self->priv->logout_button);
#line 206 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		self->priv->logout_button = _tmp26_;
#line 208 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp27_ = self->priv->publish_button;
#line 208 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_signal_connect_object (_tmp27_, "clicked", (GCallback) _publishing_yandex_publishing_options_pane_on_publish_clicked_gtk_button_clicked, self, 0);
#line 209 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp28_ = self->priv->logout_button;
#line 209 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_signal_connect_object (_tmp28_, "clicked", (GCallback) _publishing_yandex_publishing_options_pane_on_logout_clicked_gtk_button_clicked, self, 0);
#line 211 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp29_ = content;
#line 211 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp30_ = gtk_widget_get_parent (_tmp29_);
#line 211 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp31_ = _tmp30_;
#line 211 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp32_ = content;
#line 211 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		gtk_container_remove (_tmp31_, _tmp32_);
#line 212 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp33_ = self->priv->box;
#line 212 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp34_ = content;
#line 212 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		gtk_box_pack_start (_tmp33_, _tmp34_, TRUE, TRUE, (guint) 0);
#line 192 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_object_unref0 (content);
#line 2118 "YandexPublishing.c"
	}
	goto __finally33;
	__catch33_g_error:
	{
		GError* e = NULL;
		GError* _tmp35_;
		const gchar* _tmp36_;
#line 192 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		e = _inner_error_;
#line 192 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_inner_error_ = NULL;
#line 214 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp35_ = e;
#line 214 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp36_ = _tmp35_->message;
#line 214 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_warning ("YandexPublishing.vala:214: Could not load UI: %s", _tmp36_);
#line 192 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_error_free0 (e);
#line 2138 "YandexPublishing.c"
	}
	__finally33:
#line 192 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 192 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 192 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_clear_error (&_inner_error_);
#line 192 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		return NULL;
#line 2149 "YandexPublishing.c"
	}
#line 186 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return self;
#line 2153 "YandexPublishing.c"
}


PublishingYandexPublishingOptionsPane*
publishing_yandex_publishing_options_pane_new (PublishingYandexPublishOptions* options,
                                               GeeHashMap* list,
                                               SpitPublishingPluginHost* host)
{
#line 186 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return publishing_yandex_publishing_options_pane_construct (PUBLISHING_YANDEX_TYPE_PUBLISHING_OPTIONS_PANE, options, list, host);
#line 2164 "YandexPublishing.c"
}


static void
publishing_yandex_publishing_options_pane_on_logout_clicked (PublishingYandexPublishingOptionsPane* self)
{
#line 218 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_PUBLISHING_OPTIONS_PANE (self));
#line 219 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_emit (self, publishing_yandex_publishing_options_pane_signals[PUBLISHING_YANDEX_PUBLISHING_OPTIONS_PANE_LOGOUT_SIGNAL], 0);
#line 2175 "YandexPublishing.c"
}


static void
publishing_yandex_publishing_options_pane_on_publish_clicked (PublishingYandexPublishingOptionsPane* self)
{
	PublishingYandexPublishOptions* _tmp0_;
	GtkComboBoxText* _tmp1_;
	gchar* _tmp2_;
	GtkCheckButton* tmp = NULL;
	GtkBuilder* _tmp3_;
	GObject* _tmp4_;
	GtkCheckButton* _tmp5_;
	PublishingYandexPublishOptions* _tmp6_;
	GtkCheckButton* _tmp7_;
	gboolean _tmp8_;
	gboolean _tmp9_;
	GtkBuilder* _tmp10_;
	GObject* _tmp11_;
	GtkCheckButton* _tmp12_;
	PublishingYandexPublishOptions* _tmp13_;
	GtkCheckButton* _tmp14_;
	gboolean _tmp15_;
	gboolean _tmp16_;
	GtkComboBoxText* access_type = NULL;
	GtkBuilder* _tmp17_;
	GObject* _tmp18_;
	GtkComboBoxText* _tmp19_;
	PublishingYandexPublishOptions* _tmp20_;
	gchar* _tmp21_;
#line 222 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_PUBLISHING_OPTIONS_PANE (self));
#line 223 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = self->priv->options;
#line 223 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp1_ = self->priv->album_list;
#line 223 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp2_ = gtk_combo_box_text_get_active_text (_tmp1_);
#line 223 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (_tmp0_->destination_album);
#line 223 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_->destination_album = _tmp2_;
#line 225 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp3_ = self->priv->builder;
#line 225 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp4_ = gtk_builder_get_object (_tmp3_, "hide_original_check");
#line 225 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp5_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp4_, gtk_check_button_get_type ()) ? ((GtkCheckButton*) _tmp4_) : NULL);
#line 225 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	tmp = _tmp5_;
#line 226 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp6_ = self->priv->options;
#line 226 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp7_ = tmp;
#line 226 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp8_ = gtk_toggle_button_get_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, gtk_toggle_button_get_type (), GtkToggleButton));
#line 226 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp9_ = _tmp8_;
#line 226 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp6_->hide_original = _tmp9_;
#line 228 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp10_ = self->priv->builder;
#line 228 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp11_ = gtk_builder_get_object (_tmp10_, "disable_comments_check");
#line 228 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp12_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp11_, gtk_check_button_get_type ()) ? ((GtkCheckButton*) _tmp11_) : NULL);
#line 228 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_object_unref0 (tmp);
#line 228 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	tmp = _tmp12_;
#line 229 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp13_ = self->priv->options;
#line 229 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp14_ = tmp;
#line 229 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp15_ = gtk_toggle_button_get_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp14_, gtk_toggle_button_get_type (), GtkToggleButton));
#line 229 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp16_ = _tmp15_;
#line 229 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp13_->disable_comments = _tmp16_;
#line 231 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp17_ = self->priv->builder;
#line 231 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp18_ = gtk_builder_get_object (_tmp17_, "access_type_list");
#line 231 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp19_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp18_, gtk_combo_box_text_get_type ()) ? ((GtkComboBoxText*) _tmp18_) : NULL);
#line 231 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	access_type = _tmp19_;
#line 232 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp20_ = self->priv->options;
#line 232 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp21_ = gtk_combo_box_text_get_active_text (access_type);
#line 232 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (_tmp20_->access_type);
#line 232 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp20_->access_type = _tmp21_;
#line 234 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_emit (self, publishing_yandex_publishing_options_pane_signals[PUBLISHING_YANDEX_PUBLISHING_OPTIONS_PANE_PUBLISH_SIGNAL], 0);
#line 222 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_object_unref0 (access_type);
#line 222 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_object_unref0 (tmp);
#line 2278 "YandexPublishing.c"
}


static void
publishing_yandex_publishing_options_pane_class_init (PublishingYandexPublishingOptionsPaneClass * klass)
{
#line 163 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_publishing_options_pane_parent_class = g_type_class_peek_parent (klass);
#line 163 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_type_class_add_private (klass, sizeof (PublishingYandexPublishingOptionsPanePrivate));
#line 163 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	G_OBJECT_CLASS (klass)->finalize = publishing_yandex_publishing_options_pane_finalize;
#line 163 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_publishing_options_pane_signals[PUBLISHING_YANDEX_PUBLISHING_OPTIONS_PANE_PUBLISH_SIGNAL] = g_signal_new ("publish", PUBLISHING_YANDEX_TYPE_PUBLISHING_OPTIONS_PANE, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
#line 163 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_publishing_options_pane_signals[PUBLISHING_YANDEX_PUBLISHING_OPTIONS_PANE_LOGOUT_SIGNAL] = g_signal_new ("logout", PUBLISHING_YANDEX_TYPE_PUBLISHING_OPTIONS_PANE, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
#line 2295 "YandexPublishing.c"
}


static void
publishing_yandex_publishing_options_pane_spit_publishing_dialog_pane_interface_init (SpitPublishingDialogPaneIface * iface)
{
#line 163 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_publishing_options_pane_spit_publishing_dialog_pane_parent_iface = g_type_interface_peek_parent (iface);
#line 163 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	iface->get_preferred_geometry = (SpitPublishingDialogPaneGeometryOptions (*) (SpitPublishingDialogPane *)) publishing_yandex_publishing_options_pane_real_get_preferred_geometry;
#line 163 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	iface->on_pane_installed = (void (*) (SpitPublishingDialogPane *)) publishing_yandex_publishing_options_pane_real_on_pane_installed;
#line 163 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	iface->on_pane_uninstalled = (void (*) (SpitPublishingDialogPane *)) publishing_yandex_publishing_options_pane_real_on_pane_uninstalled;
#line 163 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	iface->get_widget = (GtkWidget* (*) (SpitPublishingDialogPane *)) publishing_yandex_publishing_options_pane_real_get_widget;
#line 2312 "YandexPublishing.c"
}


static void
publishing_yandex_publishing_options_pane_instance_init (PublishingYandexPublishingOptionsPane * self)
{
#line 163 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv = PUBLISHING_YANDEX_PUBLISHING_OPTIONS_PANE_GET_PRIVATE (self);
#line 2321 "YandexPublishing.c"
}


static void
publishing_yandex_publishing_options_pane_finalize (GObject * obj)
{
	PublishingYandexPublishingOptionsPane * self;
#line 163 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PUBLISHING_YANDEX_TYPE_PUBLISHING_OPTIONS_PANE, PublishingYandexPublishingOptionsPane);
#line 164 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_object_unref0 (self->priv->box);
#line 165 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_object_unref0 (self->priv->builder);
#line 166 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_object_unref0 (self->priv->logout_button);
#line 167 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_object_unref0 (self->priv->publish_button);
#line 168 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_object_unref0 (self->priv->album_list);
#line 163 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	G_OBJECT_CLASS (publishing_yandex_publishing_options_pane_parent_class)->finalize (obj);
#line 2343 "YandexPublishing.c"
}


GType
publishing_yandex_publishing_options_pane_get_type (void)
{
	static volatile gsize publishing_yandex_publishing_options_pane_type_id__volatile = 0;
	if (g_once_init_enter (&publishing_yandex_publishing_options_pane_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (PublishingYandexPublishingOptionsPaneClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) publishing_yandex_publishing_options_pane_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PublishingYandexPublishingOptionsPane), 0, (GInstanceInitFunc) publishing_yandex_publishing_options_pane_instance_init, NULL };
		static const GInterfaceInfo spit_publishing_dialog_pane_info = { (GInterfaceInitFunc) publishing_yandex_publishing_options_pane_spit_publishing_dialog_pane_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
		GType publishing_yandex_publishing_options_pane_type_id;
		publishing_yandex_publishing_options_pane_type_id = g_type_register_static (G_TYPE_OBJECT, "PublishingYandexPublishingOptionsPane", &g_define_type_info, 0);
		g_type_add_interface_static (publishing_yandex_publishing_options_pane_type_id, SPIT_PUBLISHING_TYPE_DIALOG_PANE, &spit_publishing_dialog_pane_info);
		g_once_init_leave (&publishing_yandex_publishing_options_pane_type_id__volatile, publishing_yandex_publishing_options_pane_type_id);
	}
	return publishing_yandex_publishing_options_pane_type_id__volatile;
}


PublishingYandexUploader*
publishing_yandex_uploader_construct (GType object_type,
                                      PublishingYandexSession* session,
                                      PublishingYandexPublishOptions* options,
                                      SpitPublishingPublishable** photos,
                                      int photos_length1)
{
	PublishingYandexUploader* self = NULL;
#line 241 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (PUBLISHING_YANDEX_IS_SESSION (session), NULL);
#line 241 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (PUBLISHING_YANDEX_IS_PUBLISH_OPTIONS (options), NULL);
#line 242 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = (PublishingYandexUploader*) publishing_rest_support_batch_uploader_construct (object_type, G_TYPE_CHECK_INSTANCE_CAST (session, PUBLISHING_REST_SUPPORT_TYPE_SESSION, PublishingRESTSupportSession), photos, photos_length1);
#line 244 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->options = options;
#line 241 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return self;
#line 2381 "YandexPublishing.c"
}


PublishingYandexUploader*
publishing_yandex_uploader_new (PublishingYandexSession* session,
                                PublishingYandexPublishOptions* options,
                                SpitPublishingPublishable** photos,
                                int photos_length1)
{
#line 241 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return publishing_yandex_uploader_construct (PUBLISHING_YANDEX_TYPE_UPLOADER, session, options, photos, photos_length1);
#line 2393 "YandexPublishing.c"
}


static PublishingRESTSupportTransaction*
publishing_yandex_uploader_real_create_transaction (PublishingRESTSupportBatchUploader* base,
                                                    SpitPublishingPublishable* publishable)
{
	PublishingYandexUploader * self;
	PublishingRESTSupportTransaction* result = NULL;
	PublishingRESTSupportSession* _tmp0_;
	PublishingYandexSession* _tmp1_;
	PublishingYandexPublishOptions* _tmp2_;
	SpitPublishingPublishable* _tmp3_;
	SpitPublishingPublishable* _tmp4_;
	PublishingYandexUploadTransaction* _tmp5_;
	PublishingRESTSupportTransaction* _tmp6_;
#line 247 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, PUBLISHING_YANDEX_TYPE_UPLOADER, PublishingYandexUploader);
#line 247 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (SPIT_PUBLISHING_IS_PUBLISHABLE (publishable), NULL);
#line 248 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_debug ("YandexPublishing.vala:248: create transaction");
#line 249 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = publishing_rest_support_batch_uploader_get_session (G_TYPE_CHECK_INSTANCE_CAST (self, PUBLISHING_REST_SUPPORT_TYPE_BATCH_UPLOADER, PublishingRESTSupportBatchUploader));
#line 249 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp1_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, PUBLISHING_YANDEX_TYPE_SESSION, PublishingYandexSession);
#line 249 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp2_ = self->priv->options;
#line 249 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp3_ = publishing_rest_support_batch_uploader_get_current_publishable (G_TYPE_CHECK_INSTANCE_CAST (self, PUBLISHING_REST_SUPPORT_TYPE_BATCH_UPLOADER, PublishingRESTSupportBatchUploader));
#line 249 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp4_ = _tmp3_;
#line 249 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp5_ = publishing_yandex_upload_transaction_new (_tmp1_, _tmp2_, _tmp4_);
#line 249 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp6_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, PublishingRESTSupportTransaction);
#line 249 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_object_unref0 (_tmp4_);
#line 249 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_publishing_rest_support_session_unref0 (_tmp1_);
#line 249 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	result = _tmp6_;
#line 249 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return result;
#line 2438 "YandexPublishing.c"
}


static void
publishing_yandex_uploader_class_init (PublishingYandexUploaderClass * klass)
{
#line 238 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_uploader_parent_class = g_type_class_peek_parent (klass);
#line 238 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	((PublishingRESTSupportBatchUploaderClass *) klass)->finalize = publishing_yandex_uploader_finalize;
#line 238 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_type_class_add_private (klass, sizeof (PublishingYandexUploaderPrivate));
#line 238 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	((PublishingRESTSupportBatchUploaderClass *) klass)->create_transaction = (PublishingRESTSupportTransaction* (*) (PublishingRESTSupportBatchUploader *, SpitPublishingPublishable*)) publishing_yandex_uploader_real_create_transaction;
#line 2453 "YandexPublishing.c"
}


static void
publishing_yandex_uploader_instance_init (PublishingYandexUploader * self)
{
#line 238 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv = PUBLISHING_YANDEX_UPLOADER_GET_PRIVATE (self);
#line 2462 "YandexPublishing.c"
}


static void
publishing_yandex_uploader_finalize (PublishingRESTSupportBatchUploader * obj)
{
	PublishingYandexUploader * self;
#line 238 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PUBLISHING_YANDEX_TYPE_UPLOADER, PublishingYandexUploader);
#line 238 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	PUBLISHING_REST_SUPPORT_BATCH_UPLOADER_CLASS (publishing_yandex_uploader_parent_class)->finalize (obj);
#line 2474 "YandexPublishing.c"
}


GType
publishing_yandex_uploader_get_type (void)
{
	static volatile gsize publishing_yandex_uploader_type_id__volatile = 0;
	if (g_once_init_enter (&publishing_yandex_uploader_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (PublishingYandexUploaderClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) publishing_yandex_uploader_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PublishingYandexUploader), 0, (GInstanceInitFunc) publishing_yandex_uploader_instance_init, NULL };
		GType publishing_yandex_uploader_type_id;
		publishing_yandex_uploader_type_id = g_type_register_static (PUBLISHING_REST_SUPPORT_TYPE_BATCH_UPLOADER, "PublishingYandexUploader", &g_define_type_info, 0);
		g_once_init_leave (&publishing_yandex_uploader_type_id__volatile, publishing_yandex_uploader_type_id);
	}
	return publishing_yandex_uploader_type_id__volatile;
}


static gchar*
bool_to_string (gboolean self)
{
	gchar* result = NULL;
#line 37 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
	if (self) {
#line 2498 "YandexPublishing.c"
		gchar* _tmp0_;
#line 38 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
		_tmp0_ = g_strdup ("true");
#line 38 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
		result = _tmp0_;
#line 38 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
		return result;
#line 2506 "YandexPublishing.c"
	} else {
		gchar* _tmp1_;
#line 40 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
		_tmp1_ = g_strdup ("false");
#line 40 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
		result = _tmp1_;
#line 40 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
		return result;
#line 2515 "YandexPublishing.c"
	}
}


static void
_vala_SoupMultipart_free (SoupMultipart* self)
{
#line 271 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_boxed_free (soup_multipart_get_type (), self);
#line 2525 "YandexPublishing.c"
}


static guint8*
string_get_data (const gchar* self,
                 int* result_length1)
{
	guint8* result;
	guint8* res = NULL;
	gint res_length1;
	gint _res_size_;
	gint _tmp0_;
	gint _tmp1_;
	gint _tmp2_;
	guint8* _tmp3_;
	gint _tmp3__length1;
	guint8* _tmp4_;
	gint _tmp4__length1;
#line 1442 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
	g_return_val_if_fail (self != NULL, NULL);
#line 1443 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
	res = (guint8*) self;
#line 1443 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
	res_length1 = -1;
#line 1443 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
	_res_size_ = res_length1;
#line 1444 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
	_tmp0_ = strlen (self);
#line 1444 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
	_tmp1_ = _tmp0_;
#line 1444 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
	res_length1 = (gint) _tmp1_;
#line 1444 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
	_tmp2_ = res_length1;
#line 1445 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
	_tmp3_ = res;
#line 1445 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
	_tmp3__length1 = res_length1;
#line 1445 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
	_tmp4_ = _tmp3_;
#line 1445 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
	_tmp4__length1 = _tmp3__length1;
#line 1445 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
	if (result_length1) {
#line 1445 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
		*result_length1 = _tmp4__length1;
#line 2572 "YandexPublishing.c"
	}
#line 1445 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
	result = _tmp4_;
#line 1445 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
	return result;
#line 2578 "YandexPublishing.c"
}


static void
_g_free0_ (gpointer var)
{
#line 285 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	var = (g_free (var), NULL);
#line 2587 "YandexPublishing.c"
}


static void
_vala_SoupBuffer_free (SoupBuffer* self)
{
#line 254 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_boxed_free (soup_buffer_get_type (), self);
#line 2596 "YandexPublishing.c"
}


PublishingYandexUploadTransaction*
publishing_yandex_upload_transaction_construct (GType object_type,
                                                PublishingYandexSession* session,
                                                PublishingYandexPublishOptions* options,
                                                SpitPublishingPublishable* photo)
{
	PublishingYandexUploadTransaction* self = NULL;
	const gchar* _tmp0_;
	gchar* _tmp1_;
	gchar* _tmp2_;
	const gchar* _tmp3_;
	const gchar* _tmp4_;
	SoupMultipart* message_parts = NULL;
	SoupMultipart* _tmp5_;
	gchar* _tmp6_;
	gchar* _tmp7_;
	gboolean _tmp8_;
	gchar* _tmp9_;
	gchar* _tmp10_;
	gboolean _tmp11_;
	gchar* _tmp12_;
	gchar* _tmp13_;
	const gchar* _tmp14_;
	gchar* _tmp15_;
	gchar* _tmp16_;
	gchar* photo_data = NULL;
	gsize data_length = 0UL;
	gint image_part_num = 0;
	SoupBuffer* bindable_data = NULL;
	guint8* _tmp29_;
	gint _tmp29__length1;
	guint8* _tmp30_;
	gint _tmp30__length1;
	SoupBuffer* _tmp31_;
	GFile* _tmp32_;
	GFile* _tmp33_;
	gchar* _tmp34_;
	gchar* _tmp35_;
	SoupMessageHeaders* image_part_header = NULL;
	SoupBuffer* image_part_body = NULL;
	SoupMessageHeaders* _tmp36_ = NULL;
	SoupBuffer* _tmp37_ = NULL;
	GHashTable* _result_ = NULL;
	GHashFunc _tmp38_;
	GEqualFunc _tmp39_;
	GHashTable* _tmp40_;
	gchar* _tmp41_;
	gchar* _tmp42_;
	gchar* _tmp43_;
	gchar* _tmp44_;
	SoupMessage* outbound_message = NULL;
	gchar* _tmp45_;
	gchar* _tmp46_;
	SoupMessage* _tmp47_;
	SoupMessage* _tmp48_;
	SoupMessageHeaders* _tmp49_;
	gchar* _tmp50_;
	gchar* _tmp51_;
	gchar* _tmp52_;
	gchar* _tmp53_;
	SoupMessageHeaders* _tmp54_;
	GError * _inner_error_ = NULL;
#line 254 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (PUBLISHING_YANDEX_IS_SESSION (session), NULL);
#line 254 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (PUBLISHING_YANDEX_IS_PUBLISH_OPTIONS (options), NULL);
#line 254 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (SPIT_PUBLISHING_IS_PUBLISHABLE (photo), NULL);
#line 255 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = options->destination_album_url;
#line 255 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = (PublishingYandexUploadTransaction*) publishing_yandex_transaction_construct_with_url (object_type, session, _tmp0_, PUBLISHING_REST_SUPPORT_HTTP_METHOD_POST);
#line 257 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_rest_support_transaction_set_custom_payload (G_TYPE_CHECK_INSTANCE_CAST (self, PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, PublishingRESTSupportTransaction), "qwe", "image/jpeg", (gulong) 1);
#line 259 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp1_ = spit_publishing_publishable_get_publishing_name (photo);
#line 259 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp2_ = _tmp1_;
#line 259 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp3_ = options->destination_album;
#line 259 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp4_ = options->destination_album_url;
#line 259 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_debug ("YandexPublishing.vala:259: Uploading '%s' -> %s : %s", _tmp2_, _tmp3_, _tmp4_);
#line 259 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (_tmp2_);
#line 261 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp5_ = soup_multipart_new ("multipart/form-data");
#line 261 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	message_parts = _tmp5_;
#line 262 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp6_ = spit_publishing_publishable_get_publishing_name (photo);
#line 262 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp7_ = _tmp6_;
#line 262 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	soup_multipart_append_form_string (message_parts, "title", _tmp7_);
#line 262 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (_tmp7_);
#line 263 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp8_ = options->hide_original;
#line 263 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp9_ = bool_to_string (_tmp8_);
#line 263 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp10_ = _tmp9_;
#line 263 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	soup_multipart_append_form_string (message_parts, "hide_original", _tmp10_);
#line 263 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (_tmp10_);
#line 264 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp11_ = options->disable_comments;
#line 264 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp12_ = bool_to_string (_tmp11_);
#line 264 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp13_ = _tmp12_;
#line 264 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	soup_multipart_append_form_string (message_parts, "disable_comments", _tmp13_);
#line 264 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (_tmp13_);
#line 265 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp14_ = options->access_type;
#line 265 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp15_ = g_utf8_strdown (_tmp14_, (gssize) -1);
#line 265 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp16_ = _tmp15_;
#line 265 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	soup_multipart_append_form_string (message_parts, "access", _tmp16_);
#line 265 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (_tmp16_);
#line 2728 "YandexPublishing.c"
	{
		GFile* _tmp17_;
		GFile* _tmp18_;
		gchar* _tmp19_;
		gchar* _tmp20_;
		gchar* _tmp21_ = NULL;
		gsize _tmp22_ = 0UL;
#line 271 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp17_ = spit_publishing_publishable_get_serialized_file (photo);
#line 271 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp18_ = _tmp17_;
#line 271 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp19_ = g_file_get_path (_tmp18_);
#line 271 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp20_ = _tmp19_;
#line 271 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_file_get_contents (_tmp20_, &_tmp21_, &_tmp22_, &_inner_error_);
#line 271 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_free0 (photo_data);
#line 271 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		photo_data = _tmp21_;
#line 271 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		data_length = _tmp22_;
#line 271 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_free0 (_tmp20_);
#line 271 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_object_unref0 (_tmp18_);
#line 271 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 271 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			if (_inner_error_->domain == G_FILE_ERROR) {
#line 2760 "YandexPublishing.c"
				goto __catch34_g_file_error;
			}
#line 271 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_g_free0 (photo_data);
#line 271 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			__vala_SoupMultipart_free0 (message_parts);
#line 271 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 271 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_clear_error (&_inner_error_);
#line 271 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			return NULL;
#line 2773 "YandexPublishing.c"
		}
	}
	goto __finally34;
	__catch34_g_file_error:
	{
		GError* e = NULL;
		GFile* _tmp23_;
		GFile* _tmp24_;
		gchar* _tmp25_;
		gchar* _tmp26_;
		GError* _tmp27_;
		const gchar* _tmp28_;
#line 270 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		e = _inner_error_;
#line 270 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_inner_error_ = NULL;
#line 273 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp23_ = spit_publishing_publishable_get_serialized_file (photo);
#line 273 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp24_ = _tmp23_;
#line 273 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp25_ = g_file_get_path (_tmp24_);
#line 273 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp26_ = _tmp25_;
#line 273 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp27_ = e;
#line 273 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp28_ = _tmp27_->message;
#line 273 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_critical ("YandexPublishing.vala:273: Failed to read data file '%s': %s", _tmp26_, _tmp28_);
#line 273 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_free0 (_tmp26_);
#line 273 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_object_unref0 (_tmp24_);
#line 270 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_error_free0 (e);
#line 2810 "YandexPublishing.c"
	}
	__finally34:
#line 270 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 270 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_free0 (photo_data);
#line 270 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		__vala_SoupMultipart_free0 (message_parts);
#line 270 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 270 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_clear_error (&_inner_error_);
#line 270 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		return NULL;
#line 2825 "YandexPublishing.c"
	}
#line 276 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	image_part_num = soup_multipart_get_length (message_parts);
#line 278 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp29_ = string_get_data (photo_data, &_tmp29__length1);
#line 278 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp30_ = _tmp29_;
#line 278 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp30__length1 = _tmp29__length1;
#line 278 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp31_ = soup_buffer_new (SOUP_MEMORY_COPY, _tmp30_ + 0, ((gint) data_length) - 0);
#line 278 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	bindable_data = _tmp31_;
#line 279 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp32_ = spit_publishing_publishable_get_serialized_file (photo);
#line 279 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp33_ = _tmp32_;
#line 279 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp34_ = g_file_get_path (_tmp33_);
#line 279 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp35_ = _tmp34_;
#line 279 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	soup_multipart_append_form_file (message_parts, "", _tmp35_, "image/jpeg", bindable_data);
#line 279 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (_tmp35_);
#line 279 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_object_unref0 (_tmp33_);
#line 283 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	soup_multipart_get_part (message_parts, image_part_num, &_tmp36_, &_tmp37_);
#line 283 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	image_part_header = _tmp36_;
#line 283 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	image_part_body = _tmp37_;
#line 285 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp38_ = g_str_hash;
#line 285 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp39_ = g_str_equal;
#line 285 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp40_ = g_hash_table_new_full (_tmp38_, _tmp39_, _g_free0_, _g_free0_);
#line 285 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_result_ = _tmp40_;
#line 286 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp41_ = g_strdup ("name");
#line 286 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp42_ = g_strdup ("image");
#line 286 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_hash_table_insert (_result_, _tmp41_, _tmp42_);
#line 287 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp43_ = g_strdup ("filename");
#line 287 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp44_ = g_strdup ("unused");
#line 287 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_hash_table_insert (_result_, _tmp43_, _tmp44_);
#line 289 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	soup_message_headers_set_content_disposition (image_part_header, "form-data", _result_);
#line 291 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp45_ = publishing_rest_support_transaction_get_endpoint_url (G_TYPE_CHECK_INSTANCE_CAST (self, PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, PublishingRESTSupportTransaction));
#line 291 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp46_ = _tmp45_;
#line 291 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp47_ = soup_form_request_new_from_multipart (_tmp46_, message_parts);
#line 291 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp48_ = _tmp47_;
#line 291 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (_tmp46_);
#line 291 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	outbound_message = _tmp48_;
#line 292 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp49_ = outbound_message->request_headers;
#line 292 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp50_ = publishing_yandex_session_get_auth_token (session);
#line 292 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp51_ = _tmp50_;
#line 292 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp52_ = g_strdup_printf ("OAuth %s", _tmp51_);
#line 292 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp53_ = _tmp52_;
#line 292 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	soup_message_headers_append (_tmp49_, "Authorization", _tmp53_);
#line 292 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (_tmp53_);
#line 292 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (_tmp51_);
#line 293 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp54_ = outbound_message->request_headers;
#line 293 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	soup_message_headers_append (_tmp54_, "Connection", "close");
#line 294 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_rest_support_transaction_set_message (G_TYPE_CHECK_INSTANCE_CAST (self, PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, PublishingRESTSupportTransaction), outbound_message);
#line 254 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_object_unref0 (outbound_message);
#line 254 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_hash_table_unref0 (_result_);
#line 254 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	__vala_SoupBuffer_free0 (bindable_data);
#line 254 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (photo_data);
#line 254 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	__vala_SoupMultipart_free0 (message_parts);
#line 254 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return self;
#line 2927 "YandexPublishing.c"
}


PublishingYandexUploadTransaction*
publishing_yandex_upload_transaction_new (PublishingYandexSession* session,
                                          PublishingYandexPublishOptions* options,
                                          SpitPublishingPublishable* photo)
{
#line 254 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return publishing_yandex_upload_transaction_construct (PUBLISHING_YANDEX_TYPE_UPLOAD_TRANSACTION, session, options, photo);
#line 2938 "YandexPublishing.c"
}


static void
publishing_yandex_upload_transaction_class_init (PublishingYandexUploadTransactionClass * klass)
{
#line 253 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_upload_transaction_parent_class = g_type_class_peek_parent (klass);
#line 2947 "YandexPublishing.c"
}


static void
publishing_yandex_upload_transaction_instance_init (PublishingYandexUploadTransaction * self)
{
}


GType
publishing_yandex_upload_transaction_get_type (void)
{
	static volatile gsize publishing_yandex_upload_transaction_type_id__volatile = 0;
	if (g_once_init_enter (&publishing_yandex_upload_transaction_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (PublishingYandexUploadTransactionClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) publishing_yandex_upload_transaction_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PublishingYandexUploadTransaction), 0, (GInstanceInitFunc) publishing_yandex_upload_transaction_instance_init, NULL };
		GType publishing_yandex_upload_transaction_type_id;
		publishing_yandex_upload_transaction_type_id = g_type_register_static (PUBLISHING_YANDEX_TYPE_TRANSACTION, "PublishingYandexUploadTransaction", &g_define_type_info, 0);
		g_once_init_leave (&publishing_yandex_upload_transaction_type_id__volatile, publishing_yandex_upload_transaction_type_id);
	}
	return publishing_yandex_upload_transaction_type_id__volatile;
}


PublishingYandexYandexPublisher*
publishing_yandex_yandex_publisher_construct (GType object_type,
                                              SpitPublishingService* service,
                                              SpitPublishingPluginHost* host)
{
	PublishingYandexYandexPublisher * self = NULL;
	PublishingYandexSession* _tmp0_;
	GeeHashMap* _tmp1_;
	PublishingYandexPublishOptions* _tmp2_;
#line 314 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (SPIT_PUBLISHING_IS_SERVICE (service), NULL);
#line 314 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (SPIT_PUBLISHING_IS_PLUGIN_HOST (host), NULL);
#line 314 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = (PublishingYandexYandexPublisher*) g_object_new (object_type, NULL);
#line 315 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->service = service;
#line 316 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->host = host;
#line 317 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = publishing_yandex_session_new ();
#line 317 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_publishing_rest_support_session_unref0 (self->priv->session);
#line 317 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->session = _tmp0_;
#line 318 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp1_ = gee_hash_map_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
#line 318 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_object_unref0 (self->priv->album_list);
#line 318 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->album_list = _tmp1_;
#line 319 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp2_ = publishing_yandex_publish_options_new ();
#line 319 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_publishing_yandex_publish_options_unref0 (self->priv->options);
#line 319 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->options = _tmp2_;
#line 314 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return self;
#line 3010 "YandexPublishing.c"
}


PublishingYandexYandexPublisher*
publishing_yandex_yandex_publisher_new (SpitPublishingService* service,
                                        SpitPublishingPluginHost* host)
{
#line 314 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return publishing_yandex_yandex_publisher_construct (PUBLISHING_YANDEX_TYPE_YANDEX_PUBLISHER, service, host);
#line 3020 "YandexPublishing.c"
}


gchar*
publishing_yandex_yandex_publisher_get_persistent_auth_token (PublishingYandexYandexPublisher* self)
{
	gchar* result = NULL;
	SpitPublishingPluginHost* _tmp0_;
	gchar* _tmp1_;
#line 322 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self), NULL);
#line 323 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = self->priv->host;
#line 323 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp1_ = spit_host_interface_get_config_string (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, SPIT_TYPE_HOST_INTERFACE, SpitHostInterface), "auth_token", NULL);
#line 323 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	result = _tmp1_;
#line 323 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return result;
#line 3040 "YandexPublishing.c"
}


void
publishing_yandex_yandex_publisher_set_persistent_auth_token (PublishingYandexYandexPublisher* self,
                                                              const gchar* auth_token)
{
	SpitPublishingPluginHost* _tmp0_;
#line 326 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self));
#line 326 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (auth_token != NULL);
#line 327 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = self->priv->host;
#line 327 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	spit_host_interface_set_config_string (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, SPIT_TYPE_HOST_INTERFACE, SpitHostInterface), "auth_token", auth_token);
#line 3057 "YandexPublishing.c"
}


void
publishing_yandex_yandex_publisher_invalidate_persistent_session (PublishingYandexYandexPublisher* self)
{
	SpitPublishingPluginHost* _tmp0_;
#line 330 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self));
#line 331 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = self->priv->host;
#line 331 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	spit_host_interface_unset_config_key (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, SPIT_TYPE_HOST_INTERFACE, SpitHostInterface), "auth_token");
#line 3071 "YandexPublishing.c"
}


gboolean
publishing_yandex_yandex_publisher_is_persistent_session_available (PublishingYandexYandexPublisher* self)
{
	gboolean result = FALSE;
	gchar* _tmp0_;
	gchar* _tmp1_;
	gboolean _tmp2_;
#line 334 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self), FALSE);
#line 335 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = publishing_yandex_yandex_publisher_get_persistent_auth_token (self);
#line 335 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp1_ = _tmp0_;
#line 335 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp2_ = _tmp1_ != NULL;
#line 335 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (_tmp1_);
#line 335 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	result = _tmp2_;
#line 335 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return result;
#line 3096 "YandexPublishing.c"
}


static gboolean
publishing_yandex_yandex_publisher_real_is_running (SpitPublishingPublisher* base)
{
	PublishingYandexYandexPublisher * self;
	gboolean result = FALSE;
	gboolean _tmp0_;
#line 338 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, PUBLISHING_YANDEX_TYPE_YANDEX_PUBLISHER, PublishingYandexYandexPublisher);
#line 339 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = self->priv->running;
#line 339 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	result = _tmp0_;
#line 339 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return result;
#line 3114 "YandexPublishing.c"
}


static SpitPublishingService*
publishing_yandex_yandex_publisher_real_get_service (SpitPublishingPublisher* base)
{
	PublishingYandexYandexPublisher * self;
	SpitPublishingService* result = NULL;
	SpitPublishingService* _tmp0_;
	SpitPublishingService* _tmp1_;
#line 342 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, PUBLISHING_YANDEX_TYPE_YANDEX_PUBLISHER, PublishingYandexYandexPublisher);
#line 343 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = self->priv->service;
#line 343 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp1_ = _g_object_ref0 (_tmp0_);
#line 343 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	result = _tmp1_;
#line 343 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return result;
#line 3135 "YandexPublishing.c"
}


static gchar*
publishing_yandex_yandex_publisher_check_response (PublishingYandexYandexPublisher* self,
                                                   PublishingRESTSupportXmlDocument* doc)
{
	gchar* result = NULL;
#line 346 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self), NULL);
#line 346 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_val_if_fail (PUBLISHING_REST_SUPPORT_IS_XML_DOCUMENT (doc), NULL);
#line 347 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	result = NULL;
#line 347 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return result;
#line 3152 "YandexPublishing.c"
}


static void
publishing_yandex_yandex_publisher_parse_album_entry (PublishingYandexYandexPublisher* self,
                                                      xmlNode* e,
                                                      GError** error)
{
	gchar* title = NULL;
	gchar* link = NULL;
#line 350 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self));
#line 351 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	title = NULL;
#line 352 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	link = NULL;
#line 3169 "YandexPublishing.c"
	{
		xmlNode* c = NULL;
		xmlNode* _tmp0_;
#line 354 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp0_ = e->children;
#line 354 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		c = _tmp0_;
#line 3177 "YandexPublishing.c"
		{
			gboolean _tmp1_ = FALSE;
#line 354 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_tmp1_ = TRUE;
#line 354 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			while (TRUE) {
#line 3184 "YandexPublishing.c"
				xmlNode* _tmp4_;
				xmlNode* _tmp5_;
				const gchar* _tmp6_;
				gboolean _tmp9_ = FALSE;
				xmlNode* _tmp10_;
				const gchar* _tmp11_;
				gboolean _tmp17_ = FALSE;
				const gchar* _tmp18_;
#line 354 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				if (!_tmp1_) {
#line 3195 "YandexPublishing.c"
					xmlNode* _tmp2_;
					xmlNode* _tmp3_;
#line 354 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp2_ = c;
#line 354 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp3_ = _tmp2_->next;
#line 354 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					c = _tmp3_;
#line 3204 "YandexPublishing.c"
				}
#line 354 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp1_ = FALSE;
#line 354 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp4_ = c;
#line 354 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				if (!(_tmp4_ != NULL)) {
#line 354 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					break;
#line 3214 "YandexPublishing.c"
				}
#line 355 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp5_ = c;
#line 355 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp6_ = _tmp5_->name;
#line 355 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				if (g_strcmp0 (_tmp6_, "title") == 0) {
#line 3222 "YandexPublishing.c"
					xmlNode* _tmp7_;
					gchar* _tmp8_;
#line 356 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp7_ = c;
#line 356 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp8_ = (gchar*) xmlNodeGetContent (_tmp7_);
#line 356 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_g_free0 (title);
#line 356 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					title = _tmp8_;
#line 3233 "YandexPublishing.c"
				}
#line 358 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp10_ = c;
#line 358 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp11_ = _tmp10_->name;
#line 358 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				if (g_strcmp0 (_tmp11_, "link") == 0) {
#line 3241 "YandexPublishing.c"
					xmlNode* _tmp12_;
					gchar* _tmp13_;
					gchar* _tmp14_;
#line 358 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp12_ = c;
#line 358 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp13_ = (gchar*) xmlGetProp (_tmp12_, (xmlChar*) "rel");
#line 358 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp14_ = _tmp13_;
#line 358 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp9_ = g_strcmp0 (_tmp14_, "photos") == 0;
#line 358 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_g_free0 (_tmp14_);
#line 3255 "YandexPublishing.c"
				} else {
#line 358 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp9_ = FALSE;
#line 3259 "YandexPublishing.c"
				}
#line 358 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				if (_tmp9_) {
#line 3263 "YandexPublishing.c"
					xmlNode* _tmp15_;
					gchar* _tmp16_;
#line 359 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp15_ = c;
#line 359 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp16_ = (gchar*) xmlGetProp (_tmp15_, (xmlChar*) "href");
#line 359 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_g_free0 (link);
#line 359 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					link = _tmp16_;
#line 3274 "YandexPublishing.c"
				}
#line 361 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp18_ = title;
#line 361 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				if (_tmp18_ != NULL) {
#line 3280 "YandexPublishing.c"
					const gchar* _tmp19_;
#line 361 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp19_ = link;
#line 361 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp17_ = _tmp19_ != NULL;
#line 3286 "YandexPublishing.c"
				} else {
#line 361 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp17_ = FALSE;
#line 3290 "YandexPublishing.c"
				}
#line 361 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				if (_tmp17_) {
#line 3294 "YandexPublishing.c"
					const gchar* _tmp20_;
					const gchar* _tmp21_;
					GeeHashMap* _tmp22_;
					const gchar* _tmp23_;
					const gchar* _tmp24_;
#line 362 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp20_ = title;
#line 362 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp21_ = link;
#line 362 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					g_debug ("YandexPublishing.vala:362: Added album: '%s', link: %s", _tmp20_, _tmp21_);
#line 363 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp22_ = self->priv->album_list;
#line 363 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp23_ = title;
#line 363 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp24_ = link;
#line 363 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					gee_abstract_map_set (G_TYPE_CHECK_INSTANCE_CAST (_tmp22_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp23_, _tmp24_);
#line 364 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_g_free0 (title);
#line 364 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					title = NULL;
#line 365 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_g_free0 (link);
#line 365 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					link = NULL;
#line 366 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					break;
#line 3324 "YandexPublishing.c"
				}
			}
		}
	}
#line 350 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (link);
#line 350 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (title);
#line 3333 "YandexPublishing.c"
}


static gchar*
_publishing_yandex_yandex_publisher_check_response_publishing_rest_support_xml_document_check_for_error_response (PublishingRESTSupportXmlDocument* doc,
                                                                                                                  gpointer self)
{
	gchar* result;
	result = publishing_yandex_yandex_publisher_check_response ((PublishingYandexYandexPublisher*) self, doc);
#line 372 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	return result;
#line 3345 "YandexPublishing.c"
}


void
publishing_yandex_yandex_publisher_parse_album_creation (PublishingYandexYandexPublisher* self,
                                                         const gchar* data,
                                                         GError** error)
{
	PublishingRESTSupportXmlDocument* doc = NULL;
	PublishingRESTSupportXmlDocument* _tmp0_;
	xmlNode* root = NULL;
	PublishingRESTSupportXmlDocument* _tmp1_;
	xmlNode* _tmp2_;
	xmlNode* _tmp3_;
	GError * _inner_error_ = NULL;
#line 371 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self));
#line 371 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (data != NULL);
#line 372 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = publishing_rest_support_xml_document_parse_string (data, _publishing_yandex_yandex_publisher_check_response_publishing_rest_support_xml_document_check_for_error_response, self, &_inner_error_);
#line 372 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	doc = _tmp0_;
#line 372 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 372 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		if (_inner_error_->domain == SPIT_PUBLISHING_PUBLISHING_ERROR) {
#line 372 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_propagate_error (error, _inner_error_);
#line 372 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			return;
#line 3377 "YandexPublishing.c"
		} else {
#line 372 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 372 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_clear_error (&_inner_error_);
#line 372 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			return;
#line 3385 "YandexPublishing.c"
		}
	}
#line 373 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp1_ = doc;
#line 373 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp2_ = publishing_rest_support_xml_document_get_root_node (_tmp1_);
#line 373 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	root = _tmp2_;
#line 375 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp3_ = root;
#line 375 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_yandex_publisher_parse_album_entry (self, _tmp3_, &_inner_error_);
#line 375 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 375 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		if (_inner_error_->domain == SPIT_PUBLISHING_PUBLISHING_ERROR) {
#line 375 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_propagate_error (error, _inner_error_);
#line 375 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_publishing_rest_support_xml_document_unref0 (doc);
#line 375 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			return;
#line 3408 "YandexPublishing.c"
		} else {
#line 375 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_publishing_rest_support_xml_document_unref0 (doc);
#line 375 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 375 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_clear_error (&_inner_error_);
#line 375 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			return;
#line 3418 "YandexPublishing.c"
		}
	}
#line 371 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_publishing_rest_support_xml_document_unref0 (doc);
#line 3423 "YandexPublishing.c"
}


void
publishing_yandex_yandex_publisher_parse_album_list (PublishingYandexYandexPublisher* self,
                                                     const gchar* data,
                                                     GError** error)
{
	PublishingRESTSupportXmlDocument* doc = NULL;
	PublishingRESTSupportXmlDocument* _tmp0_;
	xmlNode* root = NULL;
	PublishingRESTSupportXmlDocument* _tmp1_;
	xmlNode* _tmp2_;
	GError * _inner_error_ = NULL;
#line 378 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self));
#line 378 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (data != NULL);
#line 379 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = publishing_rest_support_xml_document_parse_string (data, _publishing_yandex_yandex_publisher_check_response_publishing_rest_support_xml_document_check_for_error_response, self, &_inner_error_);
#line 379 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	doc = _tmp0_;
#line 379 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 379 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		if (_inner_error_->domain == SPIT_PUBLISHING_PUBLISHING_ERROR) {
#line 379 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_propagate_error (error, _inner_error_);
#line 379 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			return;
#line 3454 "YandexPublishing.c"
		} else {
#line 379 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 379 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_clear_error (&_inner_error_);
#line 379 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			return;
#line 3462 "YandexPublishing.c"
		}
	}
#line 380 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp1_ = doc;
#line 380 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp2_ = publishing_rest_support_xml_document_get_root_node (_tmp1_);
#line 380 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	root = _tmp2_;
#line 3471 "YandexPublishing.c"
	{
		xmlNode* e = NULL;
		xmlNode* _tmp3_;
		xmlNode* _tmp4_;
#line 382 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp3_ = root;
#line 382 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp4_ = _tmp3_->children;
#line 382 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		e = _tmp4_;
#line 3482 "YandexPublishing.c"
		{
			gboolean _tmp5_ = FALSE;
#line 382 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_tmp5_ = TRUE;
#line 382 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			while (TRUE) {
#line 3489 "YandexPublishing.c"
				xmlNode* _tmp8_;
				xmlNode* _tmp9_;
				const gchar* _tmp10_;
				xmlNode* _tmp11_;
#line 382 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				if (!_tmp5_) {
#line 3496 "YandexPublishing.c"
					xmlNode* _tmp6_;
					xmlNode* _tmp7_;
#line 382 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp6_ = e;
#line 382 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp7_ = _tmp6_->next;
#line 382 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					e = _tmp7_;
#line 3505 "YandexPublishing.c"
				}
#line 382 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp5_ = FALSE;
#line 382 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp8_ = e;
#line 382 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				if (!(_tmp8_ != NULL)) {
#line 382 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					break;
#line 3515 "YandexPublishing.c"
				}
#line 383 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp9_ = e;
#line 383 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp10_ = _tmp9_->name;
#line 383 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				if (g_strcmp0 (_tmp10_, "entry") != 0) {
#line 384 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					continue;
#line 3525 "YandexPublishing.c"
				}
#line 386 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp11_ = e;
#line 386 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				publishing_yandex_yandex_publisher_parse_album_entry (self, _tmp11_, &_inner_error_);
#line 386 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 386 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					if (_inner_error_->domain == SPIT_PUBLISHING_PUBLISHING_ERROR) {
#line 386 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
						g_propagate_error (error, _inner_error_);
#line 386 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
						_publishing_rest_support_xml_document_unref0 (doc);
#line 386 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
						return;
#line 3541 "YandexPublishing.c"
					} else {
#line 386 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
						_publishing_rest_support_xml_document_unref0 (doc);
#line 386 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
						g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 386 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
						g_clear_error (&_inner_error_);
#line 386 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
						return;
#line 3551 "YandexPublishing.c"
					}
				}
			}
		}
	}
#line 378 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_publishing_rest_support_xml_document_unref0 (doc);
#line 3559 "YandexPublishing.c"
}


static void
_publishing_yandex_yandex_publisher_album_creation_complete_publishing_rest_support_transaction_completed (PublishingRESTSupportTransaction* _sender,
                                                                                                           gpointer self)
{
#line 391 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_yandex_publisher_album_creation_complete ((PublishingYandexYandexPublisher*) self, _sender);
#line 3569 "YandexPublishing.c"
}


static void
_publishing_yandex_yandex_publisher_album_creation_error_publishing_rest_support_transaction_network_error (PublishingRESTSupportTransaction* _sender,
                                                                                                            GError* err,
                                                                                                            gpointer self)
{
#line 392 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_yandex_publisher_album_creation_error ((PublishingYandexYandexPublisher*) self, _sender, err);
#line 3580 "YandexPublishing.c"
}


static void
publishing_yandex_yandex_publisher_album_creation_error (PublishingYandexYandexPublisher* self,
                                                         PublishingRESTSupportTransaction* t,
                                                         GError* err)
{
	guint _tmp0_;
	guint _tmp1_;
	const gchar* _tmp2_;
#line 390 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self));
#line 390 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_REST_SUPPORT_IS_TRANSACTION (t));
#line 391 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_parse_name ("completed", PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, &_tmp0_, NULL, FALSE);
#line 391 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_handlers_disconnect_matched (t, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp0_, 0, NULL, (GCallback) _publishing_yandex_yandex_publisher_album_creation_complete_publishing_rest_support_transaction_completed, self);
#line 392 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_parse_name ("network-error", PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, &_tmp1_, NULL, FALSE);
#line 392 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_handlers_disconnect_matched (t, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp1_, 0, NULL, (GCallback) _publishing_yandex_yandex_publisher_album_creation_error_publishing_rest_support_transaction_network_error, self);
#line 394 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp2_ = err->message;
#line 394 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_warning ("YandexPublishing.vala:394: Album creation error: %s", _tmp2_);
#line 3608 "YandexPublishing.c"
}


static void
publishing_yandex_yandex_publisher_album_creation_complete (PublishingYandexYandexPublisher* self,
                                                            PublishingRESTSupportTransaction* t)
{
	guint _tmp0_;
	guint _tmp1_;
	GeeHashMap* _tmp6_;
	PublishingYandexPublishOptions* _tmp7_;
	const gchar* _tmp8_;
	gpointer _tmp9_;
	gchar* _tmp10_;
	gboolean _tmp11_;
	GError * _inner_error_ = NULL;
#line 397 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self));
#line 397 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_REST_SUPPORT_IS_TRANSACTION (t));
#line 398 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_parse_name ("completed", PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, &_tmp0_, NULL, FALSE);
#line 398 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_handlers_disconnect_matched (t, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp0_, 0, NULL, (GCallback) _publishing_yandex_yandex_publisher_album_creation_complete_publishing_rest_support_transaction_completed, self);
#line 399 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_parse_name ("network-error", PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, &_tmp1_, NULL, FALSE);
#line 399 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_handlers_disconnect_matched (t, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp1_, 0, NULL, (GCallback) _publishing_yandex_yandex_publisher_album_creation_error_publishing_rest_support_transaction_network_error, self);
#line 3637 "YandexPublishing.c"
	{
		gchar* _tmp2_;
		gchar* _tmp3_;
#line 402 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp2_ = publishing_rest_support_transaction_get_response (t);
#line 402 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp3_ = _tmp2_;
#line 402 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		publishing_yandex_yandex_publisher_parse_album_creation (self, _tmp3_, &_inner_error_);
#line 402 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_free0 (_tmp3_);
#line 402 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 402 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			if (_inner_error_->domain == SPIT_PUBLISHING_PUBLISHING_ERROR) {
#line 3653 "YandexPublishing.c"
				goto __catch35_spit_publishing_publishing_error;
			}
#line 402 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 402 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_clear_error (&_inner_error_);
#line 402 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			return;
#line 3662 "YandexPublishing.c"
		}
	}
	goto __finally35;
	__catch35_spit_publishing_publishing_error:
	{
		GError* err = NULL;
		SpitPublishingPluginHost* _tmp4_;
		GError* _tmp5_;
#line 401 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		err = _inner_error_;
#line 401 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_inner_error_ = NULL;
#line 404 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp4_ = self->priv->host;
#line 404 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp5_ = err;
#line 404 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		spit_publishing_plugin_host_post_error (_tmp4_, _tmp5_);
#line 405 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_error_free0 (err);
#line 405 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		return;
#line 3685 "YandexPublishing.c"
	}
	__finally35:
#line 401 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 401 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 401 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_clear_error (&_inner_error_);
#line 401 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		return;
#line 3696 "YandexPublishing.c"
	}
#line 408 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp6_ = self->priv->album_list;
#line 408 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp7_ = self->priv->options;
#line 408 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp8_ = _tmp7_->destination_album;
#line 408 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp9_ = gee_abstract_map_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp8_);
#line 408 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp10_ = (gchar*) _tmp9_;
#line 408 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp11_ = _tmp10_ != NULL;
#line 408 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (_tmp10_);
#line 408 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (_tmp11_) {
#line 409 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		publishing_yandex_yandex_publisher_start_upload (self);
#line 3716 "YandexPublishing.c"
	} else {
		SpitPublishingPluginHost* _tmp12_;
		GError* _tmp13_;
		GError* _tmp14_;
#line 411 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp12_ = self->priv->host;
#line 411 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp13_ = g_error_new_literal (SPIT_PUBLISHING_PUBLISHING_ERROR, SPIT_PUBLISHING_PUBLISHING_ERROR_PROTOCOL_ERROR, "Server did not create album");
#line 411 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp14_ = _tmp13_;
#line 411 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		spit_publishing_plugin_host_post_error (_tmp12_, _tmp14_);
#line 411 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_error_free0 (_tmp14_);
#line 3731 "YandexPublishing.c"
	}
}


static void
publishing_yandex_yandex_publisher_create_destination_album (PublishingYandexYandexPublisher* self)
{
	gchar* album = NULL;
	PublishingYandexPublishOptions* _tmp0_;
	const gchar* _tmp1_;
	gchar* _tmp2_;
	gchar* data = NULL;
	gchar* _tmp3_;
	PublishingYandexTransaction* t = NULL;
	PublishingYandexSession* _tmp4_;
	const gchar* _tmp5_;
	PublishingYandexTransaction* _tmp6_;
	GError * _inner_error_ = NULL;
#line 414 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self));
#line 415 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = self->priv->options;
#line 415 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp1_ = _tmp0_->destination_album;
#line 415 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp2_ = g_strdup (_tmp1_);
#line 415 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	album = _tmp2_;
#line 416 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp3_ = g_strdup_printf ("<entry xmlns=\"http://www.w3.org/2005/Atom\" xmlns:f=\"yandex:fotki\">" \
"<title>%s</title></entry>", album);
#line 416 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	data = _tmp3_;
#line 418 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp4_ = self->priv->session;
#line 418 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp5_ = self->priv->service_url;
#line 418 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp6_ = publishing_yandex_transaction_new_with_url (_tmp4_, _tmp5_, PUBLISHING_REST_SUPPORT_HTTP_METHOD_POST);
#line 418 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	t = _tmp6_;
#line 420 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_transaction_add_data (t, "application/atom+xml; charset=utf-8; type=entry", data);
#line 422 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (t, PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, PublishingRESTSupportTransaction), "completed", (GCallback) _publishing_yandex_yandex_publisher_album_creation_complete_publishing_rest_support_transaction_completed, self, 0);
#line 423 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (t, PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, PublishingRESTSupportTransaction), "network-error", (GCallback) _publishing_yandex_yandex_publisher_album_creation_error_publishing_rest_support_transaction_network_error, self, 0);
#line 3778 "YandexPublishing.c"
	{
#line 426 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		publishing_rest_support_transaction_execute (G_TYPE_CHECK_INSTANCE_CAST (t, PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, PublishingRESTSupportTransaction), &_inner_error_);
#line 426 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 426 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			if (_inner_error_->domain == SPIT_PUBLISHING_PUBLISHING_ERROR) {
#line 3786 "YandexPublishing.c"
				goto __catch36_spit_publishing_publishing_error;
			}
#line 426 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_publishing_rest_support_transaction_unref0 (t);
#line 426 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_g_free0 (data);
#line 426 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_g_free0 (album);
#line 426 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 426 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_clear_error (&_inner_error_);
#line 426 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			return;
#line 3801 "YandexPublishing.c"
		}
	}
	goto __finally36;
	__catch36_spit_publishing_publishing_error:
	{
		GError* err = NULL;
		SpitPublishingPluginHost* _tmp7_;
		GError* _tmp8_;
#line 425 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		err = _inner_error_;
#line 425 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_inner_error_ = NULL;
#line 428 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp7_ = self->priv->host;
#line 428 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp8_ = err;
#line 428 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		spit_publishing_plugin_host_post_error (_tmp7_, _tmp8_);
#line 425 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_error_free0 (err);
#line 3822 "YandexPublishing.c"
	}
	__finally36:
#line 425 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 425 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_publishing_rest_support_transaction_unref0 (t);
#line 425 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_free0 (data);
#line 425 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_free0 (album);
#line 425 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 425 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_clear_error (&_inner_error_);
#line 425 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		return;
#line 3839 "YandexPublishing.c"
	}
#line 414 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_publishing_rest_support_transaction_unref0 (t);
#line 414 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (data);
#line 414 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (album);
#line 3847 "YandexPublishing.c"
}


static void
_publishing_yandex_yandex_publisher_on_upload_complete_publishing_rest_support_batch_uploader_upload_complete (PublishingRESTSupportBatchUploader* _sender,
                                                                                                               gint num_photos_published,
                                                                                                               gpointer self)
{
#line 433 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_yandex_publisher_on_upload_complete ((PublishingYandexYandexPublisher*) self, _sender, num_photos_published);
#line 3858 "YandexPublishing.c"
}


static void
_publishing_yandex_yandex_publisher_on_upload_error_publishing_rest_support_batch_uploader_upload_error (PublishingRESTSupportBatchUploader* _sender,
                                                                                                         GError* err,
                                                                                                         gpointer self)
{
#line 434 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_yandex_publisher_on_upload_error ((PublishingYandexYandexPublisher*) self, _sender, err);
#line 3869 "YandexPublishing.c"
}


static void
publishing_yandex_yandex_publisher_on_upload_complete (PublishingYandexYandexPublisher* self,
                                                       PublishingRESTSupportBatchUploader* uploader,
                                                       gint num_published)
{
	guint _tmp0_;
	guint _tmp1_;
	SpitPublishingPluginHost* _tmp5_;
	SpitPublishingPluginHost* _tmp6_;
#line 432 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self));
#line 432 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_REST_SUPPORT_IS_BATCH_UPLOADER (uploader));
#line 433 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_parse_name ("upload-complete", PUBLISHING_REST_SUPPORT_TYPE_BATCH_UPLOADER, &_tmp0_, NULL, FALSE);
#line 433 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_handlers_disconnect_matched (uploader, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp0_, 0, NULL, (GCallback) _publishing_yandex_yandex_publisher_on_upload_complete_publishing_rest_support_batch_uploader_upload_complete, self);
#line 434 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_parse_name ("upload-error", PUBLISHING_REST_SUPPORT_TYPE_BATCH_UPLOADER, &_tmp1_, NULL, FALSE);
#line 434 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_handlers_disconnect_matched (uploader, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp1_, 0, NULL, (GCallback) _publishing_yandex_yandex_publisher_on_upload_error_publishing_rest_support_batch_uploader_upload_error, self);
#line 436 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (num_published == 0) {
#line 3896 "YandexPublishing.c"
		SpitPublishingPluginHost* _tmp2_;
		GError* _tmp3_;
		GError* _tmp4_;
#line 437 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp2_ = self->priv->host;
#line 437 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp3_ = g_error_new_literal (SPIT_PUBLISHING_PUBLISHING_ERROR, SPIT_PUBLISHING_PUBLISHING_ERROR_LOCAL_FILE_ERROR, "");
#line 437 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp4_ = _tmp3_;
#line 437 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		spit_publishing_plugin_host_post_error (_tmp2_, _tmp4_);
#line 437 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_error_free0 (_tmp4_);
#line 3910 "YandexPublishing.c"
	}
#line 439 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp5_ = self->priv->host;
#line 439 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	spit_publishing_plugin_host_set_service_locked (_tmp5_, FALSE);
#line 441 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp6_ = self->priv->host;
#line 441 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	spit_publishing_plugin_host_install_success_pane (_tmp6_);
#line 3920 "YandexPublishing.c"
}


static void
publishing_yandex_yandex_publisher_on_upload_error (PublishingYandexYandexPublisher* self,
                                                    PublishingRESTSupportBatchUploader* uploader,
                                                    GError* err)
{
	guint _tmp0_;
	guint _tmp1_;
	const gchar* _tmp2_;
#line 444 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self));
#line 444 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_REST_SUPPORT_IS_BATCH_UPLOADER (uploader));
#line 445 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_parse_name ("upload-complete", PUBLISHING_REST_SUPPORT_TYPE_BATCH_UPLOADER, &_tmp0_, NULL, FALSE);
#line 445 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_handlers_disconnect_matched (uploader, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp0_, 0, NULL, (GCallback) _publishing_yandex_yandex_publisher_on_upload_complete_publishing_rest_support_batch_uploader_upload_complete, self);
#line 446 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_parse_name ("upload-error", PUBLISHING_REST_SUPPORT_TYPE_BATCH_UPLOADER, &_tmp1_, NULL, FALSE);
#line 446 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_handlers_disconnect_matched (uploader, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp1_, 0, NULL, (GCallback) _publishing_yandex_yandex_publisher_on_upload_error_publishing_rest_support_batch_uploader_upload_error, self);
#line 448 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp2_ = err->message;
#line 448 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_warning ("YandexPublishing.vala:448: Photo upload error: %s", _tmp2_);
#line 3948 "YandexPublishing.c"
}


static void
publishing_yandex_yandex_publisher_on_upload_status_updated (PublishingYandexYandexPublisher* self,
                                                             gint file_number,
                                                             gdouble completed_fraction)
{
	SpitPublishingProgressCallback _tmp0_;
	void* _tmp0__target;
	SpitPublishingProgressCallback _tmp1_;
	void* _tmp1__target;
#line 451 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self));
#line 452 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_debug ("YandexPublishing.vala:452: EVENT: uploader reports upload %.2f percent" \
" complete.", 100.0 * completed_fraction);
#line 454 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = self->priv->progress_reporter;
#line 454 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0__target = self->priv->progress_reporter_target;
#line 454 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_vala_assert (_tmp0_ != NULL, "progress_reporter != null");
#line 456 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp1_ = self->priv->progress_reporter;
#line 456 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp1__target = self->priv->progress_reporter_target;
#line 456 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp1_ (file_number, completed_fraction, _tmp1__target);
#line 3977 "YandexPublishing.c"
}


static void
_publishing_yandex_yandex_publisher_on_upload_status_updated_spit_publishing_progress_callback (gint file_number,
                                                                                                gdouble fraction_complete,
                                                                                                gpointer self)
{
#line 470 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_yandex_publisher_on_upload_status_updated ((PublishingYandexYandexPublisher*) self, file_number, fraction_complete);
#line 3988 "YandexPublishing.c"
}


static void
publishing_yandex_yandex_publisher_start_upload (PublishingYandexYandexPublisher* self)
{
	SpitPublishingPluginHost* _tmp0_;
	SpitPublishingPluginHost* _tmp1_;
	void* _tmp2_;
	GDestroyNotify _tmp3_;
	SpitPublishingProgressCallback _tmp4_;
	PublishingYandexPublishOptions* _tmp5_;
	GeeHashMap* _tmp6_;
	PublishingYandexPublishOptions* _tmp7_;
	const gchar* _tmp8_;
	gpointer _tmp9_;
	SpitPublishingPublishable** publishables = NULL;
	SpitPublishingPluginHost* _tmp10_;
	gint _tmp11_;
	SpitPublishingPublishable** _tmp12_;
	gint publishables_length1;
	gint _publishables_size_;
	PublishingYandexUploader* uploader = NULL;
	PublishingYandexSession* _tmp13_;
	PublishingYandexPublishOptions* _tmp14_;
	PublishingYandexUploader* _tmp15_;
#line 459 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self));
#line 460 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = self->priv->host;
#line 460 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	spit_publishing_plugin_host_set_service_locked (_tmp0_, TRUE);
#line 462 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp1_ = self->priv->host;
#line 462 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp4_ = spit_publishing_plugin_host_serialize_publishables (_tmp1_, 0, FALSE, &_tmp2_, &_tmp3_);
#line 462 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	(self->priv->progress_reporter_target_destroy_notify == NULL) ? NULL : (self->priv->progress_reporter_target_destroy_notify (self->priv->progress_reporter_target), NULL);
#line 462 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->progress_reporter = NULL;
#line 462 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->progress_reporter_target = NULL;
#line 462 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->progress_reporter_target_destroy_notify = NULL;
#line 462 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->progress_reporter = _tmp4_;
#line 462 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->progress_reporter_target = _tmp2_;
#line 462 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->progress_reporter_target_destroy_notify = _tmp3_;
#line 464 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp5_ = self->priv->options;
#line 464 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp6_ = self->priv->album_list;
#line 464 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp7_ = self->priv->options;
#line 464 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp8_ = _tmp7_->destination_album;
#line 464 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp9_ = gee_abstract_map_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp8_);
#line 464 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (_tmp5_->destination_album_url);
#line 464 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp5_->destination_album_url = (gchar*) _tmp9_;
#line 465 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp10_ = self->priv->host;
#line 465 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp12_ = spit_publishing_plugin_host_get_publishables (_tmp10_, &_tmp11_);
#line 465 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishables = _tmp12_;
#line 465 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishables_length1 = _tmp11_;
#line 465 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_publishables_size_ = publishables_length1;
#line 466 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp13_ = self->priv->session;
#line 466 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp14_ = self->priv->options;
#line 466 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp15_ = publishing_yandex_uploader_new (_tmp13_, _tmp14_, publishables, publishables_length1);
#line 466 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	uploader = _tmp15_;
#line 468 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (uploader, PUBLISHING_REST_SUPPORT_TYPE_BATCH_UPLOADER, PublishingRESTSupportBatchUploader), "upload-complete", (GCallback) _publishing_yandex_yandex_publisher_on_upload_complete_publishing_rest_support_batch_uploader_upload_complete, self, 0);
#line 469 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (uploader, PUBLISHING_REST_SUPPORT_TYPE_BATCH_UPLOADER, PublishingRESTSupportBatchUploader), "upload-error", (GCallback) _publishing_yandex_yandex_publisher_on_upload_error_publishing_rest_support_batch_uploader_upload_error, self, 0);
#line 470 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_rest_support_batch_uploader_upload (G_TYPE_CHECK_INSTANCE_CAST (uploader, PUBLISHING_REST_SUPPORT_TYPE_BATCH_UPLOADER, PublishingRESTSupportBatchUploader), _publishing_yandex_yandex_publisher_on_upload_status_updated_spit_publishing_progress_callback, self);
#line 459 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_publishing_rest_support_batch_uploader_unref0 (uploader);
#line 459 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishables = (_vala_array_free (publishables, publishables_length1, (GDestroyNotify) g_object_unref), NULL);
#line 4081 "YandexPublishing.c"
}


static void
publishing_yandex_yandex_publisher_on_logout (PublishingYandexYandexPublisher* self)
{
	PublishingYandexSession* _tmp0_;
#line 473 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self));
#line 474 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (!spit_publishing_publisher_is_running (G_TYPE_CHECK_INSTANCE_CAST (self, SPIT_PUBLISHING_TYPE_PUBLISHER, SpitPublishingPublisher))) {
#line 475 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		return;
#line 4095 "YandexPublishing.c"
	}
#line 477 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = self->priv->session;
#line 477 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_session_deauthenticate (_tmp0_);
#line 478 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_yandex_publisher_invalidate_persistent_session (self);
#line 480 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->running = FALSE;
#line 482 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	spit_publishing_publisher_start (G_TYPE_CHECK_INSTANCE_CAST (self, SPIT_PUBLISHING_TYPE_PUBLISHER, SpitPublishingPublisher));
#line 4107 "YandexPublishing.c"
}


static void
publishing_yandex_yandex_publisher_on_publish (PublishingYandexYandexPublisher* self)
{
	PublishingYandexPublishOptions* _tmp0_;
	const gchar* _tmp1_;
	GeeHashMap* _tmp2_;
	PublishingYandexPublishOptions* _tmp3_;
	const gchar* _tmp4_;
	gpointer _tmp5_;
	gchar* _tmp6_;
	GeeHashMap* _tmp7_;
	PublishingYandexPublishOptions* _tmp8_;
	const gchar* _tmp9_;
	gpointer _tmp10_;
	gchar* _tmp11_;
	gboolean _tmp12_;
#line 485 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self));
#line 486 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = self->priv->options;
#line 486 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp1_ = _tmp0_->destination_album;
#line 486 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp2_ = self->priv->album_list;
#line 486 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp3_ = self->priv->options;
#line 486 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp4_ = _tmp3_->destination_album;
#line 486 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp5_ = gee_abstract_map_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp4_);
#line 486 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp6_ = (gchar*) _tmp5_;
#line 486 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_debug ("YandexPublishing.vala:486: Going to publish to '%s' : %s", _tmp1_, _tmp6_);
#line 486 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (_tmp6_);
#line 487 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp7_ = self->priv->album_list;
#line 487 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp8_ = self->priv->options;
#line 487 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp9_ = _tmp8_->destination_album;
#line 487 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp10_ = gee_abstract_map_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp9_);
#line 487 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp11_ = (gchar*) _tmp10_;
#line 487 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp12_ = _tmp11_ == NULL;
#line 487 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (_tmp11_);
#line 487 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (_tmp12_) {
#line 488 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		publishing_yandex_yandex_publisher_create_destination_album (self);
#line 4165 "YandexPublishing.c"
	} else {
#line 490 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		publishing_yandex_yandex_publisher_start_upload (self);
#line 4169 "YandexPublishing.c"
	}
}


static void
_publishing_yandex_yandex_publisher_service_get_album_list_complete_publishing_rest_support_transaction_completed (PublishingRESTSupportTransaction* _sender,
                                                                                                                   gpointer self)
{
#line 494 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_yandex_publisher_service_get_album_list_complete ((PublishingYandexYandexPublisher*) self, _sender);
#line 4180 "YandexPublishing.c"
}


static void
_publishing_yandex_yandex_publisher_service_get_album_list_error_publishing_rest_support_transaction_network_error (PublishingRESTSupportTransaction* _sender,
                                                                                                                    GError* err,
                                                                                                                    gpointer self)
{
#line 495 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_yandex_publisher_service_get_album_list_error ((PublishingYandexYandexPublisher*) self, _sender, err);
#line 4191 "YandexPublishing.c"
}


void
publishing_yandex_yandex_publisher_service_get_album_list_error (PublishingYandexYandexPublisher* self,
                                                                 PublishingRESTSupportTransaction* t,
                                                                 GError* err)
{
	guint _tmp0_;
	guint _tmp1_;
	const gchar* _tmp2_;
#line 493 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self));
#line 493 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_REST_SUPPORT_IS_TRANSACTION (t));
#line 494 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_parse_name ("completed", PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, &_tmp0_, NULL, FALSE);
#line 494 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_handlers_disconnect_matched (t, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp0_, 0, NULL, (GCallback) _publishing_yandex_yandex_publisher_service_get_album_list_complete_publishing_rest_support_transaction_completed, self);
#line 495 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_parse_name ("network-error", PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, &_tmp1_, NULL, FALSE);
#line 495 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_handlers_disconnect_matched (t, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp1_, 0, NULL, (GCallback) _publishing_yandex_yandex_publisher_service_get_album_list_error_publishing_rest_support_transaction_network_error, self);
#line 497 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_yandex_publisher_invalidate_persistent_session (self);
#line 498 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp2_ = err->message;
#line 498 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_warning ("YandexPublishing.vala:498: Failed to get album list: %s", _tmp2_);
#line 4221 "YandexPublishing.c"
}


static void
_publishing_yandex_yandex_publisher_on_publish_publishing_yandex_publishing_options_pane_publish (PublishingYandexPublishingOptionsPane* _sender,
                                                                                                  gpointer self)
{
#line 515 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_yandex_publisher_on_publish ((PublishingYandexYandexPublisher*) self);
#line 4231 "YandexPublishing.c"
}


static void
_publishing_yandex_yandex_publisher_on_logout_publishing_yandex_publishing_options_pane_logout (PublishingYandexPublishingOptionsPane* _sender,
                                                                                                gpointer self)
{
#line 516 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_yandex_publisher_on_logout ((PublishingYandexYandexPublisher*) self);
#line 4241 "YandexPublishing.c"
}


void
publishing_yandex_yandex_publisher_service_get_album_list_complete (PublishingYandexYandexPublisher* self,
                                                                    PublishingRESTSupportTransaction* t)
{
	guint _tmp0_;
	guint _tmp1_;
	gchar* _tmp2_;
	gchar* _tmp3_;
	PublishingYandexPublishingOptionsPane* publishing_options_pane = NULL;
	PublishingYandexPublishOptions* _tmp8_;
	GeeHashMap* _tmp9_;
	SpitPublishingPluginHost* _tmp10_;
	PublishingYandexPublishingOptionsPane* _tmp11_;
	SpitPublishingPluginHost* _tmp12_;
	GError * _inner_error_ = NULL;
#line 501 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self));
#line 501 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_REST_SUPPORT_IS_TRANSACTION (t));
#line 502 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_parse_name ("completed", PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, &_tmp0_, NULL, FALSE);
#line 502 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_handlers_disconnect_matched (t, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp0_, 0, NULL, (GCallback) _publishing_yandex_yandex_publisher_service_get_album_list_complete_publishing_rest_support_transaction_completed, self);
#line 503 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_parse_name ("network-error", PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, &_tmp1_, NULL, FALSE);
#line 503 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_handlers_disconnect_matched (t, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp1_, 0, NULL, (GCallback) _publishing_yandex_yandex_publisher_service_get_album_list_error_publishing_rest_support_transaction_network_error, self);
#line 505 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp2_ = publishing_rest_support_transaction_get_response (t);
#line 505 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp3_ = _tmp2_;
#line 505 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_debug ("YandexPublishing.vala:505: service_get_album_list_complete: %s", _tmp3_);
#line 505 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (_tmp3_);
#line 4280 "YandexPublishing.c"
	{
		gchar* _tmp4_;
		gchar* _tmp5_;
#line 507 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp4_ = publishing_rest_support_transaction_get_response (t);
#line 507 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp5_ = _tmp4_;
#line 507 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		publishing_yandex_yandex_publisher_parse_album_list (self, _tmp5_, &_inner_error_);
#line 507 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_free0 (_tmp5_);
#line 507 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 507 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			if (_inner_error_->domain == SPIT_PUBLISHING_PUBLISHING_ERROR) {
#line 4296 "YandexPublishing.c"
				goto __catch37_spit_publishing_publishing_error;
			}
#line 507 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 507 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_clear_error (&_inner_error_);
#line 507 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			return;
#line 4305 "YandexPublishing.c"
		}
	}
	goto __finally37;
	__catch37_spit_publishing_publishing_error:
	{
		GError* err = NULL;
		SpitPublishingPluginHost* _tmp6_;
		GError* _tmp7_;
#line 506 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		err = _inner_error_;
#line 506 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_inner_error_ = NULL;
#line 509 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp6_ = self->priv->host;
#line 509 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp7_ = err;
#line 509 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		spit_publishing_plugin_host_post_error (_tmp6_, _tmp7_);
#line 506 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_error_free0 (err);
#line 4326 "YandexPublishing.c"
	}
	__finally37:
#line 506 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 506 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 506 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_clear_error (&_inner_error_);
#line 506 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		return;
#line 4337 "YandexPublishing.c"
	}
#line 512 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp8_ = self->priv->options;
#line 512 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp9_ = self->priv->album_list;
#line 512 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp10_ = self->priv->host;
#line 512 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp11_ = publishing_yandex_publishing_options_pane_new (_tmp8_, _tmp9_, _tmp10_);
#line 512 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_options_pane = _tmp11_;
#line 515 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_connect_object (publishing_options_pane, "publish", (GCallback) _publishing_yandex_yandex_publisher_on_publish_publishing_yandex_publishing_options_pane_publish, self, 0);
#line 516 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_connect_object (publishing_options_pane, "logout", (GCallback) _publishing_yandex_yandex_publisher_on_logout_publishing_yandex_publishing_options_pane_logout, self, 0);
#line 517 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp12_ = self->priv->host;
#line 517 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	spit_publishing_plugin_host_install_dialog_pane (_tmp12_, G_TYPE_CHECK_INSTANCE_CAST (publishing_options_pane, SPIT_PUBLISHING_TYPE_DIALOG_PANE, SpitPublishingDialogPane), SPIT_PUBLISHING_PLUGIN_HOST_BUTTON_MODE_CANCEL);
#line 501 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_object_unref0 (publishing_options_pane);
#line 4359 "YandexPublishing.c"
}


void
publishing_yandex_yandex_publisher_service_get_album_list (PublishingYandexYandexPublisher* self,
                                                           const gchar* url)
{
	gchar* _tmp0_;
	PublishingYandexTransaction* t = NULL;
	PublishingYandexSession* _tmp1_;
	PublishingYandexTransaction* _tmp2_;
	GError * _inner_error_ = NULL;
#line 520 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self));
#line 520 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (url != NULL);
#line 521 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = g_strdup (url);
#line 521 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (self->priv->service_url);
#line 521 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->service_url = _tmp0_;
#line 523 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp1_ = self->priv->session;
#line 523 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp2_ = publishing_yandex_transaction_new_with_url (_tmp1_, url, PUBLISHING_REST_SUPPORT_HTTP_METHOD_GET);
#line 523 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	t = _tmp2_;
#line 524 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (t, PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, PublishingRESTSupportTransaction), "completed", (GCallback) _publishing_yandex_yandex_publisher_service_get_album_list_complete_publishing_rest_support_transaction_completed, self, 0);
#line 525 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (t, PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, PublishingRESTSupportTransaction), "network-error", (GCallback) _publishing_yandex_yandex_publisher_service_get_album_list_error_publishing_rest_support_transaction_network_error, self, 0);
#line 4392 "YandexPublishing.c"
	{
#line 528 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		publishing_rest_support_transaction_execute (G_TYPE_CHECK_INSTANCE_CAST (t, PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, PublishingRESTSupportTransaction), &_inner_error_);
#line 528 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 528 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			if (_inner_error_->domain == SPIT_PUBLISHING_PUBLISHING_ERROR) {
#line 4400 "YandexPublishing.c"
				goto __catch38_spit_publishing_publishing_error;
			}
#line 528 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_publishing_rest_support_transaction_unref0 (t);
#line 528 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 528 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_clear_error (&_inner_error_);
#line 528 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			return;
#line 4411 "YandexPublishing.c"
		}
	}
	goto __finally38;
	__catch38_spit_publishing_publishing_error:
	{
		GError* err = NULL;
		SpitPublishingPluginHost* _tmp3_;
		GError* _tmp4_;
#line 527 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		err = _inner_error_;
#line 527 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_inner_error_ = NULL;
#line 530 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp3_ = self->priv->host;
#line 530 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp4_ = err;
#line 530 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		spit_publishing_plugin_host_post_error (_tmp3_, _tmp4_);
#line 527 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_error_free0 (err);
#line 4432 "YandexPublishing.c"
	}
	__finally38:
#line 527 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 527 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_publishing_rest_support_transaction_unref0 (t);
#line 527 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 527 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_clear_error (&_inner_error_);
#line 527 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		return;
#line 4445 "YandexPublishing.c"
	}
#line 520 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_publishing_rest_support_transaction_unref0 (t);
#line 4449 "YandexPublishing.c"
}


static void
_publishing_yandex_yandex_publisher_fetch_account_complete_publishing_rest_support_transaction_completed (PublishingRESTSupportTransaction* _sender,
                                                                                                          gpointer self)
{
#line 535 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_yandex_publisher_fetch_account_complete ((PublishingYandexYandexPublisher*) self, _sender);
#line 4459 "YandexPublishing.c"
}


static void
_publishing_yandex_yandex_publisher_fetch_account_error_publishing_rest_support_transaction_network_error (PublishingRESTSupportTransaction* _sender,
                                                                                                           GError* err,
                                                                                                           gpointer self)
{
#line 536 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_yandex_publisher_fetch_account_error ((PublishingYandexYandexPublisher*) self, _sender, err);
#line 4470 "YandexPublishing.c"
}


void
publishing_yandex_yandex_publisher_fetch_account_error (PublishingYandexYandexPublisher* self,
                                                        PublishingRESTSupportTransaction* t,
                                                        GError* err)
{
	guint _tmp0_;
	guint _tmp1_;
	const gchar* _tmp2_;
#line 534 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self));
#line 534 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_REST_SUPPORT_IS_TRANSACTION (t));
#line 535 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_parse_name ("completed", PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, &_tmp0_, NULL, FALSE);
#line 535 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_handlers_disconnect_matched (t, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp0_, 0, NULL, (GCallback) _publishing_yandex_yandex_publisher_fetch_account_complete_publishing_rest_support_transaction_completed, self);
#line 536 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_parse_name ("network-error", PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, &_tmp1_, NULL, FALSE);
#line 536 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_handlers_disconnect_matched (t, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp1_, 0, NULL, (GCallback) _publishing_yandex_yandex_publisher_fetch_account_error_publishing_rest_support_transaction_network_error, self);
#line 538 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp2_ = err->message;
#line 538 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_warning ("YandexPublishing.vala:538: Failed to fetch account info: %s", _tmp2_);
#line 4498 "YandexPublishing.c"
}


void
publishing_yandex_yandex_publisher_fetch_account_complete (PublishingYandexYandexPublisher* self,
                                                           PublishingRESTSupportTransaction* t)
{
	guint _tmp0_;
	guint _tmp1_;
	gchar* _tmp2_;
	gchar* _tmp3_;
	GError * _inner_error_ = NULL;
#line 541 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self));
#line 541 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_REST_SUPPORT_IS_TRANSACTION (t));
#line 542 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_parse_name ("completed", PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, &_tmp0_, NULL, FALSE);
#line 542 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_handlers_disconnect_matched (t, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp0_, 0, NULL, (GCallback) _publishing_yandex_yandex_publisher_fetch_account_complete_publishing_rest_support_transaction_completed, self);
#line 543 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_parse_name ("network-error", PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, &_tmp1_, NULL, FALSE);
#line 543 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_handlers_disconnect_matched (t, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp1_, 0, NULL, (GCallback) _publishing_yandex_yandex_publisher_fetch_account_error_publishing_rest_support_transaction_network_error, self);
#line 545 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp2_ = publishing_rest_support_transaction_get_response (t);
#line 545 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp3_ = _tmp2_;
#line 545 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_debug ("YandexPublishing.vala:545: account info: %s", _tmp3_);
#line 545 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (_tmp3_);
#line 4531 "YandexPublishing.c"
	{
		PublishingRESTSupportXmlDocument* doc = NULL;
		gchar* _tmp4_;
		gchar* _tmp5_;
		PublishingRESTSupportXmlDocument* _tmp6_;
		PublishingRESTSupportXmlDocument* _tmp7_;
		xmlNode* root = NULL;
		PublishingRESTSupportXmlDocument* _tmp8_;
		xmlNode* _tmp9_;
#line 547 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp4_ = publishing_rest_support_transaction_get_response (t);
#line 547 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp5_ = _tmp4_;
#line 547 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp6_ = publishing_rest_support_xml_document_parse_string (_tmp5_, _publishing_yandex_yandex_publisher_check_response_publishing_rest_support_xml_document_check_for_error_response, self, &_inner_error_);
#line 547 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp7_ = _tmp6_;
#line 547 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_free0 (_tmp5_);
#line 547 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		doc = _tmp7_;
#line 547 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 547 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			if (_inner_error_->domain == SPIT_PUBLISHING_PUBLISHING_ERROR) {
#line 4557 "YandexPublishing.c"
				goto __catch39_spit_publishing_publishing_error;
			}
#line 547 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 547 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_clear_error (&_inner_error_);
#line 547 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			return;
#line 4566 "YandexPublishing.c"
		}
#line 548 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp8_ = doc;
#line 548 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp9_ = publishing_rest_support_xml_document_get_root_node (_tmp8_);
#line 548 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		root = _tmp9_;
#line 4574 "YandexPublishing.c"
		{
			xmlNode* work = NULL;
			xmlNode* _tmp10_;
			xmlNode* _tmp11_;
#line 550 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_tmp10_ = root;
#line 550 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_tmp11_ = _tmp10_->children;
#line 550 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			work = _tmp11_;
#line 4585 "YandexPublishing.c"
			{
				gboolean _tmp12_ = FALSE;
#line 550 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				_tmp12_ = TRUE;
#line 550 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
				while (TRUE) {
#line 4592 "YandexPublishing.c"
					xmlNode* _tmp15_;
					xmlNode* _tmp16_;
					const gchar* _tmp17_;
#line 550 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					if (!_tmp12_) {
#line 4598 "YandexPublishing.c"
						xmlNode* _tmp13_;
						xmlNode* _tmp14_;
#line 550 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
						_tmp13_ = work;
#line 550 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
						_tmp14_ = _tmp13_->next;
#line 550 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
						work = _tmp14_;
#line 4607 "YandexPublishing.c"
					}
#line 550 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp12_ = FALSE;
#line 550 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp15_ = work;
#line 550 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					if (!(_tmp15_ != NULL)) {
#line 550 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
						break;
#line 4617 "YandexPublishing.c"
					}
#line 551 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp16_ = work;
#line 551 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					_tmp17_ = _tmp16_->name;
#line 551 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
					if (g_strcmp0 (_tmp17_, "workspace") != 0) {
#line 552 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
						continue;
#line 4627 "YandexPublishing.c"
					}
					{
						xmlNode* c = NULL;
						xmlNode* _tmp18_;
						xmlNode* _tmp19_;
#line 553 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
						_tmp18_ = work;
#line 553 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
						_tmp19_ = _tmp18_->children;
#line 553 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
						c = _tmp19_;
#line 4639 "YandexPublishing.c"
						{
							gboolean _tmp20_ = FALSE;
#line 553 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
							_tmp20_ = TRUE;
#line 553 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
							while (TRUE) {
#line 4646 "YandexPublishing.c"
								xmlNode* _tmp23_;
								xmlNode* _tmp24_;
								const gchar* _tmp25_;
								xmlNode* _tmp26_;
								gchar* _tmp27_;
								gchar* _tmp28_;
								gboolean _tmp29_;
#line 553 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
								if (!_tmp20_) {
#line 4656 "YandexPublishing.c"
									xmlNode* _tmp21_;
									xmlNode* _tmp22_;
#line 553 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
									_tmp21_ = c;
#line 553 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
									_tmp22_ = _tmp21_->next;
#line 553 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
									c = _tmp22_;
#line 4665 "YandexPublishing.c"
								}
#line 553 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
								_tmp20_ = FALSE;
#line 553 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
								_tmp23_ = c;
#line 553 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
								if (!(_tmp23_ != NULL)) {
#line 553 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
									break;
#line 4675 "YandexPublishing.c"
								}
#line 554 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
								_tmp24_ = c;
#line 554 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
								_tmp25_ = _tmp24_->name;
#line 554 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
								if (g_strcmp0 (_tmp25_, "collection") != 0) {
#line 555 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
									continue;
#line 4685 "YandexPublishing.c"
								}
#line 557 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
								_tmp26_ = c;
#line 557 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
								_tmp27_ = (gchar*) xmlGetProp (_tmp26_, (xmlChar*) "id");
#line 557 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
								_tmp28_ = _tmp27_;
#line 557 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
								_tmp29_ = g_strcmp0 (_tmp28_, "album-list") == 0;
#line 557 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
								_g_free0 (_tmp28_);
#line 557 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
								if (_tmp29_) {
#line 4699 "YandexPublishing.c"
									gchar* url = NULL;
									xmlNode* _tmp30_;
									gchar* _tmp31_;
									PublishingYandexSession* _tmp32_;
									gchar* _tmp33_;
									gchar* _tmp34_;
									const gchar* _tmp35_;
#line 558 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
									_tmp30_ = c;
#line 558 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
									_tmp31_ = (gchar*) xmlGetProp (_tmp30_, (xmlChar*) "href");
#line 558 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
									url = _tmp31_;
#line 560 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
									_tmp32_ = self->priv->session;
#line 560 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
									_tmp33_ = publishing_yandex_session_get_auth_token (_tmp32_);
#line 560 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
									_tmp34_ = _tmp33_;
#line 560 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
									publishing_yandex_yandex_publisher_set_persistent_auth_token (self, _tmp34_);
#line 560 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
									_g_free0 (_tmp34_);
#line 561 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
									_tmp35_ = url;
#line 561 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
									publishing_yandex_yandex_publisher_service_get_album_list (self, _tmp35_);
#line 562 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
									_g_free0 (url);
#line 562 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
									break;
#line 4731 "YandexPublishing.c"
								}
							}
						}
					}
				}
			}
		}
#line 546 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_publishing_rest_support_xml_document_unref0 (doc);
#line 4741 "YandexPublishing.c"
	}
	goto __finally39;
	__catch39_spit_publishing_publishing_error:
	{
		GError* err = NULL;
		SpitPublishingPluginHost* _tmp36_;
		GError* _tmp37_;
#line 546 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		err = _inner_error_;
#line 546 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_inner_error_ = NULL;
#line 567 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp36_ = self->priv->host;
#line 567 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp37_ = err;
#line 567 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		spit_publishing_plugin_host_post_error (_tmp36_, _tmp37_);
#line 546 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_error_free0 (err);
#line 4761 "YandexPublishing.c"
	}
	__finally39:
#line 546 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 546 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 546 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_clear_error (&_inner_error_);
#line 546 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		return;
#line 4772 "YandexPublishing.c"
	}
}


void
publishing_yandex_yandex_publisher_fetch_account_information (PublishingYandexYandexPublisher* self,
                                                              const gchar* auth_token)
{
	PublishingYandexSession* _tmp0_;
	PublishingYandexTransaction* t = NULL;
	PublishingYandexSession* _tmp1_;
	PublishingYandexTransaction* _tmp2_;
	GError * _inner_error_ = NULL;
#line 571 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self));
#line 571 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (auth_token != NULL);
#line 572 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = self->priv->session;
#line 572 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_session_set_auth_token (_tmp0_, auth_token);
#line 574 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp1_ = self->priv->session;
#line 574 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp2_ = publishing_yandex_transaction_new_with_url (_tmp1_, "https://api-fotki.yandex.ru/api/me/", PUBLISHING_REST_SUPPORT_HTTP_METHOD_GET);
#line 574 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	t = _tmp2_;
#line 575 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (t, PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, PublishingRESTSupportTransaction), "completed", (GCallback) _publishing_yandex_yandex_publisher_fetch_account_complete_publishing_rest_support_transaction_completed, self, 0);
#line 576 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (t, PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, PublishingRESTSupportTransaction), "network-error", (GCallback) _publishing_yandex_yandex_publisher_fetch_account_error_publishing_rest_support_transaction_network_error, self, 0);
#line 4804 "YandexPublishing.c"
	{
#line 579 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		publishing_rest_support_transaction_execute (G_TYPE_CHECK_INSTANCE_CAST (t, PUBLISHING_REST_SUPPORT_TYPE_TRANSACTION, PublishingRESTSupportTransaction), &_inner_error_);
#line 579 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 579 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			if (_inner_error_->domain == SPIT_PUBLISHING_PUBLISHING_ERROR) {
#line 4812 "YandexPublishing.c"
				goto __catch40_spit_publishing_publishing_error;
			}
#line 579 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			_publishing_rest_support_transaction_unref0 (t);
#line 579 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 579 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			g_clear_error (&_inner_error_);
#line 579 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
			return;
#line 4823 "YandexPublishing.c"
		}
	}
	goto __finally40;
	__catch40_spit_publishing_publishing_error:
	{
		GError* err = NULL;
		SpitPublishingPluginHost* _tmp3_;
		GError* _tmp4_;
#line 578 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		err = _inner_error_;
#line 578 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_inner_error_ = NULL;
#line 581 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp3_ = self->priv->host;
#line 581 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp4_ = err;
#line 581 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		spit_publishing_plugin_host_post_error (_tmp3_, _tmp4_);
#line 578 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_error_free0 (err);
#line 4844 "YandexPublishing.c"
	}
	__finally40:
#line 578 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 578 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_publishing_rest_support_transaction_unref0 (t);
#line 578 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 578 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_clear_error (&_inner_error_);
#line 578 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		return;
#line 4857 "YandexPublishing.c"
	}
#line 571 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_publishing_rest_support_transaction_unref0 (t);
#line 4861 "YandexPublishing.c"
}


static void
publishing_yandex_yandex_publisher_web_auth_login_succeeded (PublishingYandexYandexPublisher* self,
                                                             const gchar* access_token)
{
	SpitPublishingPluginHost* _tmp0_;
	SpitPublishingPluginHost* _tmp1_;
#line 585 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self));
#line 585 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (access_token != NULL);
#line 586 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_debug ("YandexPublishing.vala:586: login succeeded with token %s", access_token);
#line 588 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = self->priv->host;
#line 588 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	spit_publishing_plugin_host_set_service_locked (_tmp0_, TRUE);
#line 589 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp1_ = self->priv->host;
#line 589 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	spit_publishing_plugin_host_install_account_fetch_wait_pane (_tmp1_);
#line 591 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_yandex_publisher_fetch_account_information (self, access_token);
#line 4887 "YandexPublishing.c"
}


static void
publishing_yandex_yandex_publisher_web_auth_login_failed (PublishingYandexYandexPublisher* self)
{
#line 594 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self));
#line 595 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_debug ("YandexPublishing.vala:595: login failed");
#line 4898 "YandexPublishing.c"
}


static void
_publishing_yandex_yandex_publisher_web_auth_login_succeeded_publishing_yandex_web_auth_pane_login_succeeded (PublishingYandexWebAuthPane* _sender,
                                                                                                              const gchar* success_url,
                                                                                                              gpointer self)
{
#line 602 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_yandex_publisher_web_auth_login_succeeded ((PublishingYandexYandexPublisher*) self, success_url);
#line 4909 "YandexPublishing.c"
}


static void
_publishing_yandex_yandex_publisher_web_auth_login_failed_publishing_yandex_web_auth_pane_login_failed (PublishingYandexWebAuthPane* _sender,
                                                                                                        gpointer self)
{
#line 603 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_yandex_publisher_web_auth_login_failed ((PublishingYandexYandexPublisher*) self);
#line 4919 "YandexPublishing.c"
}


static void
publishing_yandex_yandex_publisher_start_web_auth (PublishingYandexYandexPublisher* self)
{
	SpitPublishingPluginHost* _tmp0_;
	gchar* _tmp1_;
	gchar* _tmp2_;
	PublishingYandexWebAuthPane* _tmp3_;
	PublishingYandexWebAuthPane* _tmp4_;
	PublishingYandexWebAuthPane* _tmp5_;
	SpitPublishingPluginHost* _tmp6_;
	PublishingYandexWebAuthPane* _tmp7_;
#line 598 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self));
#line 599 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = self->priv->host;
#line 599 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	spit_publishing_plugin_host_set_service_locked (_tmp0_, FALSE);
#line 601 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp1_ = g_strdup_printf ("https://oauth.yandex.ru/authorize?client_id=%s&response_type=token", PUBLISHING_YANDEX_client_id);
#line 601 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp2_ = _tmp1_;
#line 601 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp3_ = publishing_yandex_web_auth_pane_new (_tmp2_);
#line 601 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_object_unref0 (self->priv->web_auth_pane);
#line 601 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->web_auth_pane = _tmp3_;
#line 601 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (_tmp2_);
#line 602 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp4_ = self->priv->web_auth_pane;
#line 602 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_connect_object (_tmp4_, "login-succeeded", (GCallback) _publishing_yandex_yandex_publisher_web_auth_login_succeeded_publishing_yandex_web_auth_pane_login_succeeded, self, 0);
#line 603 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp5_ = self->priv->web_auth_pane;
#line 603 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_signal_connect_object (_tmp5_, "login-failed", (GCallback) _publishing_yandex_yandex_publisher_web_auth_login_failed_publishing_yandex_web_auth_pane_login_failed, self, 0);
#line 605 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp6_ = self->priv->host;
#line 605 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp7_ = self->priv->web_auth_pane;
#line 605 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	spit_publishing_plugin_host_install_dialog_pane (_tmp6_, G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, SPIT_PUBLISHING_TYPE_DIALOG_PANE, SpitPublishingDialogPane), SPIT_PUBLISHING_PLUGIN_HOST_BUTTON_MODE_CANCEL);
#line 4966 "YandexPublishing.c"
}


static void
_publishing_yandex_yandex_publisher_start_web_auth_spit_publishing_login_callback (gpointer self)
{
#line 609 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_yandex_publisher_start_web_auth ((PublishingYandexYandexPublisher*) self);
#line 4975 "YandexPublishing.c"
}


static void
publishing_yandex_yandex_publisher_show_welcome_page (PublishingYandexYandexPublisher* self)
{
	SpitPublishingPluginHost* _tmp0_;
#line 608 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_return_if_fail (PUBLISHING_YANDEX_IS_YANDEX_PUBLISHER (self));
#line 609 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = self->priv->host;
#line 609 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	spit_publishing_plugin_host_install_welcome_pane (_tmp0_, _ ("You are not currently logged into Yandex.Fotki."), _publishing_yandex_yandex_publisher_start_web_auth_spit_publishing_login_callback, self);
#line 4989 "YandexPublishing.c"
}


static void
publishing_yandex_yandex_publisher_real_start (SpitPublishingPublisher* base)
{
	PublishingYandexYandexPublisher * self;
	SpitPublishingPluginHost* _tmp0_;
#line 613 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, PUBLISHING_YANDEX_TYPE_YANDEX_PUBLISHER, PublishingYandexYandexPublisher);
#line 614 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (spit_publishing_publisher_is_running (G_TYPE_CHECK_INSTANCE_CAST (self, SPIT_PUBLISHING_TYPE_PUBLISHER, SpitPublishingPublisher))) {
#line 615 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		return;
#line 5004 "YandexPublishing.c"
	}
#line 617 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_tmp0_ = self->priv->host;
#line 617 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (_tmp0_ == NULL) {
#line 618 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		g_error ("YandexPublishing.vala:618: YandexPublisher: start( ): can't start; thi" \
"s publisher is not restartable.");
#line 5012 "YandexPublishing.c"
	}
#line 620 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_debug ("YandexPublishing.vala:620: YandexPublisher: starting interaction.");
#line 622 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->running = TRUE;
#line 624 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	if (publishing_yandex_yandex_publisher_is_persistent_session_available (self)) {
#line 5020 "YandexPublishing.c"
		PublishingYandexSession* _tmp1_;
		gchar* _tmp2_;
		gchar* _tmp3_;
		gchar* _tmp4_;
		gchar* _tmp5_;
#line 625 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp1_ = self->priv->session;
#line 625 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp2_ = publishing_yandex_yandex_publisher_get_persistent_auth_token (self);
#line 625 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp3_ = _tmp2_;
#line 625 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		publishing_yandex_session_set_auth_token (_tmp1_, _tmp3_);
#line 625 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_free0 (_tmp3_);
#line 627 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp4_ = publishing_yandex_yandex_publisher_get_persistent_auth_token (self);
#line 627 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_tmp5_ = _tmp4_;
#line 627 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		publishing_yandex_yandex_publisher_fetch_account_information (self, _tmp5_);
#line 627 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		_g_free0 (_tmp5_);
#line 5044 "YandexPublishing.c"
	} else {
#line 629 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
		publishing_yandex_yandex_publisher_show_welcome_page (self);
#line 5048 "YandexPublishing.c"
	}
}


static void
publishing_yandex_yandex_publisher_real_stop (SpitPublishingPublisher* base)
{
	PublishingYandexYandexPublisher * self;
#line 633 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, PUBLISHING_YANDEX_TYPE_YANDEX_PUBLISHER, PublishingYandexYandexPublisher);
#line 634 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_debug ("YandexPublishing.vala:634: YandexPublisher: stop( ) invoked.");
#line 636 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->host = NULL;
#line 637 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->running = FALSE;
#line 5065 "YandexPublishing.c"
}


static void
publishing_yandex_yandex_publisher_class_init (PublishingYandexYandexPublisherClass * klass)
{
#line 298 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_yandex_publisher_parent_class = g_type_class_peek_parent (klass);
#line 298 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	g_type_class_add_private (klass, sizeof (PublishingYandexYandexPublisherPrivate));
#line 298 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	G_OBJECT_CLASS (klass)->finalize = publishing_yandex_yandex_publisher_finalize;
#line 5078 "YandexPublishing.c"
}


static void
publishing_yandex_yandex_publisher_spit_publishing_publisher_interface_init (SpitPublishingPublisherIface * iface)
{
#line 298 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	publishing_yandex_yandex_publisher_spit_publishing_publisher_parent_iface = g_type_interface_peek_parent (iface);
#line 298 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	iface->is_running = (gboolean (*) (SpitPublishingPublisher *)) publishing_yandex_yandex_publisher_real_is_running;
#line 298 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	iface->get_service = (SpitPublishingService* (*) (SpitPublishingPublisher *)) publishing_yandex_yandex_publisher_real_get_service;
#line 298 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	iface->start = (void (*) (SpitPublishingPublisher *)) publishing_yandex_yandex_publisher_real_start;
#line 298 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	iface->stop = (void (*) (SpitPublishingPublisher *)) publishing_yandex_yandex_publisher_real_stop;
#line 5095 "YandexPublishing.c"
}


static void
publishing_yandex_yandex_publisher_instance_init (PublishingYandexYandexPublisher * self)
{
#line 298 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv = PUBLISHING_YANDEX_YANDEX_PUBLISHER_GET_PRIVATE (self);
#line 299 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->host = NULL;
#line 300 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->progress_reporter = NULL;
#line 300 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->progress_reporter_target = self;
#line 300 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->progress_reporter_target_destroy_notify = NULL;
#line 301 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->service = NULL;
#line 303 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->service_url = NULL;
#line 305 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->album_list = NULL;
#line 308 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->running = FALSE;
#line 310 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->web_auth_pane = NULL;
#line 5122 "YandexPublishing.c"
}


static void
publishing_yandex_yandex_publisher_finalize (GObject * obj)
{
	PublishingYandexYandexPublisher * self;
#line 298 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PUBLISHING_YANDEX_TYPE_YANDEX_PUBLISHER, PublishingYandexYandexPublisher);
#line 300 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	(self->priv->progress_reporter_target_destroy_notify == NULL) ? NULL : (self->priv->progress_reporter_target_destroy_notify (self->priv->progress_reporter_target), NULL);
#line 300 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->progress_reporter = NULL;
#line 300 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->progress_reporter_target = NULL;
#line 300 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	self->priv->progress_reporter_target_destroy_notify = NULL;
#line 303 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_free0 (self->priv->service_url);
#line 305 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_object_unref0 (self->priv->album_list);
#line 306 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_publishing_yandex_publish_options_unref0 (self->priv->options);
#line 310 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_g_object_unref0 (self->priv->web_auth_pane);
#line 312 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	_publishing_rest_support_session_unref0 (self->priv->session);
#line 298 "/home/jens/Source/shotwell/plugins/shotwell-publishing-extras/YandexPublishing.vala"
	G_OBJECT_CLASS (publishing_yandex_yandex_publisher_parent_class)->finalize (obj);
#line 5152 "YandexPublishing.c"
}


GType
publishing_yandex_yandex_publisher_get_type (void)
{
	static volatile gsize publishing_yandex_yandex_publisher_type_id__volatile = 0;
	if (g_once_init_enter (&publishing_yandex_yandex_publisher_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (PublishingYandexYandexPublisherClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) publishing_yandex_yandex_publisher_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PublishingYandexYandexPublisher), 0, (GInstanceInitFunc) publishing_yandex_yandex_publisher_instance_init, NULL };
		static const GInterfaceInfo spit_publishing_publisher_info = { (GInterfaceInitFunc) publishing_yandex_yandex_publisher_spit_publishing_publisher_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
		GType publishing_yandex_yandex_publisher_type_id;
		publishing_yandex_yandex_publisher_type_id = g_type_register_static (G_TYPE_OBJECT, "PublishingYandexYandexPublisher", &g_define_type_info, 0);
		g_type_add_interface_static (publishing_yandex_yandex_publisher_type_id, SPIT_PUBLISHING_TYPE_PUBLISHER, &spit_publishing_publisher_info);
		g_once_init_leave (&publishing_yandex_yandex_publisher_type_id__volatile, publishing_yandex_yandex_publisher_type_id);
	}
	return publishing_yandex_yandex_publisher_type_id__volatile;
}


static void
_vala_array_destroy (gpointer array,
                     gint array_length,
                     GDestroyNotify destroy_func)
{
	if ((array != NULL) && (destroy_func != NULL)) {
		int i;
		for (i = 0; i < array_length; i = i + 1) {
			if (((gpointer*) array)[i] != NULL) {
				destroy_func (((gpointer*) array)[i]);
			}
		}
	}
}


static void
_vala_array_free (gpointer array,
                  gint array_length,
                  GDestroyNotify destroy_func)
{
	_vala_array_destroy (array, array_length, destroy_func);
	g_free (array);
}


static gint
_vala_array_length (gpointer array)
{
	int length;
	length = 0;
	if (array) {
		while (((gpointer*) array)[length]) {
			length++;
		}
	}
	return length;
}



