/* rygel-external-interfaces.c generated by valac 0.17.4.16-52707, the Vala compiler
 * generated from rygel-external-interfaces.vala, do not modify */

/*
 * Copyright (C) 2009,2010 Nokia Corporation.
 *
 * Author: Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
 *                               <zeeshan.ali@nokia.com>
 *
 * This file is part of Rygel.
 *
 * Rygel is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 *
 * Rygel is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with this program; if not, write to the Free Software Foundation,
 * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
 */

#include <glib.h>
#include <glib-object.h>
#include <gio/gio.h>
#include <stdlib.h>
#include <string.h>


#define RYGEL_EXTERNAL_TYPE_MEDIA_OBJECT_PROXY (rygel_external_media_object_proxy_get_type ())
#define RYGEL_EXTERNAL_MEDIA_OBJECT_PROXY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), RYGEL_EXTERNAL_TYPE_MEDIA_OBJECT_PROXY, RygelExternalMediaObjectProxy))
#define RYGEL_EXTERNAL_IS_MEDIA_OBJECT_PROXY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), RYGEL_EXTERNAL_TYPE_MEDIA_OBJECT_PROXY))
#define RYGEL_EXTERNAL_MEDIA_OBJECT_PROXY_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), RYGEL_EXTERNAL_TYPE_MEDIA_OBJECT_PROXY, RygelExternalMediaObjectProxyIface))

typedef struct _RygelExternalMediaObjectProxy RygelExternalMediaObjectProxy;
typedef struct _RygelExternalMediaObjectProxyIface RygelExternalMediaObjectProxyIface;

#define RYGEL_EXTERNAL_TYPE_MEDIA_OBJECT_PROXY_PROXY (rygel_external_media_object_proxy_proxy_get_type ())
typedef GDBusProxy RygelExternalMediaObjectProxyProxy;
typedef GDBusProxyClass RygelExternalMediaObjectProxyProxyClass;
#define _g_free0(var) (var = (g_free (var), NULL))

#define RYGEL_EXTERNAL_TYPE_MEDIA_CONTAINER_PROXY (rygel_external_media_container_proxy_get_type ())
#define RYGEL_EXTERNAL_MEDIA_CONTAINER_PROXY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), RYGEL_EXTERNAL_TYPE_MEDIA_CONTAINER_PROXY, RygelExternalMediaContainerProxy))
#define RYGEL_EXTERNAL_IS_MEDIA_CONTAINER_PROXY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), RYGEL_EXTERNAL_TYPE_MEDIA_CONTAINER_PROXY))
#define RYGEL_EXTERNAL_MEDIA_CONTAINER_PROXY_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), RYGEL_EXTERNAL_TYPE_MEDIA_CONTAINER_PROXY, RygelExternalMediaContainerProxyIface))

typedef struct _RygelExternalMediaContainerProxy RygelExternalMediaContainerProxy;
typedef struct _RygelExternalMediaContainerProxyIface RygelExternalMediaContainerProxyIface;

#define RYGEL_EXTERNAL_TYPE_MEDIA_CONTAINER_PROXY_PROXY (rygel_external_media_container_proxy_proxy_get_type ())
typedef GDBusProxy RygelExternalMediaContainerProxyProxy;
typedef GDBusProxyClass RygelExternalMediaContainerProxyProxyClass;

#define RYGEL_EXTERNAL_TYPE_MEDIA_ITEM_PROXY (rygel_external_media_item_proxy_get_type ())
#define RYGEL_EXTERNAL_MEDIA_ITEM_PROXY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), RYGEL_EXTERNAL_TYPE_MEDIA_ITEM_PROXY, RygelExternalMediaItemProxy))
#define RYGEL_EXTERNAL_IS_MEDIA_ITEM_PROXY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), RYGEL_EXTERNAL_TYPE_MEDIA_ITEM_PROXY))
#define RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), RYGEL_EXTERNAL_TYPE_MEDIA_ITEM_PROXY, RygelExternalMediaItemProxyIface))

typedef struct _RygelExternalMediaItemProxy RygelExternalMediaItemProxy;
typedef struct _RygelExternalMediaItemProxyIface RygelExternalMediaItemProxyIface;

#define RYGEL_EXTERNAL_TYPE_MEDIA_ITEM_PROXY_PROXY (rygel_external_media_item_proxy_proxy_get_type ())
typedef GDBusProxy RygelExternalMediaItemProxyProxy;
typedef GDBusProxyClass RygelExternalMediaItemProxyProxyClass;

struct _RygelExternalMediaObjectProxyIface {
	GTypeInterface parent_iface;
	char* (*get_parent) (RygelExternalMediaObjectProxy* self);
	void (*set_parent) (RygelExternalMediaObjectProxy* self, const char* value);
	gchar* (*get_display_name) (RygelExternalMediaObjectProxy* self);
	void (*set_display_name) (RygelExternalMediaObjectProxy* self, const gchar* value);
	gchar* (*get_object_type) (RygelExternalMediaObjectProxy* self);
	void (*set_object_type) (RygelExternalMediaObjectProxy* self, const gchar* value);
};

struct _RygelExternalMediaContainerProxyIface {
	GTypeInterface parent_iface;
	void (*list_children) (RygelExternalMediaContainerProxy* self, guint offset, guint max_count, gchar** filter, int filter_length1, GAsyncReadyCallback _callback_, gpointer _user_data_);
	GHashTable** (*list_children_finish) (RygelExternalMediaContainerProxy* self, GAsyncResult* _res_, int* result_length1, GError** error);
	void (*list_containers) (RygelExternalMediaContainerProxy* self, guint offset, guint max_count, gchar** filter, int filter_length1, GAsyncReadyCallback _callback_, gpointer _user_data_);
	GHashTable** (*list_containers_finish) (RygelExternalMediaContainerProxy* self, GAsyncResult* _res_, int* result_length1, GError** error);
	void (*list_items) (RygelExternalMediaContainerProxy* self, guint offset, guint max_count, gchar** filter, int filter_length1, GAsyncReadyCallback _callback_, gpointer _user_data_);
	GHashTable** (*list_items_finish) (RygelExternalMediaContainerProxy* self, GAsyncResult* _res_, int* result_length1, GError** error);
	void (*search_objects) (RygelExternalMediaContainerProxy* self, const gchar* query, guint offset, guint max_count, gchar** filter, int filter_length1, GAsyncReadyCallback _callback_, gpointer _user_data_);
	GHashTable** (*search_objects_finish) (RygelExternalMediaContainerProxy* self, GAsyncResult* _res_, int* result_length1, GError** error);
	guint (*get_child_count) (RygelExternalMediaContainerProxy* self);
	void (*set_child_count) (RygelExternalMediaContainerProxy* self, guint value);
	guint (*get_item_count) (RygelExternalMediaContainerProxy* self);
	void (*set_item_count) (RygelExternalMediaContainerProxy* self, guint value);
	guint (*get_container_count) (RygelExternalMediaContainerProxy* self);
	void (*set_container_count) (RygelExternalMediaContainerProxy* self, guint value);
	gboolean (*get_searchable) (RygelExternalMediaContainerProxy* self);
	void (*set_searchable) (RygelExternalMediaContainerProxy* self, gboolean value);
	char* (*get_icon) (RygelExternalMediaContainerProxy* self);
	void (*set_icon) (RygelExternalMediaContainerProxy* self, const char* value);
};

struct _RygelExternalMediaItemProxyIface {
	GTypeInterface parent_iface;
	gchar** (*get_urls) (RygelExternalMediaItemProxy* self, int* result_length1);
	void (*set_urls) (RygelExternalMediaItemProxy* self, gchar** value, int value_length1);
	gchar* (*get_mime_type) (RygelExternalMediaItemProxy* self);
	void (*set_mime_type) (RygelExternalMediaItemProxy* self, const gchar* value);
	gint (*get_size) (RygelExternalMediaItemProxy* self);
	void (*set_size) (RygelExternalMediaItemProxy* self, gint value);
	gchar* (*get_artist) (RygelExternalMediaItemProxy* self);
	void (*set_artist) (RygelExternalMediaItemProxy* self, const gchar* value);
	gchar* (*get_album) (RygelExternalMediaItemProxy* self);
	void (*set_album) (RygelExternalMediaItemProxy* self, const gchar* value);
	gchar* (*get_date) (RygelExternalMediaItemProxy* self);
	void (*set_date) (RygelExternalMediaItemProxy* self, const gchar* value);
	gchar* (*get_genre) (RygelExternalMediaItemProxy* self);
	void (*set_genre) (RygelExternalMediaItemProxy* self, const gchar* value);
	gchar* (*get_dlna_profile) (RygelExternalMediaItemProxy* self);
	void (*set_dlna_profile) (RygelExternalMediaItemProxy* self, const gchar* value);
	gint (*get_duration) (RygelExternalMediaItemProxy* self);
	void (*set_duration) (RygelExternalMediaItemProxy* self, gint value);
	gint (*get_bitrate) (RygelExternalMediaItemProxy* self);
	void (*set_bitrate) (RygelExternalMediaItemProxy* self, gint value);
	gint (*get_sample_rate) (RygelExternalMediaItemProxy* self);
	void (*set_sample_rate) (RygelExternalMediaItemProxy* self, gint value);
	gint (*get_bits_per_sample) (RygelExternalMediaItemProxy* self);
	void (*set_bits_per_sample) (RygelExternalMediaItemProxy* self, gint value);
	gint (*get_width) (RygelExternalMediaItemProxy* self);
	void (*set_width) (RygelExternalMediaItemProxy* self, gint value);
	gint (*get_height) (RygelExternalMediaItemProxy* self);
	void (*set_height) (RygelExternalMediaItemProxy* self, gint value);
	gint (*get_color_depth) (RygelExternalMediaItemProxy* self);
	void (*set_color_depth) (RygelExternalMediaItemProxy* self, gint value);
	char* (*get_thumbnail) (RygelExternalMediaItemProxy* self);
	void (*set_thumbnail) (RygelExternalMediaItemProxy* self, const char* value);
	char* (*get_album_art) (RygelExternalMediaItemProxy* self);
	void (*set_album_art) (RygelExternalMediaItemProxy* self, const char* value);
};



