/* metadata-file.c generated by valac 0.56.19, the Vala compiler
 * generated from metadata-file.vala, do not modify */

/*
 * Copyright (C) 2011-2014 Daiki Ueno <ueno@gnu.org>
 * Copyright (C) 2011-2014 Red Hat, Inc.
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program 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 General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

#include "libkkc/libkkc.h"
#include <stdlib.h>
#include <string.h>
#include <glib.h>
#include <json-glib/json-glib.h>
#include <glib-object.h>
#include <gio/gio.h>
#include <glib/gi18n-lib.h>
#include <config.h>

#if !defined(VALA_STRICT_C)
#if !defined(__clang__) && defined(__GNUC__) && (__GNUC__ >= 14)
#pragma GCC diagnostic warning "-Wincompatible-pointer-types"
#elif defined(__clang__) && (__clang_major__ >= 16)
#pragma clang diagnostic ignored "-Wincompatible-function-pointer-types"
#pragma clang diagnostic ignored "-Wincompatible-pointer-types"
#endif
#endif

enum  {
	KKC_METADATA_FILE_0_PROPERTY,
	KKC_METADATA_FILE_NAME_PROPERTY,
	KKC_METADATA_FILE_LABEL_PROPERTY,
	KKC_METADATA_FILE_DESCRIPTION_PROPERTY,
	KKC_METADATA_FILE_FILENAME_PROPERTY,
	KKC_METADATA_FILE_NUM_PROPERTIES
};
static GParamSpec* kkc_metadata_file_properties[KKC_METADATA_FILE_NUM_PROPERTIES];
#define _g_free0(var) (var = (g_free (var), NULL))
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
#define __vala_JsonNode_free0(var) ((var == NULL) ? NULL : (var = (_vala_JsonNode_free (var), NULL)))
#define _json_object_unref0(var) ((var == NULL) ? NULL : (var = (json_object_unref (var), NULL)))

struct _KkcMetadataFilePrivate {
	gchar* _name;
	gchar* _label;
	gchar* _description;
	gchar* _filename;
};

static gint KkcMetadataFile_private_offset;
static gpointer kkc_metadata_file_parent_class = NULL;
static GInitableIface * kkc_metadata_file_g_initable_parent_iface = NULL;

static gboolean kkc_metadata_file_real_parse (KkcMetadataFile* self,
                                       JsonObject* object,
                                       GError** error);
static gboolean kkc_metadata_file_real_init (GInitable* base,
                                      GCancellable* cancellable,
                                      GError** error);
static JsonNode* _vala_JsonNode_copy (JsonNode* self);
static void _vala_JsonNode_free (JsonNode* self);
static void kkc_metadata_file_finalize (GObject * obj);
static GType kkc_metadata_file_get_type_once (void);
static void _vala_kkc_metadata_file_get_property (GObject * object,
                                           guint property_id,
                                           GValue * value,
                                           GParamSpec * pspec);
static void _vala_kkc_metadata_file_set_property (GObject * object,
                                           guint property_id,
                                           const GValue * value,
                                           GParamSpec * pspec);

GQuark
kkc_metadata_format_error_quark (void)
{
	return g_quark_from_static_string ("kkc-metadata-format-error-quark");
}

static GType
kkc_metadata_format_error_get_type_once (void)
{
	static const GEnumValue values[] = {{KKC_METADATA_FORMAT_ERROR_MISSING_FIELD, "KKC_METADATA_FORMAT_ERROR_MISSING_FIELD", "missing-field"}, {KKC_METADATA_FORMAT_ERROR_INVALID_FIELD, "KKC_METADATA_FORMAT_ERROR_INVALID_FIELD", "invalid-field"}, {0, NULL, NULL}};
	GType kkc_metadata_format_error_type_id;
	kkc_metadata_format_error_type_id = g_enum_register_static ("KkcMetadataFormatError", values);
	return kkc_metadata_format_error_type_id;
}

GType
kkc_metadata_format_error_get_type (void)
{
	static volatile gsize kkc_metadata_format_error_type_id__once = 0;
	if (g_once_init_enter (&kkc_metadata_format_error_type_id__once)) {
		GType kkc_metadata_format_error_type_id;
		kkc_metadata_format_error_type_id = kkc_metadata_format_error_get_type_once ();
		g_once_init_leave (&kkc_metadata_format_error_type_id__once, kkc_metadata_format_error_type_id);
	}
	return kkc_metadata_format_error_type_id__once;
}

static inline gpointer
kkc_metadata_file_get_instance_private (KkcMetadataFile* self)
{
	return G_STRUCT_MEMBER_P (self, KkcMetadataFile_private_offset);
}

KkcMetadataFile*
kkc_metadata_file_construct (GType object_type,
                             const gchar* name,
                             const gchar* filename,
                             GError** error)
{
	KkcMetadataFile * self = NULL;
	GError* _inner_error0_ = NULL;
	g_return_val_if_fail (name != NULL, NULL);
	g_return_val_if_fail (filename != NULL, NULL);
	self = (KkcMetadataFile*) g_object_new (object_type, "name", name, "filename", filename, NULL);
	g_initable_init ((GInitable*) self, NULL, &_inner_error0_);
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
		g_propagate_error (error, _inner_error0_);
		_g_object_unref0 (self);
		return NULL;
	}
	return self;
}

static gboolean
kkc_metadata_file_real_parse (KkcMetadataFile* self,
                              JsonObject* object,
                              GError** error)
{
	gboolean _tmp0_ = FALSE;
	g_critical ("Type `%s' does not implement abstract method `kkc_metadata_file_parse'", g_type_name (G_TYPE_FROM_INSTANCE (self)));
	return _tmp0_;
}

gboolean
kkc_metadata_file_parse (KkcMetadataFile* self,
                         JsonObject* object,
                         GError** error)
{
	KkcMetadataFileClass* _klass_;
	g_return_val_if_fail (self != NULL, FALSE);
	_klass_ = KKC_METADATA_FILE_GET_CLASS (self);
	if (_klass_->parse) {
		return _klass_->parse (self, object, error);
	}
	return FALSE;
}

static JsonNode*
_vala_JsonNode_copy (JsonNode* self)
{
	return g_boxed_copy (json_node_get_type (), self);
}

static gpointer
__vala_JsonNode_copy0 (gpointer self)
{
	return self ? _vala_JsonNode_copy (self) : NULL;
}

static void
_vala_JsonNode_free (JsonNode* self)
{
	g_boxed_free (json_node_get_type (), self);
}

static gpointer
_json_object_ref0 (gpointer self)
{
	return self ? json_object_ref (self) : NULL;
}

static gboolean
kkc_metadata_file_real_init (GInitable* base,
                             GCancellable* cancellable,
                             GError** error)
{
	KkcMetadataFile * self;
	JsonParser* parser = NULL;
	JsonParser* _tmp0_;
	JsonParser* _tmp1_;
	const gchar* _tmp2_;
	JsonNode* root = NULL;
	JsonParser* _tmp4_;
	JsonNode* _tmp5_;
	JsonNode* _tmp6_;
	JsonNode* _tmp7_;
	JsonObject* object = NULL;
	JsonNode* _tmp10_;
	JsonObject* _tmp11_;
	JsonObject* _tmp12_;
	JsonNode* member = NULL;
	JsonObject* _tmp13_;
	JsonObject* _tmp16_;
	JsonNode* _tmp17_;
	JsonNode* _tmp18_;
	gchar* name = NULL;
	JsonNode* _tmp19_;
	const gchar* _tmp20_;
	gchar* _tmp21_;
	JsonObject* _tmp22_;
	JsonObject* _tmp25_;
	JsonNode* _tmp26_;
	JsonNode* _tmp27_;
	gchar* description = NULL;
	JsonNode* _tmp28_;
	const gchar* _tmp29_;
	gchar* _tmp30_;
	JsonObject* _tmp31_;
	gchar* label = NULL;
	const gchar* _tmp33_;
	gchar* _tmp34_;
	const gchar* _tmp35_;
	const gchar* _tmp38_;
	const gchar* _tmp41_;
	const gchar* _tmp42_;
	GError* _inner_error0_ = NULL;
	gboolean result;
	self = (KkcMetadataFile*) base;
	_tmp0_ = json_parser_new ();
	parser = _tmp0_;
	_tmp1_ = parser;
	_tmp2_ = self->priv->_filename;
	json_parser_load_from_file (_tmp1_, _tmp2_, &_inner_error0_);
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
		gboolean _tmp3_ = FALSE;
		g_propagate_error (error, _inner_error0_);
		_g_object_unref0 (parser);
		return _tmp3_;
	}
	_tmp4_ = parser;
	_tmp5_ = json_parser_get_root (_tmp4_);
	_tmp6_ = __vala_JsonNode_copy0 (_tmp5_);
	root = _tmp6_;
	_tmp7_ = root;
	if (json_node_get_node_type (_tmp7_) != JSON_NODE_OBJECT) {
		GError* _tmp8_;
		gboolean _tmp9_ = FALSE;
		_tmp8_ = g_error_new_literal (KKC_METADATA_FORMAT_ERROR, KKC_METADATA_FORMAT_ERROR_MISSING_FIELD, "metadata must be a JSON object");
		_inner_error0_ = _tmp8_;
		g_propagate_error (error, _inner_error0_);
		__vala_JsonNode_free0 (root);
		_g_object_unref0 (parser);
		return _tmp9_;
	}
	_tmp10_ = root;
	_tmp11_ = json_node_get_object (_tmp10_);
	_tmp12_ = _json_object_ref0 (_tmp11_);
	object = _tmp12_;
	_tmp13_ = object;
	if (!json_object_has_member (_tmp13_, "name")) {
		GError* _tmp14_;
		gboolean _tmp15_ = FALSE;
		_tmp14_ = g_error_new_literal (KKC_METADATA_FORMAT_ERROR, KKC_METADATA_FORMAT_ERROR_MISSING_FIELD, "name is not defined in metadata");
		_inner_error0_ = _tmp14_;
		g_propagate_error (error, _inner_error0_);
		__vala_JsonNode_free0 (member);
		_json_object_unref0 (object);
		__vala_JsonNode_free0 (root);
		_g_object_unref0 (parser);
		return _tmp15_;
	}
	_tmp16_ = object;
	_tmp17_ = json_object_get_member (_tmp16_, "name");
	_tmp18_ = __vala_JsonNode_copy0 (_tmp17_);
	__vala_JsonNode_free0 (member);
	member = _tmp18_;
	_tmp19_ = member;
	_tmp20_ = json_node_get_string (_tmp19_);
	_tmp21_ = g_strdup (_tmp20_);
	name = _tmp21_;
	_tmp22_ = object;
	if (!json_object_has_member (_tmp22_, "description")) {
		GError* _tmp23_;
		gboolean _tmp24_ = FALSE;
		_tmp23_ = g_error_new_literal (KKC_METADATA_FORMAT_ERROR, KKC_METADATA_FORMAT_ERROR_MISSING_FIELD, "description is not defined in metadata");
		_inner_error0_ = _tmp23_;
		g_propagate_error (error, _inner_error0_);
		_g_free0 (name);
		__vala_JsonNode_free0 (member);
		_json_object_unref0 (object);
		__vala_JsonNode_free0 (root);
		_g_object_unref0 (parser);
		return _tmp24_;
	}
	_tmp25_ = object;
	_tmp26_ = json_object_get_member (_tmp25_, "description");
	_tmp27_ = __vala_JsonNode_copy0 (_tmp26_);
	__vala_JsonNode_free0 (member);
	member = _tmp27_;
	_tmp28_ = member;
	_tmp29_ = json_node_get_string (_tmp28_);
	_tmp30_ = g_strdup (_tmp29_);
	description = _tmp30_;
	_tmp31_ = object;
	kkc_metadata_file_parse (self, _tmp31_, &_inner_error0_);
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
		gboolean _tmp32_ = FALSE;
		g_propagate_error (error, _inner_error0_);
		_g_free0 (description);
		_g_free0 (name);
		__vala_JsonNode_free0 (member);
		_json_object_unref0 (object);
		__vala_JsonNode_free0 (root);
		_g_object_unref0 (parser);
		return _tmp32_;
	}
	_tmp33_ = name;
	_tmp34_ = g_strdup (_tmp33_);
	label = _tmp34_;
	_tmp35_ = label;
	if (g_strcmp0 (_tmp35_, "") != 0) {
		const gchar* _tmp36_;
		gchar* _tmp37_;
		_tmp36_ = label;
		_tmp37_ = g_strdup (g_dgettext (GETTEXT_PACKAGE, _tmp36_));
		_g_free0 (label);
		label = _tmp37_;
	}
	_tmp38_ = description;
	if (g_strcmp0 (_tmp38_, "") != 0) {
		const gchar* _tmp39_;
		gchar* _tmp40_;
		_tmp39_ = description;
		_tmp40_ = g_strdup (g_dgettext (GETTEXT_PACKAGE, _tmp39_));
		_g_free0 (description);
		description = _tmp40_;
	}
	_tmp41_ = label;
	kkc_metadata_file_set_label (self, _tmp41_);
	_tmp42_ = description;
	kkc_metadata_file_set_description (self, _tmp42_);
	result = TRUE;
	_g_free0 (label);
	_g_free0 (description);
	_g_free0 (name);
	__vala_JsonNode_free0 (member);
	_json_object_unref0 (object);
	__vala_JsonNode_free0 (root);
	_g_object_unref0 (parser);
	return result;
}

const gchar*
kkc_metadata_file_get_name (KkcMetadataFile* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_name;
	result = _tmp0_;
	return result;
}

void
kkc_metadata_file_set_name (KkcMetadataFile* self,
                            const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = kkc_metadata_file_get_name (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_name);
		self->priv->_name = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, kkc_metadata_file_properties[KKC_METADATA_FILE_NAME_PROPERTY]);
	}
}

const gchar*
kkc_metadata_file_get_label (KkcMetadataFile* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_label;
	result = _tmp0_;
	return result;
}

void
kkc_metadata_file_set_label (KkcMetadataFile* self,
                             const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = kkc_metadata_file_get_label (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_label);
		self->priv->_label = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, kkc_metadata_file_properties[KKC_METADATA_FILE_LABEL_PROPERTY]);
	}
}

const gchar*
kkc_metadata_file_get_description (KkcMetadataFile* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_description;
	result = _tmp0_;
	return result;
}

void
kkc_metadata_file_set_description (KkcMetadataFile* self,
                                   const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = kkc_metadata_file_get_description (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_description);
		self->priv->_description = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, kkc_metadata_file_properties[KKC_METADATA_FILE_DESCRIPTION_PROPERTY]);
	}
}

const gchar*
kkc_metadata_file_get_filename (KkcMetadataFile* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_filename;
	result = _tmp0_;
	return result;
}

void
kkc_metadata_file_set_filename (KkcMetadataFile* self,
                                const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = kkc_metadata_file_get_filename (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_filename);
		self->priv->_filename = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, kkc_metadata_file_properties[KKC_METADATA_FILE_FILENAME_PROPERTY]);
	}
}

static void
kkc_metadata_file_class_init (KkcMetadataFileClass * klass,
                              gpointer klass_data)
{
	kkc_metadata_file_parent_class = g_type_class_peek_parent (klass);
	g_type_class_adjust_private_offset (klass, &KkcMetadataFile_private_offset);
	((KkcMetadataFileClass *) klass)->parse = (gboolean (*) (KkcMetadataFile*, JsonObject*, GError**)) kkc_metadata_file_real_parse;
	G_OBJECT_CLASS (klass)->get_property = _vala_kkc_metadata_file_get_property;
	G_OBJECT_CLASS (klass)->set_property = _vala_kkc_metadata_file_set_property;
	G_OBJECT_CLASS (klass)->finalize = kkc_metadata_file_finalize;
	/**
	         * Name of the metadata.
	         */
	g_object_class_install_property (G_OBJECT_CLASS (klass), KKC_METADATA_FILE_NAME_PROPERTY, kkc_metadata_file_properties[KKC_METADATA_FILE_NAME_PROPERTY] = g_param_spec_string ("name", "name", "name", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_CONSTRUCT));
	/**
	         * Label string of the metadata.
	         */
	g_object_class_install_property (G_OBJECT_CLASS (klass), KKC_METADATA_FILE_LABEL_PROPERTY, kkc_metadata_file_properties[KKC_METADATA_FILE_LABEL_PROPERTY] = g_param_spec_string ("label", "label", "label", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_CONSTRUCT));
	/**
	         * Description of the metadata.
	         */
	g_object_class_install_property (G_OBJECT_CLASS (klass), KKC_METADATA_FILE_DESCRIPTION_PROPERTY, kkc_metadata_file_properties[KKC_METADATA_FILE_DESCRIPTION_PROPERTY] = g_param_spec_string ("description", "description", "description", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_CONSTRUCT));
	/**
	         * Location of the metadata file.
	         */
	g_object_class_install_property (G_OBJECT_CLASS (klass), KKC_METADATA_FILE_FILENAME_PROPERTY, kkc_metadata_file_properties[KKC_METADATA_FILE_FILENAME_PROPERTY] = g_param_spec_string ("filename", "filename", "filename", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_CONSTRUCT));
}