GType rygel_external_media_object_proxy_get_type (void) G_GNUC_CONST;
GType rygel_external_media_object_proxy_proxy_get_type (void) G_GNUC_CONST;
guint rygel_external_media_object_proxy_register_object (void* object, GDBusConnection* connection, const gchar* path, GError** error);
#define RYGEL_EXTERNAL_MEDIA_OBJECT_PROXY_IFACE "org.gnome.UPnP.MediaObject2"
char* rygel_external_media_object_proxy_get_parent (RygelExternalMediaObjectProxy* self);
void rygel_external_media_object_proxy_set_parent (RygelExternalMediaObjectProxy* self, const char* value);
gchar* rygel_external_media_object_proxy_get_display_name (RygelExternalMediaObjectProxy* self);
void rygel_external_media_object_proxy_set_display_name (RygelExternalMediaObjectProxy* self, const gchar* value);
gchar* rygel_external_media_object_proxy_get_object_type (RygelExternalMediaObjectProxy* self);
void rygel_external_media_object_proxy_set_object_type (RygelExternalMediaObjectProxy* self, const gchar* value);
static void rygel_external_media_object_proxy_proxy_g_signal (GDBusProxy* proxy, const gchar* sender_name, const gchar* signal_name, GVariant* parameters);
static char* rygel_external_media_object_proxy_dbus_proxy_get_parent (RygelExternalMediaObjectProxy* self);
static void rygel_external_media_object_proxy_dbus_proxy_set_parent (RygelExternalMediaObjectProxy* self, const char* value);
static gchar* rygel_external_media_object_proxy_dbus_proxy_get_display_name (RygelExternalMediaObjectProxy* self);
static void rygel_external_media_object_proxy_dbus_proxy_set_display_name (RygelExternalMediaObjectProxy* self, const gchar* value);
static gchar* rygel_external_media_object_proxy_dbus_proxy_get_object_type (RygelExternalMediaObjectProxy* self);
static void rygel_external_media_object_proxy_dbus_proxy_set_object_type (RygelExternalMediaObjectProxy* self, const gchar* value);
static void rygel_external_media_object_proxy_proxy_rygel_external_media_object_proxy_interface_init (RygelExternalMediaObjectProxyIface* iface);
static void rygel_external_media_object_proxy_dbus_interface_method_call (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* method_name, GVariant* parameters, GDBusMethodInvocation* invocation, gpointer user_data);
static GVariant* rygel_external_media_object_proxy_dbus_interface_get_property (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* property_name, GError** error, gpointer user_data);
static GVariant* _dbus_rygel_external_media_object_proxy_get_parent (RygelExternalMediaObjectProxy* self);
static GVariant* _dbus_rygel_external_media_object_proxy_get_display_name (RygelExternalMediaObjectProxy* self);
static GVariant* _dbus_rygel_external_media_object_proxy_get_object_type (RygelExternalMediaObjectProxy* self);
static gboolean rygel_external_media_object_proxy_dbus_interface_set_property (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* property_name, GVariant* value, GError** error, gpointer user_data);
static void _dbus_rygel_external_media_object_proxy_set_parent (RygelExternalMediaObjectProxy* self, GVariant* _value);
static void _dbus_rygel_external_media_object_proxy_set_display_name (RygelExternalMediaObjectProxy* self, GVariant* _value);
static void _dbus_rygel_external_media_object_proxy_set_object_type (RygelExternalMediaObjectProxy* self, GVariant* _value);
static void _rygel_external_media_object_proxy_unregister_object (gpointer user_data);
GType rygel_external_media_container_proxy_proxy_get_type (void) G_GNUC_CONST;
guint rygel_external_media_container_proxy_register_object (void* object, GDBusConnection* connection, const gchar* path, GError** error);
GType rygel_external_media_container_proxy_get_type (void) G_GNUC_CONST;
void rygel_external_media_container_proxy_list_children (RygelExternalMediaContainerProxy* self, guint offset, guint max_count, gchar** filter, int filter_length1, GAsyncReadyCallback _callback_, gpointer _user_data_);
GHashTable** rygel_external_media_container_proxy_list_children_finish (RygelExternalMediaContainerProxy* self, GAsyncResult* _res_, int* result_length1, GError** error);
void rygel_external_media_container_proxy_list_containers (RygelExternalMediaContainerProxy* self, guint offset, guint max_count, gchar** filter, int filter_length1, GAsyncReadyCallback _callback_, gpointer _user_data_);
GHashTable** rygel_external_media_container_proxy_list_containers_finish (RygelExternalMediaContainerProxy* self, GAsyncResult* _res_, int* result_length1, GError** error);
void rygel_external_media_container_proxy_list_items (RygelExternalMediaContainerProxy* self, guint offset, guint max_count, gchar** filter, int filter_length1, GAsyncReadyCallback _callback_, gpointer _user_data_);
GHashTable** rygel_external_media_container_proxy_list_items_finish (RygelExternalMediaContainerProxy* self, GAsyncResult* _res_, int* result_length1, GError** error);
void rygel_external_media_container_proxy_search_objects (RygelExternalMediaContainerProxy* self, const gchar* query, guint offset, guint max_count, gchar** filter, int filter_length1, GAsyncReadyCallback _callback_, gpointer _user_data_);
GHashTable** rygel_external_media_container_proxy_search_objects_finish (RygelExternalMediaContainerProxy* self, GAsyncResult* _res_, int* result_length1, GError** error);
#define RYGEL_EXTERNAL_MEDIA_CONTAINER_PROXY_IFACE "org.gnome.UPnP.MediaContainer2"
guint rygel_external_media_container_proxy_get_child_count (RygelExternalMediaContainerProxy* self);
void rygel_external_media_container_proxy_set_child_count (RygelExternalMediaContainerProxy* self, guint value);
guint rygel_external_media_container_proxy_get_item_count (RygelExternalMediaContainerProxy* self);
void rygel_external_media_container_proxy_set_item_count (RygelExternalMediaContainerProxy* self, guint value);
guint rygel_external_media_container_proxy_get_container_count (RygelExternalMediaContainerProxy* self);
void rygel_external_media_container_proxy_set_container_count (RygelExternalMediaContainerProxy* self, guint value);
gboolean rygel_external_media_container_proxy_get_searchable (RygelExternalMediaContainerProxy* self);
void rygel_external_media_container_proxy_set_searchable (RygelExternalMediaContainerProxy* self, gboolean value);
char* rygel_external_media_container_proxy_get_icon (RygelExternalMediaContainerProxy* self);
void rygel_external_media_container_proxy_set_icon (RygelExternalMediaContainerProxy* self, const char* value);
static void rygel_external_media_container_proxy_proxy_g_signal (GDBusProxy* proxy, const gchar* sender_name, const gchar* signal_name, GVariant* parameters);
static void _dbus_handle_rygel_external_media_container_proxy_updated (RygelExternalMediaContainerProxy* self, GVariant* parameters);
static char* rygel_external_media_container_proxy_dbus_proxy_get_parent (RygelExternalMediaObjectProxy* self);
static void rygel_external_media_container_proxy_dbus_proxy_set_parent (RygelExternalMediaObjectProxy* self, const char* value);
static gchar* rygel_external_media_container_proxy_dbus_proxy_get_display_name (RygelExternalMediaObjectProxy* self);
static void rygel_external_media_container_proxy_dbus_proxy_set_display_name (RygelExternalMediaObjectProxy* self, const gchar* value);
static gchar* rygel_external_media_container_proxy_dbus_proxy_get_object_type (RygelExternalMediaObjectProxy* self);
static void rygel_external_media_container_proxy_dbus_proxy_set_object_type (RygelExternalMediaObjectProxy* self, const gchar* value);
static void rygel_external_media_container_proxy_proxy_rygel_external_media_object_proxy_interface_init (RygelExternalMediaObjectProxyIface* iface);
static void _vala_g_async_ready_callback (GObject *source_object, GAsyncResult *res, void *user_data);
static void rygel_external_media_container_proxy_proxy_list_children_async (RygelExternalMediaContainerProxy* self, guint offset, guint max_count, gchar** filter, int filter_length1, GAsyncReadyCallback _callback_, gpointer _user_data_);
static GHashTable** rygel_external_media_container_proxy_proxy_list_children_finish (RygelExternalMediaContainerProxy* self, GAsyncResult* _res_, int* result_length1, GError** error);
static void rygel_external_media_container_proxy_proxy_list_containers_async (RygelExternalMediaContainerProxy* self, guint offset, guint max_count, gchar** filter, int filter_length1, GAsyncReadyCallback _callback_, gpointer _user_data_);
static GHashTable** rygel_external_media_container_proxy_proxy_list_containers_finish (RygelExternalMediaContainerProxy* self, GAsyncResult* _res_, int* result_length1, GError** error);
static void rygel_external_media_container_proxy_proxy_list_items_async (RygelExternalMediaContainerProxy* self, guint offset, guint max_count, gchar** filter, int filter_length1, GAsyncReadyCallback _callback_, gpointer _user_data_);
static GHashTable** rygel_external_media_container_proxy_proxy_list_items_finish (RygelExternalMediaContainerProxy* self, GAsyncResult* _res_, int* result_length1, GError** error);
static void rygel_external_media_container_proxy_proxy_search_objects_async (RygelExternalMediaContainerProxy* self, const gchar* query, guint offset, guint max_count, gchar** filter, int filter_length1, GAsyncReadyCallback _callback_, gpointer _user_data_);
static GHashTable** rygel_external_media_container_proxy_proxy_search_objects_finish (RygelExternalMediaContainerProxy* self, GAsyncResult* _res_, int* result_length1, GError** error);
static guint rygel_external_media_container_proxy_dbus_proxy_get_child_count (RygelExternalMediaContainerProxy* self);
static void rygel_external_media_container_proxy_dbus_proxy_set_child_count (RygelExternalMediaContainerProxy* self, guint value);
static guint rygel_external_media_container_proxy_dbus_proxy_get_item_count (RygelExternalMediaContainerProxy* self);
static void rygel_external_media_container_proxy_dbus_proxy_set_item_count (RygelExternalMediaContainerProxy* self, guint value);
static guint rygel_external_media_container_proxy_dbus_proxy_get_container_count (RygelExternalMediaContainerProxy* self);
static void rygel_external_media_container_proxy_dbus_proxy_set_container_count (RygelExternalMediaContainerProxy* self, guint value);
static gboolean rygel_external_media_container_proxy_dbus_proxy_get_searchable (RygelExternalMediaContainerProxy* self);
static void rygel_external_media_container_proxy_dbus_proxy_set_searchable (RygelExternalMediaContainerProxy* self, gboolean value);
static char* rygel_external_media_container_proxy_dbus_proxy_get_icon (RygelExternalMediaContainerProxy* self);
static void rygel_external_media_container_proxy_dbus_proxy_set_icon (RygelExternalMediaContainerProxy* self, const char* value);
static void rygel_external_media_container_proxy_proxy_rygel_external_media_container_proxy_interface_init (RygelExternalMediaContainerProxyIface* iface);
static void _dbus_rygel_external_media_container_proxy_list_children (RygelExternalMediaContainerProxy* self, GVariant* parameters, GDBusMethodInvocation* invocation);
static void _dbus_rygel_external_media_container_proxy_list_children_ready (GObject * source_object, GAsyncResult * _res_, gpointer _user_data_);
static void _dbus_rygel_external_media_container_proxy_list_containers (RygelExternalMediaContainerProxy* self, GVariant* parameters, GDBusMethodInvocation* invocation);
static void _dbus_rygel_external_media_container_proxy_list_containers_ready (GObject * source_object, GAsyncResult * _res_, gpointer _user_data_);
static void _dbus_rygel_external_media_container_proxy_list_items (RygelExternalMediaContainerProxy* self, GVariant* parameters, GDBusMethodInvocation* invocation);
static void _dbus_rygel_external_media_container_proxy_list_items_ready (GObject * source_object, GAsyncResult * _res_, gpointer _user_data_);
static void _dbus_rygel_external_media_container_proxy_search_objects (RygelExternalMediaContainerProxy* self, GVariant* parameters, GDBusMethodInvocation* invocation);
static void _dbus_rygel_external_media_container_proxy_search_objects_ready (GObject * source_object, GAsyncResult * _res_, gpointer _user_data_);
static void rygel_external_media_container_proxy_dbus_interface_method_call (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* method_name, GVariant* parameters, GDBusMethodInvocation* invocation, gpointer user_data);
static GVariant* rygel_external_media_container_proxy_dbus_interface_get_property (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* property_name, GError** error, gpointer user_data);
static GVariant* _dbus_rygel_external_media_container_proxy_get_child_count (RygelExternalMediaContainerProxy* self);
static GVariant* _dbus_rygel_external_media_container_proxy_get_item_count (RygelExternalMediaContainerProxy* self);
static GVariant* _dbus_rygel_external_media_container_proxy_get_container_count (RygelExternalMediaContainerProxy* self);
static GVariant* _dbus_rygel_external_media_container_proxy_get_searchable (RygelExternalMediaContainerProxy* self);
static GVariant* _dbus_rygel_external_media_container_proxy_get_icon (RygelExternalMediaContainerProxy* self);
static gboolean rygel_external_media_container_proxy_dbus_interface_set_property (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* property_name, GVariant* value, GError** error, gpointer user_data);
static void _dbus_rygel_external_media_container_proxy_set_child_count (RygelExternalMediaContainerProxy* self, GVariant* _value);
static void _dbus_rygel_external_media_container_proxy_set_item_count (RygelExternalMediaContainerProxy* self, GVariant* _value);
static void _dbus_rygel_external_media_container_proxy_set_container_count (RygelExternalMediaContainerProxy* self, GVariant* _value);
static void _dbus_rygel_external_media_container_proxy_set_searchable (RygelExternalMediaContainerProxy* self, GVariant* _value);
static void _dbus_rygel_external_media_container_proxy_set_icon (RygelExternalMediaContainerProxy* self, GVariant* _value);
static void _dbus_rygel_external_media_container_proxy_updated (GObject* _sender, gpointer* _data);
static void _rygel_external_media_container_proxy_unregister_object (gpointer user_data);
GType rygel_external_media_item_proxy_get_type (void) G_GNUC_CONST;
GType rygel_external_media_item_proxy_proxy_get_type (void) G_GNUC_CONST;
guint rygel_external_media_item_proxy_register_object (void* object, GDBusConnection* connection, const gchar* path, GError** error);
#define RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_IFACE "org.gnome.UPnP.MediaItem2"
gchar** rygel_external_media_item_proxy_get_urls (RygelExternalMediaItemProxy* self, int* result_length1);
void rygel_external_media_item_proxy_set_urls (RygelExternalMediaItemProxy* self, gchar** value, int value_length1);
gchar* rygel_external_media_item_proxy_get_mime_type (RygelExternalMediaItemProxy* self);
void rygel_external_media_item_proxy_set_mime_type (RygelExternalMediaItemProxy* self, const gchar* value);
gint rygel_external_media_item_proxy_get_size (RygelExternalMediaItemProxy* self);
void rygel_external_media_item_proxy_set_size (RygelExternalMediaItemProxy* self, gint value);
gchar* rygel_external_media_item_proxy_get_artist (RygelExternalMediaItemProxy* self);
void rygel_external_media_item_proxy_set_artist (RygelExternalMediaItemProxy* self, const gchar* value);
gchar* rygel_external_media_item_proxy_get_album (RygelExternalMediaItemProxy* self);
void rygel_external_media_item_proxy_set_album (RygelExternalMediaItemProxy* self, const gchar* value);
gchar* rygel_external_media_item_proxy_get_date (RygelExternalMediaItemProxy* self);
void rygel_external_media_item_proxy_set_date (RygelExternalMediaItemProxy* self, const gchar* value);
gchar* rygel_external_media_item_proxy_get_genre (RygelExternalMediaItemProxy* self);
void rygel_external_media_item_proxy_set_genre (RygelExternalMediaItemProxy* self, const gchar* value);
gchar* rygel_external_media_item_proxy_get_dlna_profile (RygelExternalMediaItemProxy* self);
void rygel_external_media_item_proxy_set_dlna_profile (RygelExternalMediaItemProxy* self, const gchar* value);
gint rygel_external_media_item_proxy_get_duration (RygelExternalMediaItemProxy* self);
void rygel_external_media_item_proxy_set_duration (RygelExternalMediaItemProxy* self, gint value);
gint rygel_external_media_item_proxy_get_bitrate (RygelExternalMediaItemProxy* self);
void rygel_external_media_item_proxy_set_bitrate (RygelExternalMediaItemProxy* self, gint value);
gint rygel_external_media_item_proxy_get_sample_rate (RygelExternalMediaItemProxy* self);
void rygel_external_media_item_proxy_set_sample_rate (RygelExternalMediaItemProxy* self, gint value);
gint rygel_external_media_item_proxy_get_bits_per_sample (RygelExternalMediaItemProxy* self);
void rygel_external_media_item_proxy_set_bits_per_sample (RygelExternalMediaItemProxy* self, gint value);
gint rygel_external_media_item_proxy_get_width (RygelExternalMediaItemProxy* self);
void rygel_external_media_item_proxy_set_width (RygelExternalMediaItemProxy* self, gint value);
gint rygel_external_media_item_proxy_get_height (RygelExternalMediaItemProxy* self);
void rygel_external_media_item_proxy_set_height (RygelExternalMediaItemProxy* self, gint value);
gint rygel_external_media_item_proxy_get_color_depth (RygelExternalMediaItemProxy* self);
void rygel_external_media_item_proxy_set_color_depth (RygelExternalMediaItemProxy* self, gint value);
char* rygel_external_media_item_proxy_get_thumbnail (RygelExternalMediaItemProxy* self);
void rygel_external_media_item_proxy_set_thumbnail (RygelExternalMediaItemProxy* self, const char* value);
char* rygel_external_media_item_proxy_get_album_art (RygelExternalMediaItemProxy* self);
void rygel_external_media_item_proxy_set_album_art (RygelExternalMediaItemProxy* self, const char* value);
static void rygel_external_media_item_proxy_proxy_g_signal (GDBusProxy* proxy, const gchar* sender_name, const gchar* signal_name, GVariant* parameters);
static char* rygel_external_media_item_proxy_dbus_proxy_get_parent (RygelExternalMediaObjectProxy* self);
static void rygel_external_media_item_proxy_dbus_proxy_set_parent (RygelExternalMediaObjectProxy* self, const char* value);
static gchar* rygel_external_media_item_proxy_dbus_proxy_get_display_name (RygelExternalMediaObjectProxy* self);
static void rygel_external_media_item_proxy_dbus_proxy_set_display_name (RygelExternalMediaObjectProxy* self, const gchar* value);
static gchar* rygel_external_media_item_proxy_dbus_proxy_get_object_type (RygelExternalMediaObjectProxy* self);
static void rygel_external_media_item_proxy_dbus_proxy_set_object_type (RygelExternalMediaObjectProxy* self, const gchar* value);
static void rygel_external_media_item_proxy_proxy_rygel_external_media_object_proxy_interface_init (RygelExternalMediaObjectProxyIface* iface);
static gchar** rygel_external_media_item_proxy_dbus_proxy_get_urls (RygelExternalMediaItemProxy* self, int* result_length1);
static void rygel_external_media_item_proxy_dbus_proxy_set_urls (RygelExternalMediaItemProxy* self, gchar** value, int value_length1);
static gchar* rygel_external_media_item_proxy_dbus_proxy_get_mime_type (RygelExternalMediaItemProxy* self);
static void rygel_external_media_item_proxy_dbus_proxy_set_mime_type (RygelExternalMediaItemProxy* self, const gchar* value);
static gint rygel_external_media_item_proxy_dbus_proxy_get_size (RygelExternalMediaItemProxy* self);
static void rygel_external_media_item_proxy_dbus_proxy_set_size (RygelExternalMediaItemProxy* self, gint value);
static gchar* rygel_external_media_item_proxy_dbus_proxy_get_artist (RygelExternalMediaItemProxy* self);
static void rygel_external_media_item_proxy_dbus_proxy_set_artist (RygelExternalMediaItemProxy* self, const gchar* value);
static gchar* rygel_external_media_item_proxy_dbus_proxy_get_album (RygelExternalMediaItemProxy* self);
static void rygel_external_media_item_proxy_dbus_proxy_set_album (RygelExternalMediaItemProxy* self, const gchar* value);
static gchar* rygel_external_media_item_proxy_dbus_proxy_get_date (RygelExternalMediaItemProxy* self);
static void rygel_external_media_item_proxy_dbus_proxy_set_date (RygelExternalMediaItemProxy* self, const gchar* value);
static gchar* rygel_external_media_item_proxy_dbus_proxy_get_genre (RygelExternalMediaItemProxy* self);
static void rygel_external_media_item_proxy_dbus_proxy_set_genre (RygelExternalMediaItemProxy* self, const gchar* value);
static gchar* rygel_external_media_item_proxy_dbus_proxy_get_dlna_profile (RygelExternalMediaItemProxy* self);
static void rygel_external_media_item_proxy_dbus_proxy_set_dlna_profile (RygelExternalMediaItemProxy* self, const gchar* value);
static gint rygel_external_media_item_proxy_dbus_proxy_get_duration (RygelExternalMediaItemProxy* self);
static void rygel_external_media_item_proxy_dbus_proxy_set_duration (RygelExternalMediaItemProxy* self, gint value);
static gint rygel_external_media_item_proxy_dbus_proxy_get_bitrate (RygelExternalMediaItemProxy* self);
static void rygel_external_media_item_proxy_dbus_proxy_set_bitrate (RygelExternalMediaItemProxy* self, gint value);
static gint rygel_external_media_item_proxy_dbus_proxy_get_sample_rate (RygelExternalMediaItemProxy* self);
static void rygel_external_media_item_proxy_dbus_proxy_set_sample_rate (RygelExternalMediaItemProxy* self, gint value);
static gint rygel_external_media_item_proxy_dbus_proxy_get_bits_per_sample (RygelExternalMediaItemProxy* self);
static void rygel_external_media_item_proxy_dbus_proxy_set_bits_per_sample (RygelExternalMediaItemProxy* self, gint value);
static gint rygel_external_media_item_proxy_dbus_proxy_get_width (RygelExternalMediaItemProxy* self);
static void rygel_external_media_item_proxy_dbus_proxy_set_width (RygelExternalMediaItemProxy* self, gint value);
static gint rygel_external_media_item_proxy_dbus_proxy_get_height (RygelExternalMediaItemProxy* self);
static void rygel_external_media_item_proxy_dbus_proxy_set_height (RygelExternalMediaItemProxy* self, gint value);
static gint rygel_external_media_item_proxy_dbus_proxy_get_color_depth (RygelExternalMediaItemProxy* self);
static void rygel_external_media_item_proxy_dbus_proxy_set_color_depth (RygelExternalMediaItemProxy* self, gint value);
static char* rygel_external_media_item_proxy_dbus_proxy_get_thumbnail (RygelExternalMediaItemProxy* self);
static void rygel_external_media_item_proxy_dbus_proxy_set_thumbnail (RygelExternalMediaItemProxy* self, const char* value);
static char* rygel_external_media_item_proxy_dbus_proxy_get_album_art (RygelExternalMediaItemProxy* self);
static void rygel_external_media_item_proxy_dbus_proxy_set_album_art (RygelExternalMediaItemProxy* self, const char* value);
static void rygel_external_media_item_proxy_proxy_rygel_external_media_item_proxy_interface_init (RygelExternalMediaItemProxyIface* iface);
static void rygel_external_media_item_proxy_dbus_interface_method_call (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* method_name, GVariant* parameters, GDBusMethodInvocation* invocation, gpointer user_data);
static GVariant* rygel_external_media_item_proxy_dbus_interface_get_property (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* property_name, GError** error, gpointer user_data);
static GVariant* _dbus_rygel_external_media_item_proxy_get_urls (RygelExternalMediaItemProxy* self);
static GVariant* _dbus_rygel_external_media_item_proxy_get_mime_type (RygelExternalMediaItemProxy* self);
static GVariant* _dbus_rygel_external_media_item_proxy_get_size (RygelExternalMediaItemProxy* self);
static GVariant* _dbus_rygel_external_media_item_proxy_get_artist (RygelExternalMediaItemProxy* self);
static GVariant* _dbus_rygel_external_media_item_proxy_get_album (RygelExternalMediaItemProxy* self);
static GVariant* _dbus_rygel_external_media_item_proxy_get_date (RygelExternalMediaItemProxy* self);
static GVariant* _dbus_rygel_external_media_item_proxy_get_genre (RygelExternalMediaItemProxy* self);
static GVariant* _dbus_rygel_external_media_item_proxy_get_dlna_profile (RygelExternalMediaItemProxy* self);
static GVariant* _dbus_rygel_external_media_item_proxy_get_duration (RygelExternalMediaItemProxy* self);
static GVariant* _dbus_rygel_external_media_item_proxy_get_bitrate (RygelExternalMediaItemProxy* self);
static GVariant* _dbus_rygel_external_media_item_proxy_get_sample_rate (RygelExternalMediaItemProxy* self);
static GVariant* _dbus_rygel_external_media_item_proxy_get_bits_per_sample (RygelExternalMediaItemProxy* self);
static GVariant* _dbus_rygel_external_media_item_proxy_get_width (RygelExternalMediaItemProxy* self);
static GVariant* _dbus_rygel_external_media_item_proxy_get_height (RygelExternalMediaItemProxy* self);
static GVariant* _dbus_rygel_external_media_item_proxy_get_color_depth (RygelExternalMediaItemProxy* self);
static GVariant* _dbus_rygel_external_media_item_proxy_get_thumbnail (RygelExternalMediaItemProxy* self);
static GVariant* _dbus_rygel_external_media_item_proxy_get_album_art (RygelExternalMediaItemProxy* self);
static gboolean rygel_external_media_item_proxy_dbus_interface_set_property (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* property_name, GVariant* value, GError** error, gpointer user_data);
static void _dbus_rygel_external_media_item_proxy_set_urls (RygelExternalMediaItemProxy* self, GVariant* _value);
static void _dbus_rygel_external_media_item_proxy_set_mime_type (RygelExternalMediaItemProxy* self, GVariant* _value);
static void _dbus_rygel_external_media_item_proxy_set_size (RygelExternalMediaItemProxy* self, GVariant* _value);
static void _dbus_rygel_external_media_item_proxy_set_artist (RygelExternalMediaItemProxy* self, GVariant* _value);
static void _dbus_rygel_external_media_item_proxy_set_album (RygelExternalMediaItemProxy* self, GVariant* _value);
static void _dbus_rygel_external_media_item_proxy_set_date (RygelExternalMediaItemProxy* self, GVariant* _value);
static void _dbus_rygel_external_media_item_proxy_set_genre (RygelExternalMediaItemProxy* self, GVariant* _value);
static void _dbus_rygel_external_media_item_proxy_set_dlna_profile (RygelExternalMediaItemProxy* self, GVariant* _value);
static void _dbus_rygel_external_media_item_proxy_set_duration (RygelExternalMediaItemProxy* self, GVariant* _value);
static void _dbus_rygel_external_media_item_proxy_set_bitrate (RygelExternalMediaItemProxy* self, GVariant* _value);
static void _dbus_rygel_external_media_item_proxy_set_sample_rate (RygelExternalMediaItemProxy* self, GVariant* _value);
static void _dbus_rygel_external_media_item_proxy_set_bits_per_sample (RygelExternalMediaItemProxy* self, GVariant* _value);
static void _dbus_rygel_external_media_item_proxy_set_width (RygelExternalMediaItemProxy* self, GVariant* _value);
static void _dbus_rygel_external_media_item_proxy_set_height (RygelExternalMediaItemProxy* self, GVariant* _value);
static void _dbus_rygel_external_media_item_proxy_set_color_depth (RygelExternalMediaItemProxy* self, GVariant* _value);
static void _dbus_rygel_external_media_item_proxy_set_thumbnail (RygelExternalMediaItemProxy* self, GVariant* _value);
static void _dbus_rygel_external_media_item_proxy_set_album_art (RygelExternalMediaItemProxy* self, GVariant* _value);
static void _rygel_external_media_item_proxy_unregister_object (gpointer user_data);
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);

const gchar* RYGEL_EXTERNAL_MEDIA_OBJECT_PROXY_PROPERTIES[4] = {"Parent", "Type", "Path", "DisplayName"};
static const GDBusMethodInfo * const _rygel_external_media_object_proxy_dbus_method_info[] = {NULL};
static const GDBusSignalInfo * const _rygel_external_media_object_proxy_dbus_signal_info[] = {NULL};
static const GDBusPropertyInfo _rygel_external_media_object_proxy_dbus_property_info_parent = {-1, "Parent", "o", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo _rygel_external_media_object_proxy_dbus_property_info_display_name = {-1, "DisplayName", "s", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo _rygel_external_media_object_proxy_dbus_property_info_object_type = {-1, "Type", "s", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo * const _rygel_external_media_object_proxy_dbus_property_info[] = {&_rygel_external_media_object_proxy_dbus_property_info_parent, &_rygel_external_media_object_proxy_dbus_property_info_display_name, &_rygel_external_media_object_proxy_dbus_property_info_object_type, NULL};
static const GDBusInterfaceInfo _rygel_external_media_object_proxy_dbus_interface_info = {-1, "org.gnome.UPnP.MediaObject2", (GDBusMethodInfo **) (&_rygel_external_media_object_proxy_dbus_method_info), (GDBusSignalInfo **) (&_rygel_external_media_object_proxy_dbus_signal_info), (GDBusPropertyInfo **) (&_rygel_external_media_object_proxy_dbus_property_info)};
static const GDBusInterfaceVTable _rygel_external_media_object_proxy_dbus_interface_vtable = {rygel_external_media_object_proxy_dbus_interface_method_call, rygel_external_media_object_proxy_dbus_interface_get_property, rygel_external_media_object_proxy_dbus_interface_set_property};
const gchar* RYGEL_EXTERNAL_MEDIA_CONTAINER_PROXY_PROPERTIES[2] = {"ChildCount", "Searchable"};
static const GDBusArgInfo _rygel_external_media_container_proxy_dbus_arg_info_list_children_offset = {-1, "offset", "u"};
static const GDBusArgInfo _rygel_external_media_container_proxy_dbus_arg_info_list_children_max_count = {-1, "max_count", "u"};
static const GDBusArgInfo _rygel_external_media_container_proxy_dbus_arg_info_list_children_filter = {-1, "filter", "as"};
static const GDBusArgInfo _rygel_external_media_container_proxy_dbus_arg_info_list_children_result = {-1, "result", "aa{sv}"};
static const GDBusArgInfo * const _rygel_external_media_container_proxy_dbus_arg_info_list_children_in[] = {&_rygel_external_media_container_proxy_dbus_arg_info_list_children_offset, &_rygel_external_media_container_proxy_dbus_arg_info_list_children_max_count, &_rygel_external_media_container_proxy_dbus_arg_info_list_children_filter, NULL};
static const GDBusArgInfo * const _rygel_external_media_container_proxy_dbus_arg_info_list_children_out[] = {&_rygel_external_media_container_proxy_dbus_arg_info_list_children_result, NULL};
static const GDBusMethodInfo _rygel_external_media_container_proxy_dbus_method_info_list_children = {-1, "ListChildren", (GDBusArgInfo **) (&_rygel_external_media_container_proxy_dbus_arg_info_list_children_in), (GDBusArgInfo **) (&_rygel_external_media_container_proxy_dbus_arg_info_list_children_out)};
static const GDBusArgInfo _rygel_external_media_container_proxy_dbus_arg_info_list_containers_offset = {-1, "offset", "u"};
static const GDBusArgInfo _rygel_external_media_container_proxy_dbus_arg_info_list_containers_max_count = {-1, "max_count", "u"};
static const GDBusArgInfo _rygel_external_media_container_proxy_dbus_arg_info_list_containers_filter = {-1, "filter", "as"};
static const GDBusArgInfo _rygel_external_media_container_proxy_dbus_arg_info_list_containers_result = {-1, "result", "aa{sv}"};
static const GDBusArgInfo * const _rygel_external_media_container_proxy_dbus_arg_info_list_containers_in[] = {&_rygel_external_media_container_proxy_dbus_arg_info_list_containers_offset, &_rygel_external_media_container_proxy_dbus_arg_info_list_containers_max_count, &_rygel_external_media_container_proxy_dbus_arg_info_list_containers_filter, NULL};
static const GDBusArgInfo * const _rygel_external_media_container_proxy_dbus_arg_info_list_containers_out[] = {&_rygel_external_media_container_proxy_dbus_arg_info_list_containers_result, NULL};
static const GDBusMethodInfo _rygel_external_media_container_proxy_dbus_method_info_list_containers = {-1, "ListContainers", (GDBusArgInfo **) (&_rygel_external_media_container_proxy_dbus_arg_info_list_containers_in), (GDBusArgInfo **) (&_rygel_external_media_container_proxy_dbus_arg_info_list_containers_out)};
static const GDBusArgInfo _rygel_external_media_container_proxy_dbus_arg_info_list_items_offset = {-1, "offset", "u"};
static const GDBusArgInfo _rygel_external_media_container_proxy_dbus_arg_info_list_items_max_count = {-1, "max_count", "u"};
static const GDBusArgInfo _rygel_external_media_container_proxy_dbus_arg_info_list_items_filter = {-1, "filter", "as"};
static const GDBusArgInfo _rygel_external_media_container_proxy_dbus_arg_info_list_items_result = {-1, "result", "aa{sv}"};
static const GDBusArgInfo * const _rygel_external_media_container_proxy_dbus_arg_info_list_items_in[] = {&_rygel_external_media_container_proxy_dbus_arg_info_list_items_offset, &_rygel_external_media_container_proxy_dbus_arg_info_list_items_max_count, &_rygel_external_media_container_proxy_dbus_arg_info_list_items_filter, NULL};
static const GDBusArgInfo * const _rygel_external_media_container_proxy_dbus_arg_info_list_items_out[] = {&_rygel_external_media_container_proxy_dbus_arg_info_list_items_result, NULL};
static const GDBusMethodInfo _rygel_external_media_container_proxy_dbus_method_info_list_items = {-1, "ListItems", (GDBusArgInfo **) (&_rygel_external_media_container_proxy_dbus_arg_info_list_items_in), (GDBusArgInfo **) (&_rygel_external_media_container_proxy_dbus_arg_info_list_items_out)};
static const GDBusArgInfo _rygel_external_media_container_proxy_dbus_arg_info_search_objects_query = {-1, "query", "s"};
static const GDBusArgInfo _rygel_external_media_container_proxy_dbus_arg_info_search_objects_offset = {-1, "offset", "u"};
static const GDBusArgInfo _rygel_external_media_container_proxy_dbus_arg_info_search_objects_max_count = {-1, "max_count", "u"};
static const GDBusArgInfo _rygel_external_media_container_proxy_dbus_arg_info_search_objects_filter = {-1, "filter", "as"};
static const GDBusArgInfo _rygel_external_media_container_proxy_dbus_arg_info_search_objects_result = {-1, "result", "aa{sv}"};
static const GDBusArgInfo * const _rygel_external_media_container_proxy_dbus_arg_info_search_objects_in[] = {&_rygel_external_media_container_proxy_dbus_arg_info_search_objects_query, &_rygel_external_media_container_proxy_dbus_arg_info_search_objects_offset, &_rygel_external_media_container_proxy_dbus_arg_info_search_objects_max_count, &_rygel_external_media_container_proxy_dbus_arg_info_search_objects_filter, NULL};
static const GDBusArgInfo * const _rygel_external_media_container_proxy_dbus_arg_info_search_objects_out[] = {&_rygel_external_media_container_proxy_dbus_arg_info_search_objects_result, NULL};
static const GDBusMethodInfo _rygel_external_media_container_proxy_dbus_method_info_search_objects = {-1, "SearchObjects", (GDBusArgInfo **) (&_rygel_external_media_container_proxy_dbus_arg_info_search_objects_in), (GDBusArgInfo **) (&_rygel_external_media_container_proxy_dbus_arg_info_search_objects_out)};
static const GDBusMethodInfo * const _rygel_external_media_container_proxy_dbus_method_info[] = {&_rygel_external_media_container_proxy_dbus_method_info_list_children, &_rygel_external_media_container_proxy_dbus_method_info_list_containers, &_rygel_external_media_container_proxy_dbus_method_info_list_items, &_rygel_external_media_container_proxy_dbus_method_info_search_objects, NULL};
static const GDBusArgInfo * const _rygel_external_media_container_proxy_dbus_arg_info_updated[] = {NULL};
static const GDBusSignalInfo _rygel_external_media_container_proxy_dbus_signal_info_updated = {-1, "Updated", (GDBusArgInfo **) (&_rygel_external_media_container_proxy_dbus_arg_info_updated)};
static const GDBusSignalInfo * const _rygel_external_media_container_proxy_dbus_signal_info[] = {&_rygel_external_media_container_proxy_dbus_signal_info_updated, NULL};
static const GDBusPropertyInfo _rygel_external_media_container_proxy_dbus_property_info_child_count = {-1, "ChildCount", "u", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo _rygel_external_media_container_proxy_dbus_property_info_item_count = {-1, "ItemCount", "u", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo _rygel_external_media_container_proxy_dbus_property_info_container_count = {-1, "ContainerCount", "u", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo _rygel_external_media_container_proxy_dbus_property_info_searchable = {-1, "Searchable", "b", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo _rygel_external_media_container_proxy_dbus_property_info_icon = {-1, "Icon", "o", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo * const _rygel_external_media_container_proxy_dbus_property_info[] = {&_rygel_external_media_container_proxy_dbus_property_info_child_count, &_rygel_external_media_container_proxy_dbus_property_info_item_count, &_rygel_external_media_container_proxy_dbus_property_info_container_count, &_rygel_external_media_container_proxy_dbus_property_info_searchable, &_rygel_external_media_container_proxy_dbus_property_info_icon, NULL};
static const GDBusInterfaceInfo _rygel_external_media_container_proxy_dbus_interface_info = {-1, "org.gnome.UPnP.MediaContainer2", (GDBusMethodInfo **) (&_rygel_external_media_container_proxy_dbus_method_info), (GDBusSignalInfo **) (&_rygel_external_media_container_proxy_dbus_signal_info), (GDBusPropertyInfo **) (&_rygel_external_media_container_proxy_dbus_property_info)};
static const GDBusInterfaceVTable _rygel_external_media_container_proxy_dbus_interface_vtable = {rygel_external_media_container_proxy_dbus_interface_method_call, rygel_external_media_container_proxy_dbus_interface_get_property, rygel_external_media_container_proxy_dbus_interface_set_property};
const gchar* RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_PROPERTIES[19] = {"URLs", "MIMEType", "DLNAProfile", "Size", "Artist", "Album", "Date", "Duration", "Bitrate", "SampleRate", "BitsPerSample", "Width", "Height", "ColorDepth", "PixelWidth", "PixelHeight", "Thumbnail", "AlbumArt", "TrackNumber"};
static const GDBusMethodInfo * const _rygel_external_media_item_proxy_dbus_method_info[] = {NULL};
static const GDBusSignalInfo * const _rygel_external_media_item_proxy_dbus_signal_info[] = {NULL};
static const GDBusPropertyInfo _rygel_external_media_item_proxy_dbus_property_info_urls = {-1, "URLs", "as", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo _rygel_external_media_item_proxy_dbus_property_info_mime_type = {-1, "MimeType", "s", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo _rygel_external_media_item_proxy_dbus_property_info_size = {-1, "Size", "i", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo _rygel_external_media_item_proxy_dbus_property_info_artist = {-1, "Artist", "s", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo _rygel_external_media_item_proxy_dbus_property_info_album = {-1, "Album", "s", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo _rygel_external_media_item_proxy_dbus_property_info_date = {-1, "Date", "s", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo _rygel_external_media_item_proxy_dbus_property_info_genre = {-1, "Genre", "s", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo _rygel_external_media_item_proxy_dbus_property_info_dlna_profile = {-1, "DlnaProfile", "s", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo _rygel_external_media_item_proxy_dbus_property_info_duration = {-1, "Duration", "i", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo _rygel_external_media_item_proxy_dbus_property_info_bitrate = {-1, "Bitrate", "i", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo _rygel_external_media_item_proxy_dbus_property_info_sample_rate = {-1, "SampleRate", "i", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo _rygel_external_media_item_proxy_dbus_property_info_bits_per_sample = {-1, "BitsPerSample", "i", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo _rygel_external_media_item_proxy_dbus_property_info_width = {-1, "Width", "i", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo _rygel_external_media_item_proxy_dbus_property_info_height = {-1, "Height", "i", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo _rygel_external_media_item_proxy_dbus_property_info_color_depth = {-1, "ColorDepth", "i", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo _rygel_external_media_item_proxy_dbus_property_info_thumbnail = {-1, "Thumbnail", "o", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo _rygel_external_media_item_proxy_dbus_property_info_album_art = {-1, "AlbumArt", "o", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE};
static const GDBusPropertyInfo * const _rygel_external_media_item_proxy_dbus_property_info[] = {&_rygel_external_media_item_proxy_dbus_property_info_urls, &_rygel_external_media_item_proxy_dbus_property_info_mime_type, &_rygel_external_media_item_proxy_dbus_property_info_size, &_rygel_external_media_item_proxy_dbus_property_info_artist, &_rygel_external_media_item_proxy_dbus_property_info_album, &_rygel_external_media_item_proxy_dbus_property_info_date, &_rygel_external_media_item_proxy_dbus_property_info_genre, &_rygel_external_media_item_proxy_dbus_property_info_dlna_profile, &_rygel_external_media_item_proxy_dbus_property_info_duration, &_rygel_external_media_item_proxy_dbus_property_info_bitrate, &_rygel_external_media_item_proxy_dbus_property_info_sample_rate, &_rygel_external_media_item_proxy_dbus_property_info_bits_per_sample, &_rygel_external_media_item_proxy_dbus_property_info_width, &_rygel_external_media_item_proxy_dbus_property_info_height, &_rygel_external_media_item_proxy_dbus_property_info_color_depth, &_rygel_external_media_item_proxy_dbus_property_info_thumbnail, &_rygel_external_media_item_proxy_dbus_property_info_album_art, NULL};
static const GDBusInterfaceInfo _rygel_external_media_item_proxy_dbus_interface_info = {-1, "org.gnome.UPnP.MediaItem2", (GDBusMethodInfo **) (&_rygel_external_media_item_proxy_dbus_method_info), (GDBusSignalInfo **) (&_rygel_external_media_item_proxy_dbus_signal_info), (GDBusPropertyInfo **) (&_rygel_external_media_item_proxy_dbus_property_info)};
static const GDBusInterfaceVTable _rygel_external_media_item_proxy_dbus_interface_vtable = {rygel_external_media_item_proxy_dbus_interface_method_call, rygel_external_media_item_proxy_dbus_interface_get_property, rygel_external_media_item_proxy_dbus_interface_set_property};

char* rygel_external_media_object_proxy_get_parent (RygelExternalMediaObjectProxy* self) {
	g_return_val_if_fail (self != NULL, NULL);
	return RYGEL_EXTERNAL_MEDIA_OBJECT_PROXY_GET_INTERFACE (self)->get_parent (self);
}


void rygel_external_media_object_proxy_set_parent (RygelExternalMediaObjectProxy* self, const char* value) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_OBJECT_PROXY_GET_INTERFACE (self)->set_parent (self, value);
}


gchar* rygel_external_media_object_proxy_get_display_name (RygelExternalMediaObjectProxy* self) {
	g_return_val_if_fail (self != NULL, NULL);
	return RYGEL_EXTERNAL_MEDIA_OBJECT_PROXY_GET_INTERFACE (self)->get_display_name (self);
}


void rygel_external_media_object_proxy_set_display_name (RygelExternalMediaObjectProxy* self, const gchar* value) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_OBJECT_PROXY_GET_INTERFACE (self)->set_display_name (self, value);
}


gchar* rygel_external_media_object_proxy_get_object_type (RygelExternalMediaObjectProxy* self) {
	g_return_val_if_fail (self != NULL, NULL);
	return RYGEL_EXTERNAL_MEDIA_OBJECT_PROXY_GET_INTERFACE (self)->get_object_type (self);
}


void rygel_external_media_object_proxy_set_object_type (RygelExternalMediaObjectProxy* self, const gchar* value) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_OBJECT_PROXY_GET_INTERFACE (self)->set_object_type (self, value);
}


static void rygel_external_media_object_proxy_base_init (RygelExternalMediaObjectProxyIface * iface) {
	static gboolean initialized = FALSE;
	if (!initialized) {
		initialized = TRUE;
	}
}


GType rygel_external_media_object_proxy_get_type (void) {
	static volatile gsize rygel_external_media_object_proxy_type_id__volatile = 0;
	if (g_once_init_enter (&rygel_external_media_object_proxy_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (RygelExternalMediaObjectProxyIface), (GBaseInitFunc) rygel_external_media_object_proxy_base_init, (GBaseFinalizeFunc) NULL, (GClassInitFunc) NULL, (GClassFinalizeFunc) NULL, NULL, 0, 0, (GInstanceInitFunc) NULL, NULL };
		GType rygel_external_media_object_proxy_type_id;
		rygel_external_media_object_proxy_type_id = g_type_register_static (G_TYPE_INTERFACE, "RygelExternalMediaObjectProxy", &g_define_type_info, 0);
		g_type_interface_add_prerequisite (rygel_external_media_object_proxy_type_id, G_TYPE_DBUS_PROXY);
		g_type_set_qdata (rygel_external_media_object_proxy_type_id, g_quark_from_static_string ("vala-dbus-proxy-type"), (void*) rygel_external_media_object_proxy_proxy_get_type);
		g_type_set_qdata (rygel_external_media_object_proxy_type_id, g_quark_from_static_string ("vala-dbus-interface-name"), "org.gnome.UPnP.MediaObject2");
		g_type_set_qdata (rygel_external_media_object_proxy_type_id, g_quark_from_static_string ("vala-dbus-register-object"), (void*) rygel_external_media_object_proxy_register_object);
		g_once_init_leave (&rygel_external_media_object_proxy_type_id__volatile, rygel_external_media_object_proxy_type_id);
	}
	return rygel_external_media_object_proxy_type_id__volatile;
}


G_DEFINE_TYPE_EXTENDED (RygelExternalMediaObjectProxyProxy, rygel_external_media_object_proxy_proxy, G_TYPE_DBUS_PROXY, 0, G_IMPLEMENT_INTERFACE (RYGEL_EXTERNAL_TYPE_MEDIA_OBJECT_PROXY, rygel_external_media_object_proxy_proxy_rygel_external_media_object_proxy_interface_init) )
static void rygel_external_media_object_proxy_proxy_class_init (RygelExternalMediaObjectProxyProxyClass* klass) {
	G_DBUS_PROXY_CLASS (klass)->g_signal = rygel_external_media_object_proxy_proxy_g_signal;
}


static void rygel_external_media_object_proxy_proxy_g_signal (GDBusProxy* proxy, const gchar* sender_name, const gchar* signal_name, GVariant* parameters) {
}


static void rygel_external_media_object_proxy_proxy_init (RygelExternalMediaObjectProxyProxy* self) {
}


static char* rygel_external_media_object_proxy_dbus_proxy_get_parent (RygelExternalMediaObjectProxy* self) {
	GVariant *_inner_reply;
	char* _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Parent");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaObject2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Parent"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return NULL;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_dup_string (_inner_reply, NULL);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_object_proxy_dbus_proxy_set_parent (RygelExternalMediaObjectProxy* self, const char* value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaObject2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Parent"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_object_path (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static gchar* rygel_external_media_object_proxy_dbus_proxy_get_display_name (RygelExternalMediaObjectProxy* self) {
	GVariant *_inner_reply;
	gchar* _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "DisplayName");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaObject2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("DisplayName"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return NULL;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_dup_string (_inner_reply, NULL);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_object_proxy_dbus_proxy_set_display_name (RygelExternalMediaObjectProxy* self, const gchar* value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaObject2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("DisplayName"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static gchar* rygel_external_media_object_proxy_dbus_proxy_get_object_type (RygelExternalMediaObjectProxy* self) {
	GVariant *_inner_reply;
	gchar* _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Type");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaObject2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Type"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return NULL;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_dup_string (_inner_reply, NULL);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_object_proxy_dbus_proxy_set_object_type (RygelExternalMediaObjectProxy* self, const gchar* value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaObject2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Type"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static void rygel_external_media_object_proxy_proxy_rygel_external_media_object_proxy_interface_init (RygelExternalMediaObjectProxyIface* iface) {
	iface->get_parent = rygel_external_media_object_proxy_dbus_proxy_get_parent;
	iface->set_parent = rygel_external_media_object_proxy_dbus_proxy_set_parent;
	iface->get_display_name = rygel_external_media_object_proxy_dbus_proxy_get_display_name;
	iface->set_display_name = rygel_external_media_object_proxy_dbus_proxy_set_display_name;
	iface->get_object_type = rygel_external_media_object_proxy_dbus_proxy_get_object_type;
	iface->set_object_type = rygel_external_media_object_proxy_dbus_proxy_set_object_type;
}


static void rygel_external_media_object_proxy_dbus_interface_method_call (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* method_name, GVariant* parameters, GDBusMethodInvocation* invocation, gpointer user_data) {
	gpointer* data;
	gpointer object;
	data = user_data;
	object = data[0];
	g_object_unref (invocation);
}


static GVariant* _dbus_rygel_external_media_object_proxy_get_parent (RygelExternalMediaObjectProxy* self) {
	char* result;
	GVariant* _reply;
	result = rygel_external_media_object_proxy_get_parent (self);
	_reply = g_variant_new_object_path (result);
	_g_free0 (result);
	return _reply;
}


static GVariant* _dbus_rygel_external_media_object_proxy_get_display_name (RygelExternalMediaObjectProxy* self) {
	gchar* result;
	GVariant* _reply;
	result = rygel_external_media_object_proxy_get_display_name (self);
	_reply = g_variant_new_string (result);
	_g_free0 (result);
	return _reply;
}


static GVariant* _dbus_rygel_external_media_object_proxy_get_object_type (RygelExternalMediaObjectProxy* self) {
	gchar* result;
	GVariant* _reply;
	result = rygel_external_media_object_proxy_get_object_type (self);
	_reply = g_variant_new_string (result);
	_g_free0 (result);
	return _reply;
}


static GVariant* rygel_external_media_object_proxy_dbus_interface_get_property (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* property_name, GError** error, gpointer user_data) {
	gpointer* data;
	gpointer object;
	data = user_data;
	object = data[0];
	if (strcmp (property_name, "Parent") == 0) {
		return _dbus_rygel_external_media_object_proxy_get_parent (object);
	} else if (strcmp (property_name, "DisplayName") == 0) {
		return _dbus_rygel_external_media_object_proxy_get_display_name (object);
	} else if (strcmp (property_name, "Type") == 0) {
		return _dbus_rygel_external_media_object_proxy_get_object_type (object);
	}
	return NULL;
}


static void _dbus_rygel_external_media_object_proxy_set_parent (RygelExternalMediaObjectProxy* self, GVariant* _value) {
	char* value = NULL;
	value = g_variant_dup_string (_value, NULL);
	rygel_external_media_object_proxy_set_parent (self, value);
	_g_free0 (value);
}


static void _dbus_rygel_external_media_object_proxy_set_display_name (RygelExternalMediaObjectProxy* self, GVariant* _value) {
	gchar* value = NULL;
	value = g_variant_dup_string (_value, NULL);
	rygel_external_media_object_proxy_set_display_name (self, value);
	_g_free0 (value);
}


static void _dbus_rygel_external_media_object_proxy_set_object_type (RygelExternalMediaObjectProxy* self, GVariant* _value) {
	gchar* value = NULL;
	value = g_variant_dup_string (_value, NULL);
	rygel_external_media_object_proxy_set_object_type (self, value);
	_g_free0 (value);
}


static gboolean rygel_external_media_object_proxy_dbus_interface_set_property (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* property_name, GVariant* value, GError** error, gpointer user_data) {
	gpointer* data;
	gpointer object;
	data = user_data;
	object = data[0];
	if (strcmp (property_name, "Parent") == 0) {
		_dbus_rygel_external_media_object_proxy_set_parent (object, value);
		return TRUE;
	} else if (strcmp (property_name, "DisplayName") == 0) {
		_dbus_rygel_external_media_object_proxy_set_display_name (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Type") == 0) {
		_dbus_rygel_external_media_object_proxy_set_object_type (object, value);
		return TRUE;
	}
	return FALSE;
}


guint rygel_external_media_object_proxy_register_object (gpointer object, GDBusConnection* connection, const gchar* path, GError** error) {
	guint result;
	gpointer *data;
	data = g_new (gpointer, 3);
	data[0] = g_object_ref (object);
	data[1] = g_object_ref (connection);
	data[2] = g_strdup (path);
	result = g_dbus_connection_register_object (connection, path, (GDBusInterfaceInfo *) (&_rygel_external_media_object_proxy_dbus_interface_info), &_rygel_external_media_object_proxy_dbus_interface_vtable, data, _rygel_external_media_object_proxy_unregister_object, error);
	if (!result) {
		return 0;
	}
	return result;
}


static void _rygel_external_media_object_proxy_unregister_object (gpointer user_data) {
	gpointer* data;
	data = user_data;
	g_object_unref (data[0]);
	g_object_unref (data[1]);
	g_free (data[2]);
	g_free (data);
}


void rygel_external_media_container_proxy_list_children (RygelExternalMediaContainerProxy* self, guint offset, guint max_count, gchar** filter, int filter_length1, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	RYGEL_EXTERNAL_MEDIA_CONTAINER_PROXY_GET_INTERFACE (self)->list_children (self, offset, max_count, filter, filter_length1, _callback_, _user_data_);
}


GHashTable** rygel_external_media_container_proxy_list_children_finish (RygelExternalMediaContainerProxy* self, GAsyncResult* _res_, int* result_length1, GError** error) {
	return RYGEL_EXTERNAL_MEDIA_CONTAINER_PROXY_GET_INTERFACE (self)->list_children_finish (self, _res_, result_length1, error);
}


void rygel_external_media_container_proxy_list_containers (RygelExternalMediaContainerProxy* self, guint offset, guint max_count, gchar** filter, int filter_length1, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	RYGEL_EXTERNAL_MEDIA_CONTAINER_PROXY_GET_INTERFACE (self)->list_containers (self, offset, max_count, filter, filter_length1, _callback_, _user_data_);
}


GHashTable** rygel_external_media_container_proxy_list_containers_finish (RygelExternalMediaContainerProxy* self, GAsyncResult* _res_, int* result_length1, GError** error) {
	return RYGEL_EXTERNAL_MEDIA_CONTAINER_PROXY_GET_INTERFACE (self)->list_containers_finish (self, _res_, result_length1, error);
}


void rygel_external_media_container_proxy_list_items (RygelExternalMediaContainerProxy* self, guint offset, guint max_count, gchar** filter, int filter_length1, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	RYGEL_EXTERNAL_MEDIA_CONTAINER_PROXY_GET_INTERFACE (self)->list_items (self, offset, max_count, filter, filter_length1, _callback_, _user_data_);
}


GHashTable** rygel_external_media_container_proxy_list_items_finish (RygelExternalMediaContainerProxy* self, GAsyncResult* _res_, int* result_length1, GError** error) {
	return RYGEL_EXTERNAL_MEDIA_CONTAINER_PROXY_GET_INTERFACE (self)->list_items_finish (self, _res_, result_length1, error);
}


void rygel_external_media_container_proxy_search_objects (RygelExternalMediaContainerProxy* self, const gchar* query, guint offset, guint max_count, gchar** filter, int filter_length1, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	RYGEL_EXTERNAL_MEDIA_CONTAINER_PROXY_GET_INTERFACE (self)->search_objects (self, query, offset, max_count, filter, filter_length1, _callback_, _user_data_);
}


GHashTable** rygel_external_media_container_proxy_search_objects_finish (RygelExternalMediaContainerProxy* self, GAsyncResult* _res_, int* result_length1, GError** error) {
	return RYGEL_EXTERNAL_MEDIA_CONTAINER_PROXY_GET_INTERFACE (self)->search_objects_finish (self, _res_, result_length1, error);
}


guint rygel_external_media_container_proxy_get_child_count (RygelExternalMediaContainerProxy* self) {
	g_return_val_if_fail (self != NULL, 0U);
	return RYGEL_EXTERNAL_MEDIA_CONTAINER_PROXY_GET_INTERFACE (self)->get_child_count (self);
}


void rygel_external_media_container_proxy_set_child_count (RygelExternalMediaContainerProxy* self, guint value) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_CONTAINER_PROXY_GET_INTERFACE (self)->set_child_count (self, value);
}


guint rygel_external_media_container_proxy_get_item_count (RygelExternalMediaContainerProxy* self) {
	g_return_val_if_fail (self != NULL, 0U);
	return RYGEL_EXTERNAL_MEDIA_CONTAINER_PROXY_GET_INTERFACE (self)->get_item_count (self);
}


void rygel_external_media_container_proxy_set_item_count (RygelExternalMediaContainerProxy* self, guint value) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_CONTAINER_PROXY_GET_INTERFACE (self)->set_item_count (self, value);
}


guint rygel_external_media_container_proxy_get_container_count (RygelExternalMediaContainerProxy* self) {
	g_return_val_if_fail (self != NULL, 0U);
	return RYGEL_EXTERNAL_MEDIA_CONTAINER_PROXY_GET_INTERFACE (self)->get_container_count (self);
}


void rygel_external_media_container_proxy_set_container_count (RygelExternalMediaContainerProxy* self, guint value) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_CONTAINER_PROXY_GET_INTERFACE (self)->set_container_count (self, value);
}


gboolean rygel_external_media_container_proxy_get_searchable (RygelExternalMediaContainerProxy* self) {
	g_return_val_if_fail (self != NULL, FALSE);
	return RYGEL_EXTERNAL_MEDIA_CONTAINER_PROXY_GET_INTERFACE (self)->get_searchable (self);
}


void rygel_external_media_container_proxy_set_searchable (RygelExternalMediaContainerProxy* self, gboolean value) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_CONTAINER_PROXY_GET_INTERFACE (self)->set_searchable (self, value);
}


char* rygel_external_media_container_proxy_get_icon (RygelExternalMediaContainerProxy* self) {
	g_return_val_if_fail (self != NULL, NULL);
	return RYGEL_EXTERNAL_MEDIA_CONTAINER_PROXY_GET_INTERFACE (self)->get_icon (self);
}


void rygel_external_media_container_proxy_set_icon (RygelExternalMediaContainerProxy* self, const char* value) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_CONTAINER_PROXY_GET_INTERFACE (self)->set_icon (self, value);
}


static void rygel_external_media_container_proxy_base_init (RygelExternalMediaContainerProxyIface * iface) {
	static gboolean initialized = FALSE;
	if (!initialized) {
		initialized = TRUE;
		g_signal_new ("updated", RYGEL_EXTERNAL_TYPE_MEDIA_CONTAINER_PROXY, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
	}
}


GType rygel_external_media_container_proxy_get_type (void) {
	static volatile gsize rygel_external_media_container_proxy_type_id__volatile = 0;
	if (g_once_init_enter (&rygel_external_media_container_proxy_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (RygelExternalMediaContainerProxyIface), (GBaseInitFunc) rygel_external_media_container_proxy_base_init, (GBaseFinalizeFunc) NULL, (GClassInitFunc) NULL, (GClassFinalizeFunc) NULL, NULL, 0, 0, (GInstanceInitFunc) NULL, NULL };
		GType rygel_external_media_container_proxy_type_id;
		rygel_external_media_container_proxy_type_id = g_type_register_static (G_TYPE_INTERFACE, "RygelExternalMediaContainerProxy", &g_define_type_info, 0);
		g_type_interface_add_prerequisite (rygel_external_media_container_proxy_type_id, G_TYPE_DBUS_PROXY);
		g_type_interface_add_prerequisite (rygel_external_media_container_proxy_type_id, RYGEL_EXTERNAL_TYPE_MEDIA_OBJECT_PROXY);
		g_type_set_qdata (rygel_external_media_container_proxy_type_id, g_quark_from_static_string ("vala-dbus-proxy-type"), (void*) rygel_external_media_container_proxy_proxy_get_type);
		g_type_set_qdata (rygel_external_media_container_proxy_type_id, g_quark_from_static_string ("vala-dbus-interface-name"), "org.gnome.UPnP.MediaContainer2");
		g_type_set_qdata (rygel_external_media_container_proxy_type_id, g_quark_from_static_string ("vala-dbus-register-object"), (void*) rygel_external_media_container_proxy_register_object);
		g_once_init_leave (&rygel_external_media_container_proxy_type_id__volatile, rygel_external_media_container_proxy_type_id);
	}
	return rygel_external_media_container_proxy_type_id__volatile;
}


G_DEFINE_TYPE_EXTENDED (RygelExternalMediaContainerProxyProxy, rygel_external_media_container_proxy_proxy, G_TYPE_DBUS_PROXY, 0, G_IMPLEMENT_INTERFACE (RYGEL_EXTERNAL_TYPE_MEDIA_OBJECT_PROXY, rygel_external_media_container_proxy_proxy_rygel_external_media_object_proxy_interface_init) G_IMPLEMENT_INTERFACE (RYGEL_EXTERNAL_TYPE_MEDIA_CONTAINER_PROXY, rygel_external_media_container_proxy_proxy_rygel_external_media_container_proxy_interface_init) )
static void rygel_external_media_container_proxy_proxy_class_init (RygelExternalMediaContainerProxyProxyClass* klass) {
	G_DBUS_PROXY_CLASS (klass)->g_signal = rygel_external_media_container_proxy_proxy_g_signal;
}


static void _dbus_handle_rygel_external_media_container_proxy_updated (RygelExternalMediaContainerProxy* self, GVariant* parameters) {
	GVariantIter _arguments_iter;
	g_variant_iter_init (&_arguments_iter, parameters);
	g_signal_emit_by_name (self, "updated");
}


static void rygel_external_media_container_proxy_proxy_g_signal (GDBusProxy* proxy, const gchar* sender_name, const gchar* signal_name, GVariant* parameters) {
	if (strcmp (signal_name, "Updated") == 0) {
		_dbus_handle_rygel_external_media_container_proxy_updated ((RygelExternalMediaContainerProxy*) proxy, parameters);
	}
}


static void rygel_external_media_container_proxy_proxy_init (RygelExternalMediaContainerProxyProxy* self) {
}


static char* rygel_external_media_container_proxy_dbus_proxy_get_parent (RygelExternalMediaObjectProxy* self) {
	GVariant *_inner_reply;
	char* _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Parent");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaObject2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Parent"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return NULL;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_dup_string (_inner_reply, NULL);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_container_proxy_dbus_proxy_set_parent (RygelExternalMediaObjectProxy* self, const char* value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaObject2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Parent"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_object_path (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static gchar* rygel_external_media_container_proxy_dbus_proxy_get_display_name (RygelExternalMediaObjectProxy* self) {
	GVariant *_inner_reply;
	gchar* _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "DisplayName");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaObject2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("DisplayName"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return NULL;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_dup_string (_inner_reply, NULL);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_container_proxy_dbus_proxy_set_display_name (RygelExternalMediaObjectProxy* self, const gchar* value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaObject2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("DisplayName"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static gchar* rygel_external_media_container_proxy_dbus_proxy_get_object_type (RygelExternalMediaObjectProxy* self) {
	GVariant *_inner_reply;
	gchar* _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Type");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaObject2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Type"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return NULL;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_dup_string (_inner_reply, NULL);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_container_proxy_dbus_proxy_set_object_type (RygelExternalMediaObjectProxy* self, const gchar* value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaObject2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Type"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static void rygel_external_media_container_proxy_proxy_rygel_external_media_object_proxy_interface_init (RygelExternalMediaObjectProxyIface* iface) {
	iface->get_parent = rygel_external_media_container_proxy_dbus_proxy_get_parent;
	iface->set_parent = rygel_external_media_container_proxy_dbus_proxy_set_parent;
	iface->get_display_name = rygel_external_media_container_proxy_dbus_proxy_get_display_name;
	iface->set_display_name = rygel_external_media_container_proxy_dbus_proxy_set_display_name;
	iface->get_object_type = rygel_external_media_container_proxy_dbus_proxy_get_object_type;
	iface->set_object_type = rygel_external_media_container_proxy_dbus_proxy_set_object_type;
}


static void _vala_g_async_ready_callback (GObject *source_object, GAsyncResult *res, void *user_data) {
	g_simple_async_result_set_op_res_gpointer (user_data, g_object_ref (res), g_object_unref);
	g_simple_async_result_complete (user_data);
	g_object_unref (user_data);
}


static void rygel_external_media_container_proxy_proxy_list_children_async (RygelExternalMediaContainerProxy* self, guint offset, guint max_count, gchar** filter, int filter_length1, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	GDBusMessage *_message;
	GVariant *_arguments;
	GVariantBuilder _arguments_builder;
	gchar** _tmp0_;
	GVariantBuilder _tmp1_;
	int _tmp2_;
	G_DBUS_ERROR;
	_message = g_dbus_message_new_method_call (g_dbus_proxy_get_name ((GDBusProxy *) self), g_dbus_proxy_get_object_path ((GDBusProxy *) self), "org.gnome.UPnP.MediaContainer2", "ListChildren");
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_uint32 (offset));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_uint32 (max_count));
	_tmp0_ = filter;
	g_variant_builder_init (&_tmp1_, G_VARIANT_TYPE ("as"));
	for (_tmp2_ = 0; _tmp2_ < filter_length1; _tmp2_++) {
		g_variant_builder_add_value (&_tmp1_, g_variant_new_string (*_tmp0_));
		_tmp0_++;
	}
	g_variant_builder_add_value (&_arguments_builder, g_variant_builder_end (&_tmp1_));
	_arguments = g_variant_builder_end (&_arguments_builder);
	g_dbus_message_set_body (_message, _arguments);
	g_dbus_connection_send_message_with_reply (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, _vala_g_async_ready_callback, g_simple_async_result_new ((GObject *) self, _callback_, _user_data_, NULL));
	g_object_unref (_message);
}


static GHashTable** rygel_external_media_container_proxy_proxy_list_children_finish (RygelExternalMediaContainerProxy* self, GAsyncResult* _res_, int* result_length1, GError** error) {
	GDBusMessage *_reply_message;
	GVariant *_reply;
	GVariantIter _reply_iter;
	GHashTable** _result;
	int _result_length1;
	GVariant* _tmp3_;
	GHashTable** _tmp4_;
	int _tmp4__length;
	int _tmp4__size;
	int _tmp4__length1;
	GVariantIter _tmp5_;
	GVariant* _tmp6_;
	_reply_message = g_dbus_connection_send_message_with_reply_finish (g_dbus_proxy_get_connection ((GDBusProxy *) self), g_simple_async_result_get_op_res_gpointer ((GSimpleAsyncResult *) _res_), error);
	if (!_reply_message) {
		return NULL;
	}
	if (g_dbus_message_to_gerror (_reply_message, error)) {
		g_object_unref (_reply_message);
		return NULL;
	}
	_reply = g_dbus_message_get_body (_reply_message);
	g_variant_iter_init (&_reply_iter, _reply);
	_result_length1 = 0;
	_tmp3_ = g_variant_iter_next_value (&_reply_iter);
	_tmp4_ = g_new (GHashTable*, 5);
	_tmp4__length = 0;
	_tmp4__size = 4;
	_tmp4__length1 = 0;
	g_variant_iter_init (&_tmp5_, _tmp3_);
	for (; (_tmp6_ = g_variant_iter_next_value (&_tmp5_)) != NULL; _tmp4__length1++) {
		GHashTable* _tmp7_;
		GVariantIter _tmp8_;
		GVariant* _tmp9_;
		GVariant* _tmp10_;
		if (_tmp4__size == _tmp4__length) {
			_tmp4__size = 2 * _tmp4__size;
			_tmp4_ = g_renew (GHashTable*, _tmp4_, _tmp4__size + 1);
		}
		_tmp7_ = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL);
		g_variant_iter_init (&_tmp8_, _tmp6_);
		while (g_variant_iter_loop (&_tmp8_, "{?*}", &_tmp9_, &_tmp10_)) {
			g_hash_table_insert (_tmp7_, g_variant_dup_string (_tmp9_, NULL), g_variant_get_variant (_tmp10_));
		}
		_tmp4_[_tmp4__length++] = _tmp7_;
		g_variant_unref (_tmp6_);
	}
	_result_length1 = _tmp4__length1;
	_tmp4_[_tmp4__length] = NULL;
	_result = _tmp4_;
	g_variant_unref (_tmp3_);
	*result_length1 = _result_length1;
	g_object_unref (_reply_message);
	return _result;
}


static void rygel_external_media_container_proxy_proxy_list_containers_async (RygelExternalMediaContainerProxy* self, guint offset, guint max_count, gchar** filter, int filter_length1, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	GDBusMessage *_message;
	GVariant *_arguments;
	GVariantBuilder _arguments_builder;
	gchar** _tmp11_;
	GVariantBuilder _tmp12_;
	int _tmp13_;
	G_DBUS_ERROR;
	_message = g_dbus_message_new_method_call (g_dbus_proxy_get_name ((GDBusProxy *) self), g_dbus_proxy_get_object_path ((GDBusProxy *) self), "org.gnome.UPnP.MediaContainer2", "ListContainers");
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_uint32 (offset));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_uint32 (max_count));
	_tmp11_ = filter;
	g_variant_builder_init (&_tmp12_, G_VARIANT_TYPE ("as"));
	for (_tmp13_ = 0; _tmp13_ < filter_length1; _tmp13_++) {
		g_variant_builder_add_value (&_tmp12_, g_variant_new_string (*_tmp11_));
		_tmp11_++;
	}
	g_variant_builder_add_value (&_arguments_builder, g_variant_builder_end (&_tmp12_));
	_arguments = g_variant_builder_end (&_arguments_builder);
	g_dbus_message_set_body (_message, _arguments);
	g_dbus_connection_send_message_with_reply (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, _vala_g_async_ready_callback, g_simple_async_result_new ((GObject *) self, _callback_, _user_data_, NULL));
	g_object_unref (_message);
}


static GHashTable** rygel_external_media_container_proxy_proxy_list_containers_finish (RygelExternalMediaContainerProxy* self, GAsyncResult* _res_, int* result_length1, GError** error) {
	GDBusMessage *_reply_message;
	GVariant *_reply;
	GVariantIter _reply_iter;
	GHashTable** _result;
	int _result_length1;
	GVariant* _tmp14_;
	GHashTable** _tmp15_;
	int _tmp15__length;
	int _tmp15__size;
	int _tmp15__length1;
	GVariantIter _tmp16_;
	GVariant* _tmp17_;
	_reply_message = g_dbus_connection_send_message_with_reply_finish (g_dbus_proxy_get_connection ((GDBusProxy *) self), g_simple_async_result_get_op_res_gpointer ((GSimpleAsyncResult *) _res_), error);
	if (!_reply_message) {
		return NULL;
	}
	if (g_dbus_message_to_gerror (_reply_message, error)) {
		g_object_unref (_reply_message);
		return NULL;
	}
	_reply = g_dbus_message_get_body (_reply_message);
	g_variant_iter_init (&_reply_iter, _reply);
	_result_length1 = 0;
	_tmp14_ = g_variant_iter_next_value (&_reply_iter);
	_tmp15_ = g_new (GHashTable*, 5);
	_tmp15__length = 0;
	_tmp15__size = 4;
	_tmp15__length1 = 0;
	g_variant_iter_init (&_tmp16_, _tmp14_);
	for (; (_tmp17_ = g_variant_iter_next_value (&_tmp16_)) != NULL; _tmp15__length1++) {
		GHashTable* _tmp18_;
		GVariantIter _tmp19_;
		GVariant* _tmp20_;
		GVariant* _tmp21_;
		if (_tmp15__size == _tmp15__length) {
			_tmp15__size = 2 * _tmp15__size;
			_tmp15_ = g_renew (GHashTable*, _tmp15_, _tmp15__size + 1);
		}
		_tmp18_ = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL);
		g_variant_iter_init (&_tmp19_, _tmp17_);
		while (g_variant_iter_loop (&_tmp19_, "{?*}", &_tmp20_, &_tmp21_)) {
			g_hash_table_insert (_tmp18_, g_variant_dup_string (_tmp20_, NULL), g_variant_get_variant (_tmp21_));
		}
		_tmp15_[_tmp15__length++] = _tmp18_;
		g_variant_unref (_tmp17_);
	}
	_result_length1 = _tmp15__length1;
	_tmp15_[_tmp15__length] = NULL;
	_result = _tmp15_;
	g_variant_unref (_tmp14_);
	*result_length1 = _result_length1;
	g_object_unref (_reply_message);
	return _result;
}


static void rygel_external_media_container_proxy_proxy_list_items_async (RygelExternalMediaContainerProxy* self, guint offset, guint max_count, gchar** filter, int filter_length1, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	GDBusMessage *_message;
	GVariant *_arguments;
	GVariantBuilder _arguments_builder;
	gchar** _tmp22_;
	GVariantBuilder _tmp23_;
	int _tmp24_;
	G_DBUS_ERROR;
	_message = g_dbus_message_new_method_call (g_dbus_proxy_get_name ((GDBusProxy *) self), g_dbus_proxy_get_object_path ((GDBusProxy *) self), "org.gnome.UPnP.MediaContainer2", "ListItems");
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_uint32 (offset));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_uint32 (max_count));
	_tmp22_ = filter;
	g_variant_builder_init (&_tmp23_, G_VARIANT_TYPE ("as"));
	for (_tmp24_ = 0; _tmp24_ < filter_length1; _tmp24_++) {
		g_variant_builder_add_value (&_tmp23_, g_variant_new_string (*_tmp22_));
		_tmp22_++;
	}
	g_variant_builder_add_value (&_arguments_builder, g_variant_builder_end (&_tmp23_));
	_arguments = g_variant_builder_end (&_arguments_builder);
	g_dbus_message_set_body (_message, _arguments);
	g_dbus_connection_send_message_with_reply (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, _vala_g_async_ready_callback, g_simple_async_result_new ((GObject *) self, _callback_, _user_data_, NULL));
	g_object_unref (_message);
}


static GHashTable** rygel_external_media_container_proxy_proxy_list_items_finish (RygelExternalMediaContainerProxy* self, GAsyncResult* _res_, int* result_length1, GError** error) {
	GDBusMessage *_reply_message;
	GVariant *_reply;
	GVariantIter _reply_iter;
	GHashTable** _result;
	int _result_length1;
	GVariant* _tmp25_;
	GHashTable** _tmp26_;
	int _tmp26__length;
	int _tmp26__size;
	int _tmp26__length1;
	GVariantIter _tmp27_;
	GVariant* _tmp28_;
	_reply_message = g_dbus_connection_send_message_with_reply_finish (g_dbus_proxy_get_connection ((GDBusProxy *) self), g_simple_async_result_get_op_res_gpointer ((GSimpleAsyncResult *) _res_), error);
	if (!_reply_message) {
		return NULL;
	}
	if (g_dbus_message_to_gerror (_reply_message, error)) {
		g_object_unref (_reply_message);
		return NULL;
	}
	_reply = g_dbus_message_get_body (_reply_message);
	g_variant_iter_init (&_reply_iter, _reply);
	_result_length1 = 0;
	_tmp25_ = g_variant_iter_next_value (&_reply_iter);
	_tmp26_ = g_new (GHashTable*, 5);
	_tmp26__length = 0;
	_tmp26__size = 4;
	_tmp26__length1 = 0;
	g_variant_iter_init (&_tmp27_, _tmp25_);
	for (; (_tmp28_ = g_variant_iter_next_value (&_tmp27_)) != NULL; _tmp26__length1++) {
		GHashTable* _tmp29_;
		GVariantIter _tmp30_;
		GVariant* _tmp31_;
		GVariant* _tmp32_;
		if (_tmp26__size == _tmp26__length) {
			_tmp26__size = 2 * _tmp26__size;
			_tmp26_ = g_renew (GHashTable*, _tmp26_, _tmp26__size + 1);
		}
		_tmp29_ = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL);
		g_variant_iter_init (&_tmp30_, _tmp28_);
		while (g_variant_iter_loop (&_tmp30_, "{?*}", &_tmp31_, &_tmp32_)) {
			g_hash_table_insert (_tmp29_, g_variant_dup_string (_tmp31_, NULL), g_variant_get_variant (_tmp32_));
		}
		_tmp26_[_tmp26__length++] = _tmp29_;
		g_variant_unref (_tmp28_);
	}
	_result_length1 = _tmp26__length1;
	_tmp26_[_tmp26__length] = NULL;
	_result = _tmp26_;
	g_variant_unref (_tmp25_);
	*result_length1 = _result_length1;
	g_object_unref (_reply_message);
	return _result;
}


static void rygel_external_media_container_proxy_proxy_search_objects_async (RygelExternalMediaContainerProxy* self, const gchar* query, guint offset, guint max_count, gchar** filter, int filter_length1, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	GDBusMessage *_message;
	GVariant *_arguments;
	GVariantBuilder _arguments_builder;
	gchar** _tmp33_;
	GVariantBuilder _tmp34_;
	int _tmp35_;
	G_DBUS_ERROR;
	_message = g_dbus_message_new_method_call (g_dbus_proxy_get_name ((GDBusProxy *) self), g_dbus_proxy_get_object_path ((GDBusProxy *) self), "org.gnome.UPnP.MediaContainer2", "SearchObjects");
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (query));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_uint32 (offset));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_uint32 (max_count));
	_tmp33_ = filter;
	g_variant_builder_init (&_tmp34_, G_VARIANT_TYPE ("as"));
	for (_tmp35_ = 0; _tmp35_ < filter_length1; _tmp35_++) {
		g_variant_builder_add_value (&_tmp34_, g_variant_new_string (*_tmp33_));
		_tmp33_++;
	}
	g_variant_builder_add_value (&_arguments_builder, g_variant_builder_end (&_tmp34_));
	_arguments = g_variant_builder_end (&_arguments_builder);
	g_dbus_message_set_body (_message, _arguments);
	g_dbus_connection_send_message_with_reply (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, _vala_g_async_ready_callback, g_simple_async_result_new ((GObject *) self, _callback_, _user_data_, NULL));
	g_object_unref (_message);
}


static GHashTable** rygel_external_media_container_proxy_proxy_search_objects_finish (RygelExternalMediaContainerProxy* self, GAsyncResult* _res_, int* result_length1, GError** error) {
	GDBusMessage *_reply_message;
	GVariant *_reply;
	GVariantIter _reply_iter;
	GHashTable** _result;
	int _result_length1;
	GVariant* _tmp36_;
	GHashTable** _tmp37_;
	int _tmp37__length;
	int _tmp37__size;
	int _tmp37__length1;
	GVariantIter _tmp38_;
	GVariant* _tmp39_;
	_reply_message = g_dbus_connection_send_message_with_reply_finish (g_dbus_proxy_get_connection ((GDBusProxy *) self), g_simple_async_result_get_op_res_gpointer ((GSimpleAsyncResult *) _res_), error);
	if (!_reply_message) {
		return NULL;
	}
	if (g_dbus_message_to_gerror (_reply_message, error)) {
		g_object_unref (_reply_message);
		return NULL;
	}
	_reply = g_dbus_message_get_body (_reply_message);
	g_variant_iter_init (&_reply_iter, _reply);
	_result_length1 = 0;
	_tmp36_ = g_variant_iter_next_value (&_reply_iter);
	_tmp37_ = g_new (GHashTable*, 5);
	_tmp37__length = 0;
	_tmp37__size = 4;
	_tmp37__length1 = 0;
	g_variant_iter_init (&_tmp38_, _tmp36_);
	for (; (_tmp39_ = g_variant_iter_next_value (&_tmp38_)) != NULL; _tmp37__length1++) {
		GHashTable* _tmp40_;
		GVariantIter _tmp41_;
		GVariant* _tmp42_;
		GVariant* _tmp43_;
		if (_tmp37__size == _tmp37__length) {
			_tmp37__size = 2 * _tmp37__size;
			_tmp37_ = g_renew (GHashTable*, _tmp37_, _tmp37__size + 1);
		}
		_tmp40_ = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL);
		g_variant_iter_init (&_tmp41_, _tmp39_);
		while (g_variant_iter_loop (&_tmp41_, "{?*}", &_tmp42_, &_tmp43_)) {
			g_hash_table_insert (_tmp40_, g_variant_dup_string (_tmp42_, NULL), g_variant_get_variant (_tmp43_));
		}
		_tmp37_[_tmp37__length++] = _tmp40_;
		g_variant_unref (_tmp39_);
	}
	_result_length1 = _tmp37__length1;
	_tmp37_[_tmp37__length] = NULL;
	_result = _tmp37_;
	g_variant_unref (_tmp36_);
	*result_length1 = _result_length1;
	g_object_unref (_reply_message);
	return _result;
}


static guint rygel_external_media_container_proxy_dbus_proxy_get_child_count (RygelExternalMediaContainerProxy* self) {
	GVariant *_inner_reply;
	guint _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "ChildCount");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaContainer2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("ChildCount"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return 0U;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_uint32 (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_container_proxy_dbus_proxy_set_child_count (RygelExternalMediaContainerProxy* self, guint value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaContainer2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("ChildCount"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_uint32 (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static guint rygel_external_media_container_proxy_dbus_proxy_get_item_count (RygelExternalMediaContainerProxy* self) {
	GVariant *_inner_reply;
	guint _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "ItemCount");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaContainer2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("ItemCount"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return 0U;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_uint32 (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_container_proxy_dbus_proxy_set_item_count (RygelExternalMediaContainerProxy* self, guint value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaContainer2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("ItemCount"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_uint32 (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static guint rygel_external_media_container_proxy_dbus_proxy_get_container_count (RygelExternalMediaContainerProxy* self) {
	GVariant *_inner_reply;
	guint _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "ContainerCount");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaContainer2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("ContainerCount"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return 0U;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_uint32 (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_container_proxy_dbus_proxy_set_container_count (RygelExternalMediaContainerProxy* self, guint value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaContainer2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("ContainerCount"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_uint32 (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static gboolean rygel_external_media_container_proxy_dbus_proxy_get_searchable (RygelExternalMediaContainerProxy* self) {
	GVariant *_inner_reply;
	gboolean _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Searchable");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaContainer2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Searchable"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return FALSE;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_boolean (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_container_proxy_dbus_proxy_set_searchable (RygelExternalMediaContainerProxy* self, gboolean value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaContainer2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Searchable"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_boolean (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static char* rygel_external_media_container_proxy_dbus_proxy_get_icon (RygelExternalMediaContainerProxy* self) {
	GVariant *_inner_reply;
	char* _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Icon");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaContainer2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Icon"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return NULL;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_dup_string (_inner_reply, NULL);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_container_proxy_dbus_proxy_set_icon (RygelExternalMediaContainerProxy* self, const char* value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaContainer2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Icon"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_object_path (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static void rygel_external_media_container_proxy_proxy_rygel_external_media_container_proxy_interface_init (RygelExternalMediaContainerProxyIface* iface) {
	iface->list_children = rygel_external_media_container_proxy_proxy_list_children_async;
	iface->list_children_finish = rygel_external_media_container_proxy_proxy_list_children_finish;
	iface->list_containers = rygel_external_media_container_proxy_proxy_list_containers_async;
	iface->list_containers_finish = rygel_external_media_container_proxy_proxy_list_containers_finish;
	iface->list_items = rygel_external_media_container_proxy_proxy_list_items_async;
	iface->list_items_finish = rygel_external_media_container_proxy_proxy_list_items_finish;
	iface->search_objects = rygel_external_media_container_proxy_proxy_search_objects_async;
	iface->search_objects_finish = rygel_external_media_container_proxy_proxy_search_objects_finish;
	iface->get_child_count = rygel_external_media_container_proxy_dbus_proxy_get_child_count;
	iface->set_child_count = rygel_external_media_container_proxy_dbus_proxy_set_child_count;
	iface->get_item_count = rygel_external_media_container_proxy_dbus_proxy_get_item_count;
	iface->set_item_count = rygel_external_media_container_proxy_dbus_proxy_set_item_count;
	iface->get_container_count = rygel_external_media_container_proxy_dbus_proxy_get_container_count;
	iface->set_container_count = rygel_external_media_container_proxy_dbus_proxy_set_container_count;
	iface->get_searchable = rygel_external_media_container_proxy_dbus_proxy_get_searchable;
	iface->set_searchable = rygel_external_media_container_proxy_dbus_proxy_set_searchable;
	iface->get_icon = rygel_external_media_container_proxy_dbus_proxy_get_icon;
	iface->set_icon = rygel_external_media_container_proxy_dbus_proxy_set_icon;
}


static void _dbus_rygel_external_media_container_proxy_list_children (RygelExternalMediaContainerProxy* self, GVariant* parameters, GDBusMethodInvocation* invocation) {
	GVariantIter _arguments_iter;
	guint offset = 0U;
	GVariant* _tmp44_;
	guint max_count = 0U;
	GVariant* _tmp45_;
	gchar** filter = NULL;
	int filter_length1 = 0;
	GVariant* _tmp46_;
	gchar** _tmp47_;
	int _tmp47__length;
	int _tmp47__size;
	int _tmp47__length1;
	GVariantIter _tmp48_;
	GVariant* _tmp49_;
	g_variant_iter_init (&_arguments_iter, parameters);
	_tmp44_ = g_variant_iter_next_value (&_arguments_iter);
	offset = g_variant_get_uint32 (_tmp44_);
	g_variant_unref (_tmp44_);
	_tmp45_ = g_variant_iter_next_value (&_arguments_iter);
	max_count = g_variant_get_uint32 (_tmp45_);
	g_variant_unref (_tmp45_);
	_tmp46_ = g_variant_iter_next_value (&_arguments_iter);
	_tmp47_ = g_new (gchar*, 5);
	_tmp47__length = 0;
	_tmp47__size = 4;
	_tmp47__length1 = 0;
	g_variant_iter_init (&_tmp48_, _tmp46_);
	for (; (_tmp49_ = g_variant_iter_next_value (&_tmp48_)) != NULL; _tmp47__length1++) {
		if (_tmp47__size == _tmp47__length) {
			_tmp47__size = 2 * _tmp47__size;
			_tmp47_ = g_renew (gchar*, _tmp47_, _tmp47__size + 1);
		}
		_tmp47_[_tmp47__length++] = g_variant_dup_string (_tmp49_, NULL);
		g_variant_unref (_tmp49_);
	}
	filter_length1 = _tmp47__length1;
	_tmp47_[_tmp47__length] = NULL;
	filter = _tmp47_;
	g_variant_unref (_tmp46_);
	rygel_external_media_container_proxy_list_children (self, offset, max_count, filter, filter_length1, (GAsyncReadyCallback) _dbus_rygel_external_media_container_proxy_list_children_ready, invocation);
	filter = (_vala_array_free (filter, filter_length1, (GDestroyNotify) g_free), NULL);
}


static void _dbus_rygel_external_media_container_proxy_list_children_ready (GObject * source_object, GAsyncResult * _res_, gpointer _user_data_) {
	GDBusMethodInvocation * invocation;
	GError* error = NULL;
	GDBusMessage* _reply_message;
	GVariant* _reply;
	GVariantBuilder _reply_builder;
	GHashTable** result;
	int result_length1 = 0;
	GHashTable** _tmp50_;
	GVariantBuilder _tmp51_;
	int _tmp52_;
	invocation = _user_data_;
	result = rygel_external_media_container_proxy_list_children_finish ((RygelExternalMediaContainerProxy*) source_object, _res_, &result_length1, &error);
	if (error) {
		g_dbus_method_invocation_return_gerror (invocation, error);
		return;
	}
	_reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
	g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
	_tmp50_ = result;
	g_variant_builder_init (&_tmp51_, G_VARIANT_TYPE ("aa{sv}"));
	for (_tmp52_ = 0; _tmp52_ < result_length1; _tmp52_++) {
		GVariantBuilder _tmp53_;
		GHashTableIter _tmp54_;
		gpointer _tmp55_;
		gpointer _tmp56_;
		g_hash_table_iter_init (&_tmp54_, *_tmp50_);
		g_variant_builder_init (&_tmp53_, G_VARIANT_TYPE ("a{sv}"));
		while (g_hash_table_iter_next (&_tmp54_, &_tmp55_, &_tmp56_)) {
			gchar* _key;
			GVariant* _value;
			_key = (gchar*) _tmp55_;
			_value = (GVariant*) _tmp56_;
			g_variant_builder_add (&_tmp53_, "{?*}", g_variant_new_string (_key), g_variant_new_variant (_value));
		}
		g_variant_builder_add_value (&_tmp51_, g_variant_builder_end (&_tmp53_));
		_tmp50_++;
	}
	g_variant_builder_add_value (&_reply_builder, g_variant_builder_end (&_tmp51_));
	result = (_vala_array_free (result, result_length1, (GDestroyNotify) g_hash_table_unref), NULL);
	_reply = g_variant_builder_end (&_reply_builder);
	g_dbus_message_set_body (_reply_message, _reply);
	g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
	g_object_unref (invocation);
	g_object_unref (_reply_message);
}


static void _dbus_rygel_external_media_container_proxy_list_containers (RygelExternalMediaContainerProxy* self, GVariant* parameters, GDBusMethodInvocation* invocation) {
	GVariantIter _arguments_iter;
	guint offset = 0U;
	GVariant* _tmp57_;
	guint max_count = 0U;
	GVariant* _tmp58_;
	gchar** filter = NULL;
	int filter_length1 = 0;
	GVariant* _tmp59_;
	gchar** _tmp60_;
	int _tmp60__length;
	int _tmp60__size;
	int _tmp60__length1;
	GVariantIter _tmp61_;
	GVariant* _tmp62_;
	g_variant_iter_init (&_arguments_iter, parameters);
	_tmp57_ = g_variant_iter_next_value (&_arguments_iter);
	offset = g_variant_get_uint32 (_tmp57_);
	g_variant_unref (_tmp57_);
	_tmp58_ = g_variant_iter_next_value (&_arguments_iter);
	max_count = g_variant_get_uint32 (_tmp58_);
	g_variant_unref (_tmp58_);
	_tmp59_ = g_variant_iter_next_value (&_arguments_iter);
	_tmp60_ = g_new (gchar*, 5);
	_tmp60__length = 0;
	_tmp60__size = 4;
	_tmp60__length1 = 0;
	g_variant_iter_init (&_tmp61_, _tmp59_);
	for (; (_tmp62_ = g_variant_iter_next_value (&_tmp61_)) != NULL; _tmp60__length1++) {
		if (_tmp60__size == _tmp60__length) {
			_tmp60__size = 2 * _tmp60__size;
			_tmp60_ = g_renew (gchar*, _tmp60_, _tmp60__size + 1);
		}
		_tmp60_[_tmp60__length++] = g_variant_dup_string (_tmp62_, NULL);
		g_variant_unref (_tmp62_);
	}
	filter_length1 = _tmp60__length1;
	_tmp60_[_tmp60__length] = NULL;
	filter = _tmp60_;
	g_variant_unref (_tmp59_);
	rygel_external_media_container_proxy_list_containers (self, offset, max_count, filter, filter_length1, (GAsyncReadyCallback) _dbus_rygel_external_media_container_proxy_list_containers_ready, invocation);
	filter = (_vala_array_free (filter, filter_length1, (GDestroyNotify) g_free), NULL);
}


static void _dbus_rygel_external_media_container_proxy_list_containers_ready (GObject * source_object, GAsyncResult * _res_, gpointer _user_data_) {
	GDBusMethodInvocation * invocation;
	GError* error = NULL;
	GDBusMessage* _reply_message;
	GVariant* _reply;
	GVariantBuilder _reply_builder;
	GHashTable** result;
	int result_length1 = 0;
	GHashTable** _tmp63_;
	GVariantBuilder _tmp64_;
	int _tmp65_;
	invocation = _user_data_;
	result = rygel_external_media_container_proxy_list_containers_finish ((RygelExternalMediaContainerProxy*) source_object, _res_, &result_length1, &error);
	if (error) {
		g_dbus_method_invocation_return_gerror (invocation, error);
		return;
	}
	_reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
	g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
	_tmp63_ = result;
	g_variant_builder_init (&_tmp64_, G_VARIANT_TYPE ("aa{sv}"));
	for (_tmp65_ = 0; _tmp65_ < result_length1; _tmp65_++) {
		GVariantBuilder _tmp66_;
		GHashTableIter _tmp67_;
		gpointer _tmp68_;
		gpointer _tmp69_;
		g_hash_table_iter_init (&_tmp67_, *_tmp63_);
		g_variant_builder_init (&_tmp66_, G_VARIANT_TYPE ("a{sv}"));
		while (g_hash_table_iter_next (&_tmp67_, &_tmp68_, &_tmp69_)) {
			gchar* _key;
			GVariant* _value;
			_key = (gchar*) _tmp68_;
			_value = (GVariant*) _tmp69_;
			g_variant_builder_add (&_tmp66_, "{?*}", g_variant_new_string (_key), g_variant_new_variant (_value));
		}
		g_variant_builder_add_value (&_tmp64_, g_variant_builder_end (&_tmp66_));
		_tmp63_++;
	}
	g_variant_builder_add_value (&_reply_builder, g_variant_builder_end (&_tmp64_));
	result = (_vala_array_free (result, result_length1, (GDestroyNotify) g_hash_table_unref), NULL);
	_reply = g_variant_builder_end (&_reply_builder);
	g_dbus_message_set_body (_reply_message, _reply);
	g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
	g_object_unref (invocation);
	g_object_unref (_reply_message);
}


static void _dbus_rygel_external_media_container_proxy_list_items (RygelExternalMediaContainerProxy* self, GVariant* parameters, GDBusMethodInvocation* invocation) {
	GVariantIter _arguments_iter;
	guint offset = 0U;
	GVariant* _tmp70_;
	guint max_count = 0U;
	GVariant* _tmp71_;
	gchar** filter = NULL;
	int filter_length1 = 0;
	GVariant* _tmp72_;
	gchar** _tmp73_;
	int _tmp73__length;
	int _tmp73__size;
	int _tmp73__length1;
	GVariantIter _tmp74_;
	GVariant* _tmp75_;
	g_variant_iter_init (&_arguments_iter, parameters);
	_tmp70_ = g_variant_iter_next_value (&_arguments_iter);
	offset = g_variant_get_uint32 (_tmp70_);
	g_variant_unref (_tmp70_);
	_tmp71_ = g_variant_iter_next_value (&_arguments_iter);
	max_count = g_variant_get_uint32 (_tmp71_);
	g_variant_unref (_tmp71_);
	_tmp72_ = g_variant_iter_next_value (&_arguments_iter);
	_tmp73_ = g_new (gchar*, 5);
	_tmp73__length = 0;
	_tmp73__size = 4;
	_tmp73__length1 = 0;
	g_variant_iter_init (&_tmp74_, _tmp72_);
	for (; (_tmp75_ = g_variant_iter_next_value (&_tmp74_)) != NULL; _tmp73__length1++) {
		if (_tmp73__size == _tmp73__length) {
			_tmp73__size = 2 * _tmp73__size;
			_tmp73_ = g_renew (gchar*, _tmp73_, _tmp73__size + 1);
		}
		_tmp73_[_tmp73__length++] = g_variant_dup_string (_tmp75_, NULL);
		g_variant_unref (_tmp75_);
	}
	filter_length1 = _tmp73__length1;
	_tmp73_[_tmp73__length] = NULL;
	filter = _tmp73_;
	g_variant_unref (_tmp72_);
	rygel_external_media_container_proxy_list_items (self, offset, max_count, filter, filter_length1, (GAsyncReadyCallback) _dbus_rygel_external_media_container_proxy_list_items_ready, invocation);
	filter = (_vala_array_free (filter, filter_length1, (GDestroyNotify) g_free), NULL);
}


static void _dbus_rygel_external_media_container_proxy_list_items_ready (GObject * source_object, GAsyncResult * _res_, gpointer _user_data_) {
	GDBusMethodInvocation * invocation;
	GError* error = NULL;
	GDBusMessage* _reply_message;
	GVariant* _reply;
	GVariantBuilder _reply_builder;
	GHashTable** result;
	int result_length1 = 0;
	GHashTable** _tmp76_;
	GVariantBuilder _tmp77_;
	int _tmp78_;
	invocation = _user_data_;
	result = rygel_external_media_container_proxy_list_items_finish ((RygelExternalMediaContainerProxy*) source_object, _res_, &result_length1, &error);
	if (error) {
		g_dbus_method_invocation_return_gerror (invocation, error);
		return;
	}
	_reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
	g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
	_tmp76_ = result;
	g_variant_builder_init (&_tmp77_, G_VARIANT_TYPE ("aa{sv}"));
	for (_tmp78_ = 0; _tmp78_ < result_length1; _tmp78_++) {
		GVariantBuilder _tmp79_;
		GHashTableIter _tmp80_;
		gpointer _tmp81_;
		gpointer _tmp82_;
		g_hash_table_iter_init (&_tmp80_, *_tmp76_);
		g_variant_builder_init (&_tmp79_, G_VARIANT_TYPE ("a{sv}"));
		while (g_hash_table_iter_next (&_tmp80_, &_tmp81_, &_tmp82_)) {
			gchar* _key;
			GVariant* _value;
			_key = (gchar*) _tmp81_;
			_value = (GVariant*) _tmp82_;
			g_variant_builder_add (&_tmp79_, "{?*}", g_variant_new_string (_key), g_variant_new_variant (_value));
		}
		g_variant_builder_add_value (&_tmp77_, g_variant_builder_end (&_tmp79_));
		_tmp76_++;
	}
	g_variant_builder_add_value (&_reply_builder, g_variant_builder_end (&_tmp77_));
	result = (_vala_array_free (result, result_length1, (GDestroyNotify) g_hash_table_unref), NULL);
	_reply = g_variant_builder_end (&_reply_builder);
	g_dbus_message_set_body (_reply_message, _reply);
	g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
	g_object_unref (invocation);
	g_object_unref (_reply_message);
}


static void _dbus_rygel_external_media_container_proxy_search_objects (RygelExternalMediaContainerProxy* self, GVariant* parameters, GDBusMethodInvocation* invocation) {
	GVariantIter _arguments_iter;
	gchar* query = NULL;
	GVariant* _tmp83_;
	guint offset = 0U;
	GVariant* _tmp84_;
	guint max_count = 0U;
	GVariant* _tmp85_;
	gchar** filter = NULL;
	int filter_length1 = 0;
	GVariant* _tmp86_;
	gchar** _tmp87_;
	int _tmp87__length;
	int _tmp87__size;
	int _tmp87__length1;
	GVariantIter _tmp88_;
	GVariant* _tmp89_;
	g_variant_iter_init (&_arguments_iter, parameters);
	_tmp83_ = g_variant_iter_next_value (&_arguments_iter);
	query = g_variant_dup_string (_tmp83_, NULL);
	g_variant_unref (_tmp83_);
	_tmp84_ = g_variant_iter_next_value (&_arguments_iter);
	offset = g_variant_get_uint32 (_tmp84_);
	g_variant_unref (_tmp84_);
	_tmp85_ = g_variant_iter_next_value (&_arguments_iter);
	max_count = g_variant_get_uint32 (_tmp85_);
	g_variant_unref (_tmp85_);
	_tmp86_ = g_variant_iter_next_value (&_arguments_iter);
	_tmp87_ = g_new (gchar*, 5);
	_tmp87__length = 0;
	_tmp87__size = 4;
	_tmp87__length1 = 0;
	g_variant_iter_init (&_tmp88_, _tmp86_);
	for (; (_tmp89_ = g_variant_iter_next_value (&_tmp88_)) != NULL; _tmp87__length1++) {
		if (_tmp87__size == _tmp87__length) {
			_tmp87__size = 2 * _tmp87__size;
			_tmp87_ = g_renew (gchar*, _tmp87_, _tmp87__size + 1);
		}
		_tmp87_[_tmp87__length++] = g_variant_dup_string (_tmp89_, NULL);
		g_variant_unref (_tmp89_);
	}
	filter_length1 = _tmp87__length1;
	_tmp87_[_tmp87__length] = NULL;
	filter = _tmp87_;
	g_variant_unref (_tmp86_);
	rygel_external_media_container_proxy_search_objects (self, query, offset, max_count, filter, filter_length1, (GAsyncReadyCallback) _dbus_rygel_external_media_container_proxy_search_objects_ready, invocation);
	_g_free0 (query);
	filter = (_vala_array_free (filter, filter_length1, (GDestroyNotify) g_free), NULL);
}


static void _dbus_rygel_external_media_container_proxy_search_objects_ready (GObject * source_object, GAsyncResult * _res_, gpointer _user_data_) {
	GDBusMethodInvocation * invocation;
	GError* error = NULL;
	GDBusMessage* _reply_message;
	GVariant* _reply;
	GVariantBuilder _reply_builder;
	GHashTable** result;
	int result_length1 = 0;
	GHashTable** _tmp90_;
	GVariantBuilder _tmp91_;
	int _tmp92_;
	invocation = _user_data_;
	result = rygel_external_media_container_proxy_search_objects_finish ((RygelExternalMediaContainerProxy*) source_object, _res_, &result_length1, &error);
	if (error) {
		g_dbus_method_invocation_return_gerror (invocation, error);
		return;
	}
	_reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
	g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
	_tmp90_ = result;
	g_variant_builder_init (&_tmp91_, G_VARIANT_TYPE ("aa{sv}"));
	for (_tmp92_ = 0; _tmp92_ < result_length1; _tmp92_++) {
		GVariantBuilder _tmp93_;
		GHashTableIter _tmp94_;
		gpointer _tmp95_;
		gpointer _tmp96_;
		g_hash_table_iter_init (&_tmp94_, *_tmp90_);
		g_variant_builder_init (&_tmp93_, G_VARIANT_TYPE ("a{sv}"));
		while (g_hash_table_iter_next (&_tmp94_, &_tmp95_, &_tmp96_)) {
			gchar* _key;
			GVariant* _value;
			_key = (gchar*) _tmp95_;
			_value = (GVariant*) _tmp96_;
			g_variant_builder_add (&_tmp93_, "{?*}", g_variant_new_string (_key), g_variant_new_variant (_value));
		}
		g_variant_builder_add_value (&_tmp91_, g_variant_builder_end (&_tmp93_));
		_tmp90_++;
	}
	g_variant_builder_add_value (&_reply_builder, g_variant_builder_end (&_tmp91_));
	result = (_vala_array_free (result, result_length1, (GDestroyNotify) g_hash_table_unref), NULL);
	_reply = g_variant_builder_end (&_reply_builder);
	g_dbus_message_set_body (_reply_message, _reply);
	g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
	g_object_unref (invocation);
	g_object_unref (_reply_message);
}


static void rygel_external_media_container_proxy_dbus_interface_method_call (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* method_name, GVariant* parameters, GDBusMethodInvocation* invocation, gpointer user_data) {
	gpointer* data;
	gpointer object;
	data = user_data;
	object = data[0];
	if (strcmp (method_name, "ListChildren") == 0) {
		_dbus_rygel_external_media_container_proxy_list_children (object, parameters, invocation);
	} else if (strcmp (method_name, "ListContainers") == 0) {
		_dbus_rygel_external_media_container_proxy_list_containers (object, parameters, invocation);
	} else if (strcmp (method_name, "ListItems") == 0) {
		_dbus_rygel_external_media_container_proxy_list_items (object, parameters, invocation);
	} else if (strcmp (method_name, "SearchObjects") == 0) {
		_dbus_rygel_external_media_container_proxy_search_objects (object, parameters, invocation);
	} else {
		g_object_unref (invocation);
	}
}


static GVariant* _dbus_rygel_external_media_container_proxy_get_child_count (RygelExternalMediaContainerProxy* self) {
	guint result;
	GVariant* _reply;
	result = rygel_external_media_container_proxy_get_child_count (self);
	_reply = g_variant_new_uint32 (result);
	return _reply;
}


static GVariant* _dbus_rygel_external_media_container_proxy_get_item_count (RygelExternalMediaContainerProxy* self) {
	guint result;
	GVariant* _reply;
	result = rygel_external_media_container_proxy_get_item_count (self);
	_reply = g_variant_new_uint32 (result);
	return _reply;
}


static GVariant* _dbus_rygel_external_media_container_proxy_get_container_count (RygelExternalMediaContainerProxy* self) {
	guint result;
	GVariant* _reply;
	result = rygel_external_media_container_proxy_get_container_count (self);
	_reply = g_variant_new_uint32 (result);
	return _reply;
}


static GVariant* _dbus_rygel_external_media_container_proxy_get_searchable (RygelExternalMediaContainerProxy* self) {
	gboolean result;
	GVariant* _reply;
	result = rygel_external_media_container_proxy_get_searchable (self);
	_reply = g_variant_new_boolean (result);
	return _reply;
}


static GVariant* _dbus_rygel_external_media_container_proxy_get_icon (RygelExternalMediaContainerProxy* self) {
	char* result;
	GVariant* _reply;
	result = rygel_external_media_container_proxy_get_icon (self);
	_reply = g_variant_new_object_path (result);
	_g_free0 (result);
	return _reply;
}


static GVariant* rygel_external_media_container_proxy_dbus_interface_get_property (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* property_name, GError** error, gpointer user_data) {
	gpointer* data;
	gpointer object;
	data = user_data;
	object = data[0];
	if (strcmp (property_name, "ChildCount") == 0) {
		return _dbus_rygel_external_media_container_proxy_get_child_count (object);
	} else if (strcmp (property_name, "ItemCount") == 0) {
		return _dbus_rygel_external_media_container_proxy_get_item_count (object);
	} else if (strcmp (property_name, "ContainerCount") == 0) {
		return _dbus_rygel_external_media_container_proxy_get_container_count (object);
	} else if (strcmp (property_name, "Searchable") == 0) {
		return _dbus_rygel_external_media_container_proxy_get_searchable (object);
	} else if (strcmp (property_name, "Icon") == 0) {
		return _dbus_rygel_external_media_container_proxy_get_icon (object);
	}
	return NULL;
}


static void _dbus_rygel_external_media_container_proxy_set_child_count (RygelExternalMediaContainerProxy* self, GVariant* _value) {
	guint value = 0U;
	value = g_variant_get_uint32 (_value);
	rygel_external_media_container_proxy_set_child_count (self, value);
}


static void _dbus_rygel_external_media_container_proxy_set_item_count (RygelExternalMediaContainerProxy* self, GVariant* _value) {
	guint value = 0U;
	value = g_variant_get_uint32 (_value);
	rygel_external_media_container_proxy_set_item_count (self, value);
}


static void _dbus_rygel_external_media_container_proxy_set_container_count (RygelExternalMediaContainerProxy* self, GVariant* _value) {
	guint value = 0U;
	value = g_variant_get_uint32 (_value);
	rygel_external_media_container_proxy_set_container_count (self, value);
}


static void _dbus_rygel_external_media_container_proxy_set_searchable (RygelExternalMediaContainerProxy* self, GVariant* _value) {
	gboolean value = FALSE;
	value = g_variant_get_boolean (_value);
	rygel_external_media_container_proxy_set_searchable (self, value);
}


static void _dbus_rygel_external_media_container_proxy_set_icon (RygelExternalMediaContainerProxy* self, GVariant* _value) {
	char* value = NULL;
	value = g_variant_dup_string (_value, NULL);
	rygel_external_media_container_proxy_set_icon (self, value);
	_g_free0 (value);
}


static gboolean rygel_external_media_container_proxy_dbus_interface_set_property (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* property_name, GVariant* value, GError** error, gpointer user_data) {
	gpointer* data;
	gpointer object;
	data = user_data;
	object = data[0];
	if (strcmp (property_name, "ChildCount") == 0) {
		_dbus_rygel_external_media_container_proxy_set_child_count (object, value);
		return TRUE;
	} else if (strcmp (property_name, "ItemCount") == 0) {
		_dbus_rygel_external_media_container_proxy_set_item_count (object, value);
		return TRUE;
	} else if (strcmp (property_name, "ContainerCount") == 0) {
		_dbus_rygel_external_media_container_proxy_set_container_count (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Searchable") == 0) {
		_dbus_rygel_external_media_container_proxy_set_searchable (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Icon") == 0) {
		_dbus_rygel_external_media_container_proxy_set_icon (object, value);
		return TRUE;
	}
	return FALSE;
}


static void _dbus_rygel_external_media_container_proxy_updated (GObject* _sender, gpointer* _data) {
	GDBusConnection * _connection;
	const gchar * _path;
	GVariant *_arguments;
	GVariantBuilder _arguments_builder;
	_connection = _data[1];
	_path = _data[2];
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	_arguments = g_variant_builder_end (&_arguments_builder);
	g_dbus_connection_emit_signal (_connection, NULL, _path, "org.gnome.UPnP.MediaContainer2", "Updated", _arguments, NULL);
}


guint rygel_external_media_container_proxy_register_object (gpointer object, GDBusConnection* connection, const gchar* path, GError** error) {
	guint result;
	gpointer *data;
	data = g_new (gpointer, 3);
	data[0] = g_object_ref (object);
	data[1] = g_object_ref (connection);
	data[2] = g_strdup (path);
	result = g_dbus_connection_register_object (connection, path, (GDBusInterfaceInfo *) (&_rygel_external_media_container_proxy_dbus_interface_info), &_rygel_external_media_container_proxy_dbus_interface_vtable, data, _rygel_external_media_container_proxy_unregister_object, error);
	if (!result) {
		return 0;
	}
	g_signal_connect (object, "updated", (GCallback) _dbus_rygel_external_media_container_proxy_updated, data);
	return result;
}


static void _rygel_external_media_container_proxy_unregister_object (gpointer user_data) {
	gpointer* data;
	data = user_data;
	g_signal_handlers_disconnect_by_func (data[0], _dbus_rygel_external_media_container_proxy_updated, data);
	g_object_unref (data[0]);
	g_object_unref (data[1]);
	g_free (data[2]);
	g_free (data);
}


gchar** rygel_external_media_item_proxy_get_urls (RygelExternalMediaItemProxy* self, int* result_length1) {
	g_return_val_if_fail (self != NULL, NULL);
	return RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->get_urls (self, result_length1);
}


void rygel_external_media_item_proxy_set_urls (RygelExternalMediaItemProxy* self, gchar** value, int value_length1) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->set_urls (self, value, value_length1);
}


gchar* rygel_external_media_item_proxy_get_mime_type (RygelExternalMediaItemProxy* self) {
	g_return_val_if_fail (self != NULL, NULL);
	return RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->get_mime_type (self);
}


void rygel_external_media_item_proxy_set_mime_type (RygelExternalMediaItemProxy* self, const gchar* value) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->set_mime_type (self, value);
}


gint rygel_external_media_item_proxy_get_size (RygelExternalMediaItemProxy* self) {
	g_return_val_if_fail (self != NULL, 0);
	return RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->get_size (self);
}


void rygel_external_media_item_proxy_set_size (RygelExternalMediaItemProxy* self, gint value) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->set_size (self, value);
}


gchar* rygel_external_media_item_proxy_get_artist (RygelExternalMediaItemProxy* self) {
	g_return_val_if_fail (self != NULL, NULL);
	return RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->get_artist (self);
}


void rygel_external_media_item_proxy_set_artist (RygelExternalMediaItemProxy* self, const gchar* value) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->set_artist (self, value);
}


gchar* rygel_external_media_item_proxy_get_album (RygelExternalMediaItemProxy* self) {
	g_return_val_if_fail (self != NULL, NULL);
	return RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->get_album (self);
}


void rygel_external_media_item_proxy_set_album (RygelExternalMediaItemProxy* self, const gchar* value) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->set_album (self, value);
}


gchar* rygel_external_media_item_proxy_get_date (RygelExternalMediaItemProxy* self) {
	g_return_val_if_fail (self != NULL, NULL);
	return RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->get_date (self);
}


void rygel_external_media_item_proxy_set_date (RygelExternalMediaItemProxy* self, const gchar* value) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->set_date (self, value);
}


gchar* rygel_external_media_item_proxy_get_genre (RygelExternalMediaItemProxy* self) {
	g_return_val_if_fail (self != NULL, NULL);
	return RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->get_genre (self);
}


void rygel_external_media_item_proxy_set_genre (RygelExternalMediaItemProxy* self, const gchar* value) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->set_genre (self, value);
}


gchar* rygel_external_media_item_proxy_get_dlna_profile (RygelExternalMediaItemProxy* self) {
	g_return_val_if_fail (self != NULL, NULL);
	return RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->get_dlna_profile (self);
}


void rygel_external_media_item_proxy_set_dlna_profile (RygelExternalMediaItemProxy* self, const gchar* value) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->set_dlna_profile (self, value);
}


gint rygel_external_media_item_proxy_get_duration (RygelExternalMediaItemProxy* self) {
	g_return_val_if_fail (self != NULL, 0);
	return RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->get_duration (self);
}


void rygel_external_media_item_proxy_set_duration (RygelExternalMediaItemProxy* self, gint value) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->set_duration (self, value);
}


gint rygel_external_media_item_proxy_get_bitrate (RygelExternalMediaItemProxy* self) {
	g_return_val_if_fail (self != NULL, 0);
	return RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->get_bitrate (self);
}


void rygel_external_media_item_proxy_set_bitrate (RygelExternalMediaItemProxy* self, gint value) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->set_bitrate (self, value);
}


gint rygel_external_media_item_proxy_get_sample_rate (RygelExternalMediaItemProxy* self) {
	g_return_val_if_fail (self != NULL, 0);
	return RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->get_sample_rate (self);
}


void rygel_external_media_item_proxy_set_sample_rate (RygelExternalMediaItemProxy* self, gint value) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->set_sample_rate (self, value);
}


gint rygel_external_media_item_proxy_get_bits_per_sample (RygelExternalMediaItemProxy* self) {
	g_return_val_if_fail (self != NULL, 0);
	return RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->get_bits_per_sample (self);
}


void rygel_external_media_item_proxy_set_bits_per_sample (RygelExternalMediaItemProxy* self, gint value) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->set_bits_per_sample (self, value);
}


gint rygel_external_media_item_proxy_get_width (RygelExternalMediaItemProxy* self) {
	g_return_val_if_fail (self != NULL, 0);
	return RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->get_width (self);
}


void rygel_external_media_item_proxy_set_width (RygelExternalMediaItemProxy* self, gint value) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->set_width (self, value);
}


gint rygel_external_media_item_proxy_get_height (RygelExternalMediaItemProxy* self) {
	g_return_val_if_fail (self != NULL, 0);
	return RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->get_height (self);
}


void rygel_external_media_item_proxy_set_height (RygelExternalMediaItemProxy* self, gint value) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->set_height (self, value);
}


gint rygel_external_media_item_proxy_get_color_depth (RygelExternalMediaItemProxy* self) {
	g_return_val_if_fail (self != NULL, 0);
	return RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->get_color_depth (self);
}


void rygel_external_media_item_proxy_set_color_depth (RygelExternalMediaItemProxy* self, gint value) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->set_color_depth (self, value);
}


char* rygel_external_media_item_proxy_get_thumbnail (RygelExternalMediaItemProxy* self) {
	g_return_val_if_fail (self != NULL, NULL);
	return RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->get_thumbnail (self);
}


void rygel_external_media_item_proxy_set_thumbnail (RygelExternalMediaItemProxy* self, const char* value) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->set_thumbnail (self, value);
}


char* rygel_external_media_item_proxy_get_album_art (RygelExternalMediaItemProxy* self) {
	g_return_val_if_fail (self != NULL, NULL);
	return RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->get_album_art (self);
}


void rygel_external_media_item_proxy_set_album_art (RygelExternalMediaItemProxy* self, const char* value) {
	g_return_if_fail (self != NULL);
	RYGEL_EXTERNAL_MEDIA_ITEM_PROXY_GET_INTERFACE (self)->set_album_art (self, value);
}


static void rygel_external_media_item_proxy_base_init (RygelExternalMediaItemProxyIface * iface) {
	static gboolean initialized = FALSE;
	if (!initialized) {
		initialized = TRUE;
	}
}


GType rygel_external_media_item_proxy_get_type (void) {
	static volatile gsize rygel_external_media_item_proxy_type_id__volatile = 0;
	if (g_once_init_enter (&rygel_external_media_item_proxy_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (RygelExternalMediaItemProxyIface), (GBaseInitFunc) rygel_external_media_item_proxy_base_init, (GBaseFinalizeFunc) NULL, (GClassInitFunc) NULL, (GClassFinalizeFunc) NULL, NULL, 0, 0, (GInstanceInitFunc) NULL, NULL };
		GType rygel_external_media_item_proxy_type_id;
		rygel_external_media_item_proxy_type_id = g_type_register_static (G_TYPE_INTERFACE, "RygelExternalMediaItemProxy", &g_define_type_info, 0);
		g_type_interface_add_prerequisite (rygel_external_media_item_proxy_type_id, G_TYPE_DBUS_PROXY);
		g_type_interface_add_prerequisite (rygel_external_media_item_proxy_type_id, RYGEL_EXTERNAL_TYPE_MEDIA_OBJECT_PROXY);
		g_type_set_qdata (rygel_external_media_item_proxy_type_id, g_quark_from_static_string ("vala-dbus-proxy-type"), (void*) rygel_external_media_item_proxy_proxy_get_type);
		g_type_set_qdata (rygel_external_media_item_proxy_type_id, g_quark_from_static_string ("vala-dbus-interface-name"), "org.gnome.UPnP.MediaItem2");
		g_type_set_qdata (rygel_external_media_item_proxy_type_id, g_quark_from_static_string ("vala-dbus-register-object"), (void*) rygel_external_media_item_proxy_register_object);
		g_once_init_leave (&rygel_external_media_item_proxy_type_id__volatile, rygel_external_media_item_proxy_type_id);
	}
	return rygel_external_media_item_proxy_type_id__volatile;
}


G_DEFINE_TYPE_EXTENDED (RygelExternalMediaItemProxyProxy, rygel_external_media_item_proxy_proxy, G_TYPE_DBUS_PROXY, 0, G_IMPLEMENT_INTERFACE (RYGEL_EXTERNAL_TYPE_MEDIA_OBJECT_PROXY, rygel_external_media_item_proxy_proxy_rygel_external_media_object_proxy_interface_init) G_IMPLEMENT_INTERFACE (RYGEL_EXTERNAL_TYPE_MEDIA_ITEM_PROXY, rygel_external_media_item_proxy_proxy_rygel_external_media_item_proxy_interface_init) )
static void rygel_external_media_item_proxy_proxy_class_init (RygelExternalMediaItemProxyProxyClass* klass) {
	G_DBUS_PROXY_CLASS (klass)->g_signal = rygel_external_media_item_proxy_proxy_g_signal;
}


static void rygel_external_media_item_proxy_proxy_g_signal (GDBusProxy* proxy, const gchar* sender_name, const gchar* signal_name, GVariant* parameters) {
}


static void rygel_external_media_item_proxy_proxy_init (RygelExternalMediaItemProxyProxy* self) {
}


static char* rygel_external_media_item_proxy_dbus_proxy_get_parent (RygelExternalMediaObjectProxy* self) {
	GVariant *_inner_reply;
	char* _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Parent");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaObject2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Parent"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return NULL;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_dup_string (_inner_reply, NULL);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_item_proxy_dbus_proxy_set_parent (RygelExternalMediaObjectProxy* self, const char* value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaObject2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Parent"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_object_path (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static gchar* rygel_external_media_item_proxy_dbus_proxy_get_display_name (RygelExternalMediaObjectProxy* self) {
	GVariant *_inner_reply;
	gchar* _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "DisplayName");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaObject2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("DisplayName"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return NULL;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_dup_string (_inner_reply, NULL);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_item_proxy_dbus_proxy_set_display_name (RygelExternalMediaObjectProxy* self, const gchar* value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaObject2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("DisplayName"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static gchar* rygel_external_media_item_proxy_dbus_proxy_get_object_type (RygelExternalMediaObjectProxy* self) {
	GVariant *_inner_reply;
	gchar* _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Type");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaObject2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Type"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return NULL;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_dup_string (_inner_reply, NULL);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_item_proxy_dbus_proxy_set_object_type (RygelExternalMediaObjectProxy* self, const gchar* value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaObject2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Type"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static void rygel_external_media_item_proxy_proxy_rygel_external_media_object_proxy_interface_init (RygelExternalMediaObjectProxyIface* iface) {
	iface->get_parent = rygel_external_media_item_proxy_dbus_proxy_get_parent;
	iface->set_parent = rygel_external_media_item_proxy_dbus_proxy_set_parent;
	iface->get_display_name = rygel_external_media_item_proxy_dbus_proxy_get_display_name;
	iface->set_display_name = rygel_external_media_item_proxy_dbus_proxy_set_display_name;
	iface->get_object_type = rygel_external_media_item_proxy_dbus_proxy_get_object_type;
	iface->set_object_type = rygel_external_media_item_proxy_dbus_proxy_set_object_type;
}


static gchar** rygel_external_media_item_proxy_dbus_proxy_get_urls (RygelExternalMediaItemProxy* self, int* result_length1) {
	GVariant *_inner_reply;
	gchar** _result;
	int _result_length1;
	gchar** _tmp97_;
	int _tmp97__length;
	int _tmp97__size;
	int _tmp97__length1;
	GVariantIter _tmp98_;
	GVariant* _tmp99_;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "URLs");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("URLs"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return NULL;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result_length1 = 0;
	_tmp97_ = g_new (gchar*, 5);
	_tmp97__length = 0;
	_tmp97__size = 4;
	_tmp97__length1 = 0;
	g_variant_iter_init (&_tmp98_, _inner_reply);
	for (; (_tmp99_ = g_variant_iter_next_value (&_tmp98_)) != NULL; _tmp97__length1++) {
		if (_tmp97__size == _tmp97__length) {
			_tmp97__size = 2 * _tmp97__size;
			_tmp97_ = g_renew (gchar*, _tmp97_, _tmp97__size + 1);
		}
		_tmp97_[_tmp97__length++] = g_variant_dup_string (_tmp99_, NULL);
		g_variant_unref (_tmp99_);
	}
	_result_length1 = _tmp97__length1;
	_tmp97_[_tmp97__length] = NULL;
	_result = _tmp97_;
	*result_length1 = _result_length1;
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_item_proxy_dbus_proxy_set_urls (RygelExternalMediaItemProxy* self, gchar** value, int value_length1) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	gchar** _tmp100_;
	GVariantBuilder _tmp101_;
	int _tmp102_;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("URLs"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	_tmp100_ = value;
	g_variant_builder_init (&_tmp101_, G_VARIANT_TYPE ("as"));
	for (_tmp102_ = 0; _tmp102_ < value_length1; _tmp102_++) {
		g_variant_builder_add_value (&_tmp101_, g_variant_new_string (*_tmp100_));
		_tmp100_++;
	}
	g_variant_builder_add_value (&_arguments_builder, g_variant_builder_end (&_tmp101_));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static gchar* rygel_external_media_item_proxy_dbus_proxy_get_mime_type (RygelExternalMediaItemProxy* self) {
	GVariant *_inner_reply;
	gchar* _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "MimeType");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("MimeType"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return NULL;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_dup_string (_inner_reply, NULL);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_item_proxy_dbus_proxy_set_mime_type (RygelExternalMediaItemProxy* self, const gchar* value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("MimeType"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static gint rygel_external_media_item_proxy_dbus_proxy_get_size (RygelExternalMediaItemProxy* self) {
	GVariant *_inner_reply;
	gint _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Size");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Size"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return 0;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_int32 (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_item_proxy_dbus_proxy_set_size (RygelExternalMediaItemProxy* self, gint value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Size"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_int32 (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static gchar* rygel_external_media_item_proxy_dbus_proxy_get_artist (RygelExternalMediaItemProxy* self) {
	GVariant *_inner_reply;
	gchar* _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Artist");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Artist"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return NULL;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_dup_string (_inner_reply, NULL);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_item_proxy_dbus_proxy_set_artist (RygelExternalMediaItemProxy* self, const gchar* value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Artist"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static gchar* rygel_external_media_item_proxy_dbus_proxy_get_album (RygelExternalMediaItemProxy* self) {
	GVariant *_inner_reply;
	gchar* _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Album");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Album"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return NULL;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_dup_string (_inner_reply, NULL);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_item_proxy_dbus_proxy_set_album (RygelExternalMediaItemProxy* self, const gchar* value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Album"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static gchar* rygel_external_media_item_proxy_dbus_proxy_get_date (RygelExternalMediaItemProxy* self) {
	GVariant *_inner_reply;
	gchar* _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Date");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Date"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return NULL;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_dup_string (_inner_reply, NULL);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_item_proxy_dbus_proxy_set_date (RygelExternalMediaItemProxy* self, const gchar* value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Date"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static gchar* rygel_external_media_item_proxy_dbus_proxy_get_genre (RygelExternalMediaItemProxy* self) {
	GVariant *_inner_reply;
	gchar* _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Genre");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Genre"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return NULL;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_dup_string (_inner_reply, NULL);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_item_proxy_dbus_proxy_set_genre (RygelExternalMediaItemProxy* self, const gchar* value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Genre"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static gchar* rygel_external_media_item_proxy_dbus_proxy_get_dlna_profile (RygelExternalMediaItemProxy* self) {
	GVariant *_inner_reply;
	gchar* _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "DlnaProfile");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("DlnaProfile"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return NULL;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_dup_string (_inner_reply, NULL);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_item_proxy_dbus_proxy_set_dlna_profile (RygelExternalMediaItemProxy* self, const gchar* value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("DlnaProfile"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static gint rygel_external_media_item_proxy_dbus_proxy_get_duration (RygelExternalMediaItemProxy* self) {
	GVariant *_inner_reply;
	gint _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Duration");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Duration"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return 0;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_int32 (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_item_proxy_dbus_proxy_set_duration (RygelExternalMediaItemProxy* self, gint value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Duration"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_int32 (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static gint rygel_external_media_item_proxy_dbus_proxy_get_bitrate (RygelExternalMediaItemProxy* self) {
	GVariant *_inner_reply;
	gint _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Bitrate");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Bitrate"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return 0;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_int32 (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_item_proxy_dbus_proxy_set_bitrate (RygelExternalMediaItemProxy* self, gint value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Bitrate"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_int32 (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static gint rygel_external_media_item_proxy_dbus_proxy_get_sample_rate (RygelExternalMediaItemProxy* self) {
	GVariant *_inner_reply;
	gint _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "SampleRate");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("SampleRate"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return 0;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_int32 (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_item_proxy_dbus_proxy_set_sample_rate (RygelExternalMediaItemProxy* self, gint value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("SampleRate"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_int32 (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static gint rygel_external_media_item_proxy_dbus_proxy_get_bits_per_sample (RygelExternalMediaItemProxy* self) {
	GVariant *_inner_reply;
	gint _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "BitsPerSample");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("BitsPerSample"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return 0;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_int32 (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_item_proxy_dbus_proxy_set_bits_per_sample (RygelExternalMediaItemProxy* self, gint value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("BitsPerSample"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_int32 (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static gint rygel_external_media_item_proxy_dbus_proxy_get_width (RygelExternalMediaItemProxy* self) {
	GVariant *_inner_reply;
	gint _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Width");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Width"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return 0;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_int32 (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_item_proxy_dbus_proxy_set_width (RygelExternalMediaItemProxy* self, gint value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Width"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_int32 (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static gint rygel_external_media_item_proxy_dbus_proxy_get_height (RygelExternalMediaItemProxy* self) {
	GVariant *_inner_reply;
	gint _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Height");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Height"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return 0;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_int32 (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_item_proxy_dbus_proxy_set_height (RygelExternalMediaItemProxy* self, gint value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Height"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_int32 (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static gint rygel_external_media_item_proxy_dbus_proxy_get_color_depth (RygelExternalMediaItemProxy* self) {
	GVariant *_inner_reply;
	gint _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "ColorDepth");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("ColorDepth"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return 0;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_int32 (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_item_proxy_dbus_proxy_set_color_depth (RygelExternalMediaItemProxy* self, gint value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("ColorDepth"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_int32 (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static char* rygel_external_media_item_proxy_dbus_proxy_get_thumbnail (RygelExternalMediaItemProxy* self) {
	GVariant *_inner_reply;
	char* _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Thumbnail");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Thumbnail"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return NULL;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_dup_string (_inner_reply, NULL);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_item_proxy_dbus_proxy_set_thumbnail (RygelExternalMediaItemProxy* self, const char* value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Thumbnail"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_object_path (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static char* rygel_external_media_item_proxy_dbus_proxy_get_album_art (RygelExternalMediaItemProxy* self) {
	GVariant *_inner_reply;
	char* _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "AlbumArt");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("AlbumArt"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return NULL;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_dup_string (_inner_reply, NULL);
	g_variant_unref (_inner_reply);
	return _result;
}


static void rygel_external_media_item_proxy_dbus_proxy_set_album_art (RygelExternalMediaItemProxy* self, const char* value) {
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.gnome.UPnP.MediaItem2"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("AlbumArt"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_object_path (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}


static void rygel_external_media_item_proxy_proxy_rygel_external_media_item_proxy_interface_init (RygelExternalMediaItemProxyIface* iface) {
	iface->get_urls = rygel_external_media_item_proxy_dbus_proxy_get_urls;
	iface->set_urls = rygel_external_media_item_proxy_dbus_proxy_set_urls;
	iface->get_mime_type = rygel_external_media_item_proxy_dbus_proxy_get_mime_type;
	iface->set_mime_type = rygel_external_media_item_proxy_dbus_proxy_set_mime_type;
	iface->get_size = rygel_external_media_item_proxy_dbus_proxy_get_size;
	iface->set_size = rygel_external_media_item_proxy_dbus_proxy_set_size;
	iface->get_artist = rygel_external_media_item_proxy_dbus_proxy_get_artist;
	iface->set_artist = rygel_external_media_item_proxy_dbus_proxy_set_artist;
	iface->get_album = rygel_external_media_item_proxy_dbus_proxy_get_album;
	iface->set_album = rygel_external_media_item_proxy_dbus_proxy_set_album;
	iface->get_date = rygel_external_media_item_proxy_dbus_proxy_get_date;
	iface->set_date = rygel_external_media_item_proxy_dbus_proxy_set_date;
	iface->get_genre = rygel_external_media_item_proxy_dbus_proxy_get_genre;
	iface->set_genre = rygel_external_media_item_proxy_dbus_proxy_set_genre;
	iface->get_dlna_profile = rygel_external_media_item_proxy_dbus_proxy_get_dlna_profile;
	iface->set_dlna_profile = rygel_external_media_item_proxy_dbus_proxy_set_dlna_profile;
	iface->get_duration = rygel_external_media_item_proxy_dbus_proxy_get_duration;
	iface->set_duration = rygel_external_media_item_proxy_dbus_proxy_set_duration;
	iface->get_bitrate = rygel_external_media_item_proxy_dbus_proxy_get_bitrate;
	iface->set_bitrate = rygel_external_media_item_proxy_dbus_proxy_set_bitrate;
	iface->get_sample_rate = rygel_external_media_item_proxy_dbus_proxy_get_sample_rate;
	iface->set_sample_rate = rygel_external_media_item_proxy_dbus_proxy_set_sample_rate;
	iface->get_bits_per_sample = rygel_external_media_item_proxy_dbus_proxy_get_bits_per_sample;
	iface->set_bits_per_sample = rygel_external_media_item_proxy_dbus_proxy_set_bits_per_sample;
	iface->get_width = rygel_external_media_item_proxy_dbus_proxy_get_width;
	iface->set_width = rygel_external_media_item_proxy_dbus_proxy_set_width;
	iface->get_height = rygel_external_media_item_proxy_dbus_proxy_get_height;
	iface->set_height = rygel_external_media_item_proxy_dbus_proxy_set_height;
	iface->get_color_depth = rygel_external_media_item_proxy_dbus_proxy_get_color_depth;
	iface->set_color_depth = rygel_external_media_item_proxy_dbus_proxy_set_color_depth;
	iface->get_thumbnail = rygel_external_media_item_proxy_dbus_proxy_get_thumbnail;
	iface->set_thumbnail = rygel_external_media_item_proxy_dbus_proxy_set_thumbnail;
	iface->get_album_art = rygel_external_media_item_proxy_dbus_proxy_get_album_art;
	iface->set_album_art = rygel_external_media_item_proxy_dbus_proxy_set_album_art;
}


static void rygel_external_media_item_proxy_dbus_interface_method_call (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* method_name, GVariant* parameters, GDBusMethodInvocation* invocation, gpointer user_data) {
	gpointer* data;
	gpointer object;
	data = user_data;
	object = data[0];
	g_object_unref (invocation);
}


static GVariant* _dbus_rygel_external_media_item_proxy_get_urls (RygelExternalMediaItemProxy* self) {
	gchar** result;
	int result_length1;
	gchar** _tmp103_;
	GVariantBuilder _tmp104_;
	int _tmp105_;
	GVariant* _reply;
	result = rygel_external_media_item_proxy_get_urls (self, &result_length1);
	_tmp103_ = result;
	g_variant_builder_init (&_tmp104_, G_VARIANT_TYPE ("as"));
	for (_tmp105_ = 0; _tmp105_ < result_length1; _tmp105_++) {
		g_variant_builder_add_value (&_tmp104_, g_variant_new_string (*_tmp103_));
		_tmp103_++;
	}
	_reply = g_variant_builder_end (&_tmp104_);
	result = (_vala_array_free (result, result_length1, (GDestroyNotify) g_free), NULL);
	return _reply;
}


static GVariant* _dbus_rygel_external_media_item_proxy_get_mime_type (RygelExternalMediaItemProxy* self) {
	gchar* result;
	GVariant* _reply;
	result = rygel_external_media_item_proxy_get_mime_type (self);
	_reply = g_variant_new_string (result);
	_g_free0 (result);
	return _reply;
}


static GVariant* _dbus_rygel_external_media_item_proxy_get_size (RygelExternalMediaItemProxy* self) {
	gint result;
	GVariant* _reply;
	result = rygel_external_media_item_proxy_get_size (self);
	_reply = g_variant_new_int32 (result);
	return _reply;
}


static GVariant* _dbus_rygel_external_media_item_proxy_get_artist (RygelExternalMediaItemProxy* self) {
	gchar* result;
	GVariant* _reply;
	result = rygel_external_media_item_proxy_get_artist (self);
	_reply = g_variant_new_string (result);
	_g_free0 (result);
	return _reply;
}


static GVariant* _dbus_rygel_external_media_item_proxy_get_album (RygelExternalMediaItemProxy* self) {
	gchar* result;
	GVariant* _reply;
	result = rygel_external_media_item_proxy_get_album (self);
	_reply = g_variant_new_string (result);
	_g_free0 (result);
	return _reply;
}


static GVariant* _dbus_rygel_external_media_item_proxy_get_date (RygelExternalMediaItemProxy* self) {
	gchar* result;
	GVariant* _reply;
	result = rygel_external_media_item_proxy_get_date (self);
	_reply = g_variant_new_string (result);
	_g_free0 (result);
	return _reply;
}


static GVariant* _dbus_rygel_external_media_item_proxy_get_genre (RygelExternalMediaItemProxy* self) {
	gchar* result;
	GVariant* _reply;
	result = rygel_external_media_item_proxy_get_genre (self);
	_reply = g_variant_new_string (result);
	_g_free0 (result);
	return _reply;
}


static GVariant* _dbus_rygel_external_media_item_proxy_get_dlna_profile (RygelExternalMediaItemProxy* self) {
	gchar* result;
	GVariant* _reply;
	result = rygel_external_media_item_proxy_get_dlna_profile (self);
	_reply = g_variant_new_string (result);
	_g_free0 (result);
	return _reply;
}


static GVariant* _dbus_rygel_external_media_item_proxy_get_duration (RygelExternalMediaItemProxy* self) {
	gint result;
	GVariant* _reply;
	result = rygel_external_media_item_proxy_get_duration (self);
	_reply = g_variant_new_int32 (result);
	return _reply;
}


static GVariant* _dbus_rygel_external_media_item_proxy_get_bitrate (RygelExternalMediaItemProxy* self) {
	gint result;
	GVariant* _reply;
	result = rygel_external_media_item_proxy_get_bitrate (self);
	_reply = g_variant_new_int32 (result);
	return _reply;
}


static GVariant* _dbus_rygel_external_media_item_proxy_get_sample_rate (RygelExternalMediaItemProxy* self) {
	gint result;
	GVariant* _reply;
	result = rygel_external_media_item_proxy_get_sample_rate (self);
	_reply = g_variant_new_int32 (result);
	return _reply;
}


static GVariant* _dbus_rygel_external_media_item_proxy_get_bits_per_sample (RygelExternalMediaItemProxy* self) {
	gint result;
	GVariant* _reply;
	result = rygel_external_media_item_proxy_get_bits_per_sample (self);
	_reply = g_variant_new_int32 (result);
	return _reply;
}


static GVariant* _dbus_rygel_external_media_item_proxy_get_width (RygelExternalMediaItemProxy* self) {
	gint result;
	GVariant* _reply;
	result = rygel_external_media_item_proxy_get_width (self);
	_reply = g_variant_new_int32 (result);
	return _reply;
}


static GVariant* _dbus_rygel_external_media_item_proxy_get_height (RygelExternalMediaItemProxy* self) {
	gint result;
	GVariant* _reply;
	result = rygel_external_media_item_proxy_get_height (self);
	_reply = g_variant_new_int32 (result);
	return _reply;
}


static GVariant* _dbus_rygel_external_media_item_proxy_get_color_depth (RygelExternalMediaItemProxy* self) {
	gint result;
	GVariant* _reply;
	result = rygel_external_media_item_proxy_get_color_depth (self);
	_reply = g_variant_new_int32 (result);
	return _reply;
}


static GVariant* _dbus_rygel_external_media_item_proxy_get_thumbnail (RygelExternalMediaItemProxy* self) {
	char* result;
	GVariant* _reply;
	result = rygel_external_media_item_proxy_get_thumbnail (self);
	_reply = g_variant_new_object_path (result);
	_g_free0 (result);
	return _reply;
}


static GVariant* _dbus_rygel_external_media_item_proxy_get_album_art (RygelExternalMediaItemProxy* self) {
	char* result;
	GVariant* _reply;
	result = rygel_external_media_item_proxy_get_album_art (self);
	_reply = g_variant_new_object_path (result);
	_g_free0 (result);
	return _reply;
}


static GVariant* rygel_external_media_item_proxy_dbus_interface_get_property (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* property_name, GError** error, gpointer user_data) {
	gpointer* data;
	gpointer object;
	data = user_data;
	object = data[0];
	if (strcmp (property_name, "URLs") == 0) {
		return _dbus_rygel_external_media_item_proxy_get_urls (object);
	} else if (strcmp (property_name, "MimeType") == 0) {
		return _dbus_rygel_external_media_item_proxy_get_mime_type (object);
	} else if (strcmp (property_name, "Size") == 0) {
		return _dbus_rygel_external_media_item_proxy_get_size (object);
	} else if (strcmp (property_name, "Artist") == 0) {
		return _dbus_rygel_external_media_item_proxy_get_artist (object);
	} else if (strcmp (property_name, "Album") == 0) {
		return _dbus_rygel_external_media_item_proxy_get_album (object);
	} else if (strcmp (property_name, "Date") == 0) {
		return _dbus_rygel_external_media_item_proxy_get_date (object);
	} else if (strcmp (property_name, "Genre") == 0) {
		return _dbus_rygel_external_media_item_proxy_get_genre (object);
	} else if (strcmp (property_name, "DlnaProfile") == 0) {
		return _dbus_rygel_external_media_item_proxy_get_dlna_profile (object);
	} else if (strcmp (property_name, "Duration") == 0) {
		return _dbus_rygel_external_media_item_proxy_get_duration (object);
	} else if (strcmp (property_name, "Bitrate") == 0) {
		return _dbus_rygel_external_media_item_proxy_get_bitrate (object);
	} else if (strcmp (property_name, "SampleRate") == 0) {
		return _dbus_rygel_external_media_item_proxy_get_sample_rate (object);
	} else if (strcmp (property_name, "BitsPerSample") == 0) {
		return _dbus_rygel_external_media_item_proxy_get_bits_per_sample (object);
	} else if (strcmp (property_name, "Width") == 0) {
		return _dbus_rygel_external_media_item_proxy_get_width (object);
	} else if (strcmp (property_name, "Height") == 0) {
		return _dbus_rygel_external_media_item_proxy_get_height (object);
	} else if (strcmp (property_name, "ColorDepth") == 0) {
		return _dbus_rygel_external_media_item_proxy_get_color_depth (object);
	} else if (strcmp (property_name, "Thumbnail") == 0) {
		return _dbus_rygel_external_media_item_proxy_get_thumbnail (object);
	} else if (strcmp (property_name, "AlbumArt") == 0) {
		return _dbus_rygel_external_media_item_proxy_get_album_art (object);
	}
	return NULL;
}


static void _dbus_rygel_external_media_item_proxy_set_urls (RygelExternalMediaItemProxy* self, GVariant* _value) {
	gchar** value = NULL;
	int value_length1;
	gchar** _tmp106_;
	int _tmp106__length;
	int _tmp106__size;
	int _tmp106__length1;
	GVariantIter _tmp107_;
	GVariant* _tmp108_;
	_tmp106_ = g_new (gchar*, 5);
	_tmp106__length = 0;
	_tmp106__size = 4;
	_tmp106__length1 = 0;
	g_variant_iter_init (&_tmp107_, _value);
	for (; (_tmp108_ = g_variant_iter_next_value (&_tmp107_)) != NULL; _tmp106__length1++) {
		if (_tmp106__size == _tmp106__length) {
			_tmp106__size = 2 * _tmp106__size;
			_tmp106_ = g_renew (gchar*, _tmp106_, _tmp106__size + 1);
		}
		_tmp106_[_tmp106__length++] = g_variant_dup_string (_tmp108_, NULL);
		g_variant_unref (_tmp108_);
	}
	value_length1 = _tmp106__length1;
	_tmp106_[_tmp106__length] = NULL;
	value = _tmp106_;
	rygel_external_media_item_proxy_set_urls (self, value, value_length1);
	value = (_vala_array_free (value, value_length1, (GDestroyNotify) g_free), NULL);
}


static void _dbus_rygel_external_media_item_proxy_set_mime_type (RygelExternalMediaItemProxy* self, GVariant* _value) {
	gchar* value = NULL;
	value = g_variant_dup_string (_value, NULL);
	rygel_external_media_item_proxy_set_mime_type (self, value);
	_g_free0 (value);
}


static void _dbus_rygel_external_media_item_proxy_set_size (RygelExternalMediaItemProxy* self, GVariant* _value) {
	gint value = 0;
	value = g_variant_get_int32 (_value);
	rygel_external_media_item_proxy_set_size (self, value);
}


static void _dbus_rygel_external_media_item_proxy_set_artist (RygelExternalMediaItemProxy* self, GVariant* _value) {
	gchar* value = NULL;
	value = g_variant_dup_string (_value, NULL);
	rygel_external_media_item_proxy_set_artist (self, value);
	_g_free0 (value);
}


static void _dbus_rygel_external_media_item_proxy_set_album (RygelExternalMediaItemProxy* self, GVariant* _value) {
	gchar* value = NULL;
	value = g_variant_dup_string (_value, NULL);
	rygel_external_media_item_proxy_set_album (self, value);
	_g_free0 (value);
}


static void _dbus_rygel_external_media_item_proxy_set_date (RygelExternalMediaItemProxy* self, GVariant* _value) {
	gchar* value = NULL;
	value = g_variant_dup_string (_value, NULL);
	rygel_external_media_item_proxy_set_date (self, value);
	_g_free0 (value);
}


static void _dbus_rygel_external_media_item_proxy_set_genre (RygelExternalMediaItemProxy* self, GVariant* _value) {
	gchar* value = NULL;
	value = g_variant_dup_string (_value, NULL);
	rygel_external_media_item_proxy_set_genre (self, value);
	_g_free0 (value);
}


static void _dbus_rygel_external_media_item_proxy_set_dlna_profile (RygelExternalMediaItemProxy* self, GVariant* _value) {
	gchar* value = NULL;
	value = g_variant_dup_string (_value, NULL);
	rygel_external_media_item_proxy_set_dlna_profile (self, value);
	_g_free0 (value);
}


static void _dbus_rygel_external_media_item_proxy_set_duration (RygelExternalMediaItemProxy* self, GVariant* _value) {
	gint value = 0;
	value = g_variant_get_int32 (_value);
	rygel_external_media_item_proxy_set_duration (self, value);
}


static void _dbus_rygel_external_media_item_proxy_set_bitrate (RygelExternalMediaItemProxy* self, GVariant* _value) {
	gint value = 0;
	value = g_variant_get_int32 (_value);
	rygel_external_media_item_proxy_set_bitrate (self, value);
}


static void _dbus_rygel_external_media_item_proxy_set_sample_rate (RygelExternalMediaItemProxy* self, GVariant* _value) {
	gint value = 0;
	value = g_variant_get_int32 (_value);
	rygel_external_media_item_proxy_set_sample_rate (self, value);
}


static void _dbus_rygel_external_media_item_proxy_set_bits_per_sample (RygelExternalMediaItemProxy* self, GVariant* _value) {
	gint value = 0;
	value = g_variant_get_int32 (_value);
	rygel_external_media_item_proxy_set_bits_per_sample (self, value);
}


static void _dbus_rygel_external_media_item_proxy_set_width (RygelExternalMediaItemProxy* self, GVariant* _value) {
	gint value = 0;
	value = g_variant_get_int32 (_value);
	rygel_external_media_item_proxy_set_width (self, value);
}


static void _dbus_rygel_external_media_item_proxy_set_height (RygelExternalMediaItemProxy* self, GVariant* _value) {
	gint value = 0;
	value = g_variant_get_int32 (_value);
	rygel_external_media_item_proxy_set_height (self, value);
}


static void _dbus_rygel_external_media_item_proxy_set_color_depth (RygelExternalMediaItemProxy* self, GVariant* _value) {
	gint value = 0;
	value = g_variant_get_int32 (_value);
	rygel_external_media_item_proxy_set_color_depth (self, value);
}


static void _dbus_rygel_external_media_item_proxy_set_thumbnail (RygelExternalMediaItemProxy* self, GVariant* _value) {
	char* value = NULL;
	value = g_variant_dup_string (_value, NULL);
	rygel_external_media_item_proxy_set_thumbnail (self, value);
	_g_free0 (value);
}


static void _dbus_rygel_external_media_item_proxy_set_album_art (RygelExternalMediaItemProxy* self, GVariant* _value) {
	char* value = NULL;
	value = g_variant_dup_string (_value, NULL);
	rygel_external_media_item_proxy_set_album_art (self, value);
	_g_free0 (value);
}


static gboolean rygel_external_media_item_proxy_dbus_interface_set_property (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* property_name, GVariant* value, GError** error, gpointer user_data) {
	gpointer* data;
	gpointer object;
	data = user_data;
	object = data[0];
	if (strcmp (property_name, "URLs") == 0) {
		_dbus_rygel_external_media_item_proxy_set_urls (object, value);
		return TRUE;
	} else if (strcmp (property_name, "MimeType") == 0) {
		_dbus_rygel_external_media_item_proxy_set_mime_type (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Size") == 0) {
		_dbus_rygel_external_media_item_proxy_set_size (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Artist") == 0) {
		_dbus_rygel_external_media_item_proxy_set_artist (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Album") == 0) {
		_dbus_rygel_external_media_item_proxy_set_album (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Date") == 0) {
		_dbus_rygel_external_media_item_proxy_set_date (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Genre") == 0) {
		_dbus_rygel_external_media_item_proxy_set_genre (object, value);
		return TRUE;
	} else if (strcmp (property_name, "DlnaProfile") == 0) {
		_dbus_rygel_external_media_item_proxy_set_dlna_profile (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Duration") == 0) {
		_dbus_rygel_external_media_item_proxy_set_duration (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Bitrate") == 0) {
		_dbus_rygel_external_media_item_proxy_set_bitrate (object, value);
		return TRUE;
	} else if (strcmp (property_name, "SampleRate") == 0) {
		_dbus_rygel_external_media_item_proxy_set_sample_rate (object, value);
		return TRUE;
	} else if (strcmp (property_name, "BitsPerSample") == 0) {
		_dbus_rygel_external_media_item_proxy_set_bits_per_sample (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Width") == 0) {
		_dbus_rygel_external_media_item_proxy_set_width (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Height") == 0) {
		_dbus_rygel_external_media_item_proxy_set_height (object, value);
		return TRUE;
	} else if (strcmp (property_name, "ColorDepth") == 0) {
		_dbus_rygel_external_media_item_proxy_set_color_depth (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Thumbnail") == 0) {
		_dbus_rygel_external_media_item_proxy_set_thumbnail (object, value);
		return TRUE;
	} else if (strcmp (property_name, "AlbumArt") == 0) {
		_dbus_rygel_external_media_item_proxy_set_album_art (object, value);
		return TRUE;
	}
	return FALSE;
}


guint rygel_external_media_item_proxy_register_object (gpointer object, GDBusConnection* connection, const gchar* path, GError** error) {
	guint result;
	gpointer *data;
	data = g_new (gpointer, 3);
	data[0] = g_object_ref (object);
	data[1] = g_object_ref (connection);
	data[2] = g_strdup (path);
	result = g_dbus_connection_register_object (connection, path, (GDBusInterfaceInfo *) (&_rygel_external_media_item_proxy_dbus_interface_info), &_rygel_external_media_item_proxy_dbus_interface_vtable, data, _rygel_external_media_item_proxy_unregister_object, error);
	if (!result) {
		return 0;
	}
	return result;
}


static void _rygel_external_media_item_proxy_unregister_object (gpointer user_data) {
	gpointer* data;
	data = user_data;
	g_object_unref (data[0]);
	g_object_unref (data[1]);
	g_free (data[2]);
	g_free (data);
}


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);
}