static void
kkc_metadata_file_g_initable_interface_init (GInitableIface * iface,
                                             gpointer iface_data)
{
	kkc_metadata_file_g_initable_parent_iface = g_type_interface_peek_parent (iface);
	iface->init = (gboolean (*) (GInitable*, GCancellable*, GError**)) kkc_metadata_file_real_init;
}

static void
kkc_metadata_file_instance_init (KkcMetadataFile * self,
                                 gpointer klass)
{
	self->priv = kkc_metadata_file_get_instance_private (self);
}

static void
kkc_metadata_file_finalize (GObject * obj)
{
	KkcMetadataFile * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, KKC_TYPE_METADATA_FILE, KkcMetadataFile);
	_g_free0 (self->priv->_name);
	_g_free0 (self->priv->_label);
	_g_free0 (self->priv->_description);
	_g_free0 (self->priv->_filename);
	G_OBJECT_CLASS (kkc_metadata_file_parent_class)->finalize (obj);
}

static GType
kkc_metadata_file_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (KkcMetadataFileClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) kkc_metadata_file_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (KkcMetadataFile), 0, (GInstanceInitFunc) kkc_metadata_file_instance_init, NULL };
	static const GInterfaceInfo g_initable_info = { (GInterfaceInitFunc) kkc_metadata_file_g_initable_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
	GType kkc_metadata_file_type_id;
	kkc_metadata_file_type_id = g_type_register_static (G_TYPE_OBJECT, "KkcMetadataFile", &g_define_type_info, G_TYPE_FLAG_ABSTRACT);
	g_type_add_interface_static (kkc_metadata_file_type_id, g_initable_get_type (), &g_initable_info);
	KkcMetadataFile_private_offset = g_type_add_instance_private (kkc_metadata_file_type_id, sizeof (KkcMetadataFilePrivate));
	return kkc_metadata_file_type_id;
}

GType
kkc_metadata_file_get_type (void)
{
	static volatile gsize kkc_metadata_file_type_id__once = 0;
	if (g_once_init_enter (&kkc_metadata_file_type_id__once)) {
		GType kkc_metadata_file_type_id;
		kkc_metadata_file_type_id = kkc_metadata_file_get_type_once ();
		g_once_init_leave (&kkc_metadata_file_type_id__once, kkc_metadata_file_type_id);
	}
	return kkc_metadata_file_type_id__once;
}

static void
_vala_kkc_metadata_file_get_property (GObject * object,
                                      guint property_id,
                                      GValue * value,
                                      GParamSpec * pspec)
{
	KkcMetadataFile * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, KKC_TYPE_METADATA_FILE, KkcMetadataFile);
	switch (property_id) {
		case KKC_METADATA_FILE_NAME_PROPERTY:
		g_value_set_string (value, kkc_metadata_file_get_name (self));
		break;
		case KKC_METADATA_FILE_LABEL_PROPERTY:
		g_value_set_string (value, kkc_metadata_file_get_label (self));
		break;
		case KKC_METADATA_FILE_DESCRIPTION_PROPERTY:
		g_value_set_string (value, kkc_metadata_file_get_description (self));
		break;
		case KKC_METADATA_FILE_FILENAME_PROPERTY:
		g_value_set_string (value, kkc_metadata_file_get_filename (self));
		break;
		default:
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
		break;
	}
}

static void
_vala_kkc_metadata_file_set_property (GObject * object,
                                      guint property_id,
                                      const GValue * value,
                                      GParamSpec * pspec)
{
	KkcMetadataFile * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, KKC_TYPE_METADATA_FILE, KkcMetadataFile);
	switch (property_id) {
		case KKC_METADATA_FILE_NAME_PROPERTY:
		kkc_metadata_file_set_name (self, g_value_get_string (value));
		break;
		case KKC_METADATA_FILE_LABEL_PROPERTY:
		kkc_metadata_file_set_label (self, g_value_get_string (value));
		break;
		case KKC_METADATA_FILE_DESCRIPTION_PROPERTY:
		kkc_metadata_file_set_description (self, g_value_get_string (value));
		break;
		case KKC_METADATA_FILE_FILENAME_PROPERTY:
		kkc_metadata_file_set_filename (self, g_value_get_string (value));
		break;
		default:
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
		break;
	}
}

