From 143bfc9f801c84428074312d661f8e08803df83b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Frings-F=C3=BCrst?= Date: Sat, 20 Aug 2016 15:09:31 +0200 Subject: Imported Upstream version 0.23.5 --- plugins/shotwell-data-imports/FSpotDatabaseTable.c | 992 +++++++++++++++++++++ 1 file changed, 992 insertions(+) create mode 100644 plugins/shotwell-data-imports/FSpotDatabaseTable.c (limited to 'plugins/shotwell-data-imports/FSpotDatabaseTable.c') diff --git a/plugins/shotwell-data-imports/FSpotDatabaseTable.c b/plugins/shotwell-data-imports/FSpotDatabaseTable.c new file mode 100644 index 0000000..48e5030 --- /dev/null +++ b/plugins/shotwell-data-imports/FSpotDatabaseTable.c @@ -0,0 +1,992 @@ +/* FSpotDatabaseTable.c generated by valac 0.32.1, the Vala compiler + * generated from FSpotDatabaseTable.vala, do not modify */ + +/* Copyright 2016 Software Freedom Conservancy Inc. + * + * This software is licensed under the GNU LGPL (version 2.1 or later). + * See the COPYING file in this distribution. + */ + +#include +#include +#include +#include +#include + + +#define TYPE_IMPORTABLE_DATABASE_TABLE (importable_database_table_get_type ()) +#define IMPORTABLE_DATABASE_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IMPORTABLE_DATABASE_TABLE, ImportableDatabaseTable)) +#define IMPORTABLE_DATABASE_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IMPORTABLE_DATABASE_TABLE, ImportableDatabaseTableClass)) +#define IS_IMPORTABLE_DATABASE_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IMPORTABLE_DATABASE_TABLE)) +#define IS_IMPORTABLE_DATABASE_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IMPORTABLE_DATABASE_TABLE)) +#define IMPORTABLE_DATABASE_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IMPORTABLE_DATABASE_TABLE, ImportableDatabaseTableClass)) + +typedef struct _ImportableDatabaseTable ImportableDatabaseTable; +typedef struct _ImportableDatabaseTableClass ImportableDatabaseTableClass; +typedef struct _ImportableDatabaseTablePrivate ImportableDatabaseTablePrivate; + +#define DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE (data_imports_fspot_db_fspot_database_table_get_type ()) +#define DATA_IMPORTS_FSPOT_DB_FSPOT_DATABASE_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE, DataImportsFSpotDbFSpotDatabaseTable)) +#define DATA_IMPORTS_FSPOT_DB_FSPOT_DATABASE_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE, DataImportsFSpotDbFSpotDatabaseTableClass)) +#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_DATABASE_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE)) +#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_DATABASE_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE)) +#define DATA_IMPORTS_FSPOT_DB_FSPOT_DATABASE_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE, DataImportsFSpotDbFSpotDatabaseTableClass)) + +typedef struct _DataImportsFSpotDbFSpotDatabaseTable DataImportsFSpotDbFSpotDatabaseTable; +typedef struct _DataImportsFSpotDbFSpotDatabaseTableClass DataImportsFSpotDbFSpotDatabaseTableClass; +typedef struct _DataImportsFSpotDbFSpotDatabaseTablePrivate DataImportsFSpotDbFSpotDatabaseTablePrivate; + +#define DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_TABLE_BEHAVIOR (data_imports_fspot_db_fspot_table_behavior_get_type ()) +#define DATA_IMPORTS_FSPOT_DB_FSPOT_TABLE_BEHAVIOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_TABLE_BEHAVIOR, DataImportsFSpotDbFSpotTableBehavior)) +#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_TABLE_BEHAVIOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_TABLE_BEHAVIOR)) +#define DATA_IMPORTS_FSPOT_DB_FSPOT_TABLE_BEHAVIOR_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_TABLE_BEHAVIOR, DataImportsFSpotDbFSpotTableBehaviorIface)) + +typedef struct _DataImportsFSpotDbFSpotTableBehavior DataImportsFSpotDbFSpotTableBehavior; +typedef struct _DataImportsFSpotDbFSpotTableBehaviorIface DataImportsFSpotDbFSpotTableBehaviorIface; +#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) +#define _g_free0(var) (var = (g_free (var), NULL)) +#define _sqlite3_finalize0(var) ((var == NULL) ? NULL : (var = (sqlite3_finalize (var), NULL))) + +struct _ImportableDatabaseTable { + GTypeInstance parent_instance; + volatile int ref_count; + ImportableDatabaseTablePrivate * priv; + gchar* table_name; +}; + +struct _ImportableDatabaseTableClass { + GTypeClass parent_class; + void (*finalize) (ImportableDatabaseTable *self); +}; + +struct _DataImportsFSpotDbFSpotTableBehaviorIface { + GTypeInterface parent_iface; + gchar* (*get_table_name) (DataImportsFSpotDbFSpotTableBehavior* self); + gchar** (*list_columns) (DataImportsFSpotDbFSpotTableBehavior* self, int* result_length1); + void (*build_row) (DataImportsFSpotDbFSpotTableBehavior* self, sqlite3_stmt* stmt, gpointer* row, gint offset); +}; + +struct _DataImportsFSpotDbFSpotDatabaseTable { + ImportableDatabaseTable parent_instance; + DataImportsFSpotDbFSpotDatabaseTablePrivate * priv; + sqlite3* fspot_db; + DataImportsFSpotDbFSpotTableBehavior* behavior; +}; + +struct _DataImportsFSpotDbFSpotDatabaseTableClass { + ImportableDatabaseTableClass parent_class; +}; + +struct _DataImportsFSpotDbFSpotDatabaseTablePrivate { + GType t_type; + GBoxedCopyFunc t_dup_func; + GDestroyNotify t_destroy_func; +}; + +typedef enum { + DATABASE_ERROR_ERROR, + DATABASE_ERROR_BACKING, + DATABASE_ERROR_MEMORY, + DATABASE_ERROR_ABORT, + DATABASE_ERROR_LIMITS, + DATABASE_ERROR_TYPESPEC +} DatabaseError; +#define DATABASE_ERROR database_error_quark () + +static gpointer data_imports_fspot_db_fspot_database_table_parent_class = NULL; + +gpointer importable_database_table_ref (gpointer instance); +void importable_database_table_unref (gpointer instance); +GParamSpec* param_spec_importable_database_table (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); +void value_set_importable_database_table (GValue* value, gpointer v_object); +void value_take_importable_database_table (GValue* value, gpointer v_object); +gpointer value_get_importable_database_table (const GValue* value); +GType importable_database_table_get_type (void) G_GNUC_CONST; +GType data_imports_fspot_db_fspot_database_table_get_type (void) G_GNUC_CONST; +GType data_imports_fspot_db_fspot_table_behavior_get_type (void) G_GNUC_CONST; +#define DATA_IMPORTS_FSPOT_DB_FSPOT_DATABASE_TABLE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE, DataImportsFSpotDbFSpotDatabaseTablePrivate)) +enum { + DATA_IMPORTS_FSPOT_DB_FSPOT_DATABASE_TABLE_DUMMY_PROPERTY +}; +DataImportsFSpotDbFSpotDatabaseTable* data_imports_fspot_db_fspot_database_table_construct (GType object_type, GType t_type, GBoxedCopyFunc t_dup_func, GDestroyNotify t_destroy_func, sqlite3* db); +ImportableDatabaseTable* importable_database_table_construct (GType object_type); +void data_imports_fspot_db_fspot_database_table_set_behavior (DataImportsFSpotDbFSpotDatabaseTable* self, DataImportsFSpotDbFSpotTableBehavior* behavior); +void importable_database_table_set_table_name (ImportableDatabaseTable* self, const gchar* table_name); +gchar* data_imports_fspot_db_fspot_table_behavior_get_table_name (DataImportsFSpotDbFSpotTableBehavior* self); +DataImportsFSpotDbFSpotTableBehavior* data_imports_fspot_db_fspot_database_table_get_behavior (DataImportsFSpotDbFSpotDatabaseTable* self); +gchar* data_imports_fspot_db_fspot_database_table_get_joined_column_list (DataImportsFSpotDbFSpotDatabaseTable* self, gboolean with_table); +gchar** data_imports_fspot_db_fspot_table_behavior_list_columns (DataImportsFSpotDbFSpotTableBehavior* self, int* result_length1); +GQuark database_error_quark (void); +gint data_imports_fspot_db_fspot_database_table_select_all (DataImportsFSpotDbFSpotDatabaseTable* self, sqlite3_stmt** stmt, GError** error); +void importable_database_table_throw_error (const gchar* method, gint res, GError** error); +static void data_imports_fspot_db_fspot_database_table_finalize (ImportableDatabaseTable* obj); +static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func); +static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func); + + +DataImportsFSpotDbFSpotDatabaseTable* data_imports_fspot_db_fspot_database_table_construct (GType object_type, GType t_type, GBoxedCopyFunc t_dup_func, GDestroyNotify t_destroy_func, sqlite3* db) { + DataImportsFSpotDbFSpotDatabaseTable* self = NULL; + sqlite3* _tmp0_ = NULL; +#line 16 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + g_return_val_if_fail (db != NULL, NULL); +#line 16 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + self = (DataImportsFSpotDbFSpotDatabaseTable*) importable_database_table_construct (object_type); +#line 16 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + self->priv->t_type = t_type; +#line 16 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + self->priv->t_dup_func = t_dup_func; +#line 16 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + self->priv->t_destroy_func = t_destroy_func; +#line 17 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp0_ = db; +#line 17 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + self->fspot_db = _tmp0_; +#line 16 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + return self; +#line 147 "FSpotDatabaseTable.c" +} + + +static gpointer _g_object_ref0 (gpointer self) { +#line 21 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + return self ? g_object_ref (self) : NULL; +#line 154 "FSpotDatabaseTable.c" +} + + +void data_imports_fspot_db_fspot_database_table_set_behavior (DataImportsFSpotDbFSpotDatabaseTable* self, DataImportsFSpotDbFSpotTableBehavior* behavior) { + DataImportsFSpotDbFSpotTableBehavior* _tmp0_ = NULL; + DataImportsFSpotDbFSpotTableBehavior* _tmp1_ = NULL; + DataImportsFSpotDbFSpotTableBehavior* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; + gchar* _tmp4_ = NULL; +#line 20 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + g_return_if_fail (DATA_IMPORTS_FSPOT_DB_IS_FSPOT_DATABASE_TABLE (self)); +#line 20 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + g_return_if_fail (DATA_IMPORTS_FSPOT_DB_IS_FSPOT_TABLE_BEHAVIOR (behavior)); +#line 21 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp0_ = behavior; +#line 21 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp1_ = _g_object_ref0 (_tmp0_); +#line 21 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _g_object_unref0 (self->behavior); +#line 21 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + self->behavior = _tmp1_; +#line 22 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp2_ = behavior; +#line 22 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp3_ = data_imports_fspot_db_fspot_table_behavior_get_table_name (_tmp2_); +#line 22 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp4_ = _tmp3_; +#line 22 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + importable_database_table_set_table_name (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_IMPORTABLE_DATABASE_TABLE, ImportableDatabaseTable), _tmp4_); +#line 22 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _g_free0 (_tmp4_); +#line 186 "FSpotDatabaseTable.c" +} + + +DataImportsFSpotDbFSpotTableBehavior* data_imports_fspot_db_fspot_database_table_get_behavior (DataImportsFSpotDbFSpotDatabaseTable* self) { + DataImportsFSpotDbFSpotTableBehavior* result = NULL; + DataImportsFSpotDbFSpotTableBehavior* _tmp0_ = NULL; + DataImportsFSpotDbFSpotTableBehavior* _tmp1_ = NULL; +#line 25 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + g_return_val_if_fail (DATA_IMPORTS_FSPOT_DB_IS_FSPOT_DATABASE_TABLE (self), NULL); +#line 26 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp0_ = self->behavior; +#line 26 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp1_ = _g_object_ref0 (_tmp0_); +#line 26 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + result = _tmp1_; +#line 26 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + return result; +#line 204 "FSpotDatabaseTable.c" +} + + +static gchar* _vala_g_strjoinv (const gchar* separator, gchar** str_array, int str_array_length1) { + gchar* result = NULL; + const gchar* _tmp0_ = NULL; + gboolean _tmp1_ = FALSE; + gboolean _tmp2_ = FALSE; + gchar** _tmp3_ = NULL; + gint _tmp3__length1 = 0; +#line 1054 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp0_ = separator; +#line 1054 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + if (_tmp0_ == NULL) { +#line 1055 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + separator = ""; +#line 221 "FSpotDatabaseTable.c" + } +#line 1057 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp3_ = str_array; +#line 1057 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp3__length1 = str_array_length1; +#line 1057 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + if (_tmp3_ != NULL) { +#line 1057 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp2_ = TRUE; +#line 231 "FSpotDatabaseTable.c" + } else { + gchar** _tmp4_ = NULL; + gint _tmp4__length1 = 0; +#line 1057 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp4_ = str_array; +#line 1057 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp4__length1 = str_array_length1; +#line 1057 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp2_ = _tmp4__length1 > 0; +#line 241 "FSpotDatabaseTable.c" + } +#line 1057 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + if (_tmp2_) { +#line 1057 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp1_ = TRUE; +#line 247 "FSpotDatabaseTable.c" + } else { + gboolean _tmp5_ = FALSE; + gchar** _tmp6_ = NULL; + gint _tmp6__length1 = 0; +#line 1057 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp6_ = str_array; +#line 1057 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp6__length1 = str_array_length1; +#line 1057 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + if (_tmp6__length1 == -1) { +#line 258 "FSpotDatabaseTable.c" + gchar** _tmp7_ = NULL; + gint _tmp7__length1 = 0; + const gchar* _tmp8_ = NULL; +#line 1057 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp7_ = str_array; +#line 1057 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp7__length1 = str_array_length1; +#line 1057 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp8_ = _tmp7_[0]; +#line 1057 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp5_ = _tmp8_ != NULL; +#line 270 "FSpotDatabaseTable.c" + } else { +#line 1057 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp5_ = FALSE; +#line 274 "FSpotDatabaseTable.c" + } +#line 1057 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp1_ = _tmp5_; +#line 278 "FSpotDatabaseTable.c" + } +#line 1057 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + if (_tmp1_) { +#line 282 "FSpotDatabaseTable.c" + gint i = 0; + gsize len = 0UL; + gint _tmp31_ = 0; + gint _tmp33_ = 0; + gint _tmp34_ = 0; + gsize _tmp35_ = 0UL; + const gchar* _tmp36_ = NULL; + gint _tmp37_ = 0; + gint _tmp38_ = 0; + gint _tmp39_ = 0; + const gchar* res = NULL; + gsize _tmp40_ = 0UL; + void* _tmp41_ = NULL; + void* ptr = NULL; + const gchar* _tmp42_ = NULL; + gchar** _tmp43_ = NULL; + gint _tmp43__length1 = 0; + const gchar* _tmp44_ = NULL; + void* _tmp45_ = NULL; + const gchar* _tmp62_ = NULL; +#line 1059 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + len = (gsize) 1; +#line 305 "FSpotDatabaseTable.c" + { + gboolean _tmp9_ = FALSE; +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + i = 0; +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp9_ = TRUE; +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + while (TRUE) { +#line 314 "FSpotDatabaseTable.c" + gboolean _tmp11_ = FALSE; + gboolean _tmp12_ = FALSE; + gchar** _tmp13_ = NULL; + gint _tmp13__length1 = 0; + gint _tmp21_ = 0; + gchar** _tmp22_ = NULL; + gint _tmp22__length1 = 0; + gint _tmp23_ = 0; + const gchar* _tmp24_ = NULL; + gsize _tmp30_ = 0UL; +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + if (!_tmp9_) { +#line 327 "FSpotDatabaseTable.c" + gint _tmp10_ = 0; +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp10_ = i; +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + i = _tmp10_ + 1; +#line 333 "FSpotDatabaseTable.c" + } +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp9_ = FALSE; +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp13_ = str_array; +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp13__length1 = str_array_length1; +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + if (_tmp13__length1 != -1) { +#line 343 "FSpotDatabaseTable.c" + gint _tmp14_ = 0; + gchar** _tmp15_ = NULL; + gint _tmp15__length1 = 0; +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp14_ = i; +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp15_ = str_array; +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp15__length1 = str_array_length1; +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp12_ = _tmp14_ < _tmp15__length1; +#line 355 "FSpotDatabaseTable.c" + } else { +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp12_ = FALSE; +#line 359 "FSpotDatabaseTable.c" + } +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + if (_tmp12_) { +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp11_ = TRUE; +#line 365 "FSpotDatabaseTable.c" + } else { + gboolean _tmp16_ = FALSE; + gchar** _tmp17_ = NULL; + gint _tmp17__length1 = 0; +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp17_ = str_array; +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp17__length1 = str_array_length1; +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + if (_tmp17__length1 == -1) { +#line 376 "FSpotDatabaseTable.c" + gchar** _tmp18_ = NULL; + gint _tmp18__length1 = 0; + gint _tmp19_ = 0; + const gchar* _tmp20_ = NULL; +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp18_ = str_array; +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp18__length1 = str_array_length1; +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp19_ = i; +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp20_ = _tmp18_[_tmp19_]; +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp16_ = _tmp20_ != NULL; +#line 391 "FSpotDatabaseTable.c" + } else { +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp16_ = FALSE; +#line 395 "FSpotDatabaseTable.c" + } +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp11_ = _tmp16_; +#line 399 "FSpotDatabaseTable.c" + } +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + if (!_tmp11_) { +#line 1060 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + break; +#line 405 "FSpotDatabaseTable.c" + } +#line 1061 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp22_ = str_array; +#line 1061 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp22__length1 = str_array_length1; +#line 1061 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp23_ = i; +#line 1061 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp24_ = _tmp22_[_tmp23_]; +#line 1061 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + if (_tmp24_ != NULL) { +#line 417 "FSpotDatabaseTable.c" + gchar** _tmp25_ = NULL; + gint _tmp25__length1 = 0; + gint _tmp26_ = 0; + const gchar* _tmp27_ = NULL; + gint _tmp28_ = 0; + gint _tmp29_ = 0; +#line 1061 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp25_ = str_array; +#line 1061 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp25__length1 = str_array_length1; +#line 1061 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp26_ = i; +#line 1061 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp27_ = _tmp25_[_tmp26_]; +#line 1061 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp28_ = strlen ((const gchar*) _tmp27_); +#line 1061 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp29_ = _tmp28_; +#line 1061 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp21_ = _tmp29_; +#line 438 "FSpotDatabaseTable.c" + } else { +#line 1061 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp21_ = 0; +#line 442 "FSpotDatabaseTable.c" + } +#line 1061 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp30_ = len; +#line 1061 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + len = _tmp30_ + _tmp21_; +#line 448 "FSpotDatabaseTable.c" + } + } +#line 1063 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp31_ = i; +#line 1063 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + if (_tmp31_ == 0) { +#line 455 "FSpotDatabaseTable.c" + gchar* _tmp32_ = NULL; +#line 1064 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp32_ = g_strdup (""); +#line 1064 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + result = _tmp32_; +#line 1064 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + return result; +#line 463 "FSpotDatabaseTable.c" + } +#line 1066 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp33_ = i; +#line 1066 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + str_array_length1 = _tmp33_; +#line 1066 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp34_ = str_array_length1; +#line 1067 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp35_ = len; +#line 1067 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp36_ = separator; +#line 1067 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp37_ = strlen ((const gchar*) _tmp36_); +#line 1067 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp38_ = _tmp37_; +#line 1067 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp39_ = i; +#line 1067 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + len = _tmp35_ + (_tmp38_ * (_tmp39_ - 1)); +#line 1069 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp40_ = len; +#line 1069 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp41_ = g_malloc (_tmp40_); +#line 1069 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + res = _tmp41_; +#line 1070 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp42_ = res; +#line 1070 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp43_ = str_array; +#line 1070 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp43__length1 = str_array_length1; +#line 1070 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp44_ = _tmp43_[0]; +#line 1070 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp45_ = g_stpcpy ((void*) _tmp42_, (const gchar*) _tmp44_); +#line 1070 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + ptr = _tmp45_; +#line 501 "FSpotDatabaseTable.c" + { + gboolean _tmp46_ = FALSE; +#line 1071 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + i = 1; +#line 1071 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp46_ = TRUE; +#line 1071 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + while (TRUE) { +#line 510 "FSpotDatabaseTable.c" + gint _tmp48_ = 0; + gchar** _tmp49_ = NULL; + gint _tmp49__length1 = 0; + void* _tmp50_ = NULL; + const gchar* _tmp51_ = NULL; + void* _tmp52_ = NULL; + const gchar* _tmp53_ = NULL; + gchar** _tmp54_ = NULL; + gint _tmp54__length1 = 0; + gint _tmp55_ = 0; + const gchar* _tmp56_ = NULL; + void* _tmp60_ = NULL; + void* _tmp61_ = NULL; +#line 1071 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + if (!_tmp46_) { +#line 526 "FSpotDatabaseTable.c" + gint _tmp47_ = 0; +#line 1071 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp47_ = i; +#line 1071 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + i = _tmp47_ + 1; +#line 532 "FSpotDatabaseTable.c" + } +#line 1071 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp46_ = FALSE; +#line 1071 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp48_ = i; +#line 1071 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp49_ = str_array; +#line 1071 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp49__length1 = str_array_length1; +#line 1071 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + if (!(_tmp48_ < _tmp49__length1)) { +#line 1071 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + break; +#line 546 "FSpotDatabaseTable.c" + } +#line 1072 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp50_ = ptr; +#line 1072 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp51_ = separator; +#line 1072 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp52_ = g_stpcpy (_tmp50_, (const gchar*) _tmp51_); +#line 1072 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + ptr = _tmp52_; +#line 1073 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp54_ = str_array; +#line 1073 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp54__length1 = str_array_length1; +#line 1073 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp55_ = i; +#line 1073 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp56_ = _tmp54_[_tmp55_]; +#line 1073 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + if (_tmp56_ != NULL) { +#line 566 "FSpotDatabaseTable.c" + gchar** _tmp57_ = NULL; + gint _tmp57__length1 = 0; + gint _tmp58_ = 0; + const gchar* _tmp59_ = NULL; +#line 1073 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp57_ = str_array; +#line 1073 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp57__length1 = str_array_length1; +#line 1073 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp58_ = i; +#line 1073 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp59_ = _tmp57_[_tmp58_]; +#line 1073 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp53_ = (const gchar*) _tmp59_; +#line 581 "FSpotDatabaseTable.c" + } else { +#line 1073 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp53_ = ""; +#line 585 "FSpotDatabaseTable.c" + } +#line 1073 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp60_ = ptr; +#line 1073 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp61_ = g_stpcpy (_tmp60_, _tmp53_); +#line 1073 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + ptr = _tmp61_; +#line 593 "FSpotDatabaseTable.c" + } + } +#line 1076 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp62_ = res; +#line 1076 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + res = NULL; +#line 1076 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + result = (gchar*) _tmp62_; +#line 1076 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + return result; +#line 604 "FSpotDatabaseTable.c" + } else { + gchar* _tmp63_ = NULL; +#line 1078 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp63_ = g_strdup (""); +#line 1078 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + result = _tmp63_; +#line 1078 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + return result; +#line 613 "FSpotDatabaseTable.c" + } +} + + +gchar* data_imports_fspot_db_fspot_database_table_get_joined_column_list (DataImportsFSpotDbFSpotDatabaseTable* self, gboolean with_table) { + gchar* result = NULL; + gchar** columns = NULL; + DataImportsFSpotDbFSpotTableBehavior* _tmp0_ = NULL; + gint _tmp1_ = 0; + gchar** _tmp2_ = NULL; + gint columns_length1 = 0; + gint _columns_size_ = 0; + gboolean _tmp3_ = FALSE; + gchar** _tmp16_ = NULL; + gint _tmp16__length1 = 0; + gchar* _tmp17_ = NULL; +#line 29 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + g_return_val_if_fail (DATA_IMPORTS_FSPOT_DB_IS_FSPOT_DATABASE_TABLE (self), NULL); +#line 30 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp0_ = self->behavior; +#line 30 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp2_ = data_imports_fspot_db_fspot_table_behavior_list_columns (_tmp0_, &_tmp1_); +#line 30 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + columns = _tmp2_; +#line 30 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + columns_length1 = _tmp1_; +#line 30 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _columns_size_ = columns_length1; +#line 31 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp3_ = with_table; +#line 31 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + if (_tmp3_) { +#line 646 "FSpotDatabaseTable.c" + { + gint i = 0; +#line 32 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + i = 0; +#line 651 "FSpotDatabaseTable.c" + { + gboolean _tmp4_ = FALSE; +#line 32 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp4_ = TRUE; +#line 32 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + while (TRUE) { +#line 658 "FSpotDatabaseTable.c" + gint _tmp6_ = 0; + gchar** _tmp7_ = NULL; + gint _tmp7__length1 = 0; + gchar** _tmp8_ = NULL; + gint _tmp8__length1 = 0; + gint _tmp9_ = 0; + const gchar* _tmp10_ = NULL; + gchar** _tmp11_ = NULL; + gint _tmp11__length1 = 0; + gint _tmp12_ = 0; + const gchar* _tmp13_ = NULL; + gchar* _tmp14_ = NULL; + gchar* _tmp15_ = NULL; +#line 32 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + if (!_tmp4_) { +#line 674 "FSpotDatabaseTable.c" + gint _tmp5_ = 0; +#line 32 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp5_ = i; +#line 32 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + i = _tmp5_ + 1; +#line 680 "FSpotDatabaseTable.c" + } +#line 32 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp4_ = FALSE; +#line 32 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp6_ = i; +#line 32 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp7_ = columns; +#line 32 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp7__length1 = columns_length1; +#line 32 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + if (!(_tmp6_ < _tmp7__length1)) { +#line 32 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + break; +#line 694 "FSpotDatabaseTable.c" + } +#line 33 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp8_ = columns; +#line 33 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp8__length1 = columns_length1; +#line 33 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp9_ = i; +#line 33 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp10_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_IMPORTABLE_DATABASE_TABLE, ImportableDatabaseTable)->table_name; +#line 33 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp11_ = columns; +#line 33 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp11__length1 = columns_length1; +#line 33 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp12_ = i; +#line 33 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp13_ = _tmp11_[_tmp12_]; +#line 33 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp14_ = g_strdup_printf ("%s.%s", _tmp10_, _tmp13_); +#line 33 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _g_free0 (_tmp8_[_tmp9_]); +#line 33 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp8_[_tmp9_] = _tmp14_; +#line 33 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp15_ = _tmp8_[_tmp9_]; +#line 720 "FSpotDatabaseTable.c" + } + } + } + } +#line 34 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp16_ = columns; +#line 34 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp16__length1 = columns_length1; +#line 34 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp17_ = _vala_g_strjoinv (", ", _tmp16_, _tmp16__length1); +#line 34 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + result = _tmp17_; +#line 34 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + columns = (_vala_array_free (columns, columns_length1, (GDestroyNotify) g_free), NULL); +#line 34 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + return result; +#line 737 "FSpotDatabaseTable.c" +} + + +gint data_imports_fspot_db_fspot_database_table_select_all (DataImportsFSpotDbFSpotDatabaseTable* self, sqlite3_stmt** stmt, GError** error) { + sqlite3_stmt* _vala_stmt = NULL; + gint result = 0; + gchar* column_list = NULL; + gchar* _tmp0_ = NULL; + gchar* sql = NULL; + const gchar* _tmp1_ = NULL; + const gchar* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; + gint res = 0; + sqlite3* _tmp4_ = NULL; + const gchar* _tmp5_ = NULL; + sqlite3_stmt* _tmp6_ = NULL; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + sqlite3_stmt* _tmp13_ = NULL; + gint _tmp14_ = 0; + gboolean _tmp15_ = FALSE; + gint _tmp16_ = 0; + GError * _inner_error_ = NULL; +#line 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + g_return_val_if_fail (DATA_IMPORTS_FSPOT_DB_IS_FSPOT_DATABASE_TABLE (self), 0); +#line 38 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp0_ = data_imports_fspot_db_fspot_database_table_get_joined_column_list (self, FALSE); +#line 38 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + column_list = _tmp0_; +#line 39 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp1_ = column_list; +#line 39 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp2_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_IMPORTABLE_DATABASE_TABLE, ImportableDatabaseTable)->table_name; +#line 39 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp3_ = g_strdup_printf ("SELECT %s FROM %s", _tmp1_, _tmp2_); +#line 39 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + sql = _tmp3_; +#line 41 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp4_ = self->fspot_db; +#line 41 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp5_ = sql; +#line 41 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp7_ = sqlite3_prepare_v2 (_tmp4_, _tmp5_, -1, &_tmp6_, NULL); +#line 41 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _sqlite3_finalize0 (_vala_stmt); +#line 41 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _vala_stmt = _tmp6_; +#line 41 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + res = _tmp7_; +#line 42 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp8_ = res; +#line 42 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + if (_tmp8_ != SQLITE_OK) { +#line 791 "FSpotDatabaseTable.c" + const gchar* _tmp9_ = NULL; + gchar* _tmp10_ = NULL; + gchar* _tmp11_ = NULL; + gint _tmp12_ = 0; +#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp9_ = sql; +#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp10_ = g_strdup_printf ("Statement failed: %s", _tmp9_); +#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp11_ = _tmp10_; +#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp12_ = res; +#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + importable_database_table_throw_error (_tmp11_, _tmp12_, &_inner_error_); +#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _g_free0 (_tmp11_); +#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + if (_inner_error_->domain == DATABASE_ERROR) { +#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + g_propagate_error (error, _inner_error_); +#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _g_free0 (sql); +#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _g_free0 (column_list); +#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + return 0; +#line 820 "FSpotDatabaseTable.c" + } else { +#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _g_free0 (sql); +#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _g_free0 (column_list); +#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); +#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + g_clear_error (&_inner_error_); +#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + return 0; +#line 832 "FSpotDatabaseTable.c" + } + } + } +#line 45 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp13_ = _vala_stmt; +#line 45 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp14_ = sqlite3_step (_tmp13_); +#line 45 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + res = _tmp14_; +#line 46 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp16_ = res; +#line 46 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + if (_tmp16_ != SQLITE_ROW) { +#line 846 "FSpotDatabaseTable.c" + gint _tmp17_ = 0; +#line 46 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp17_ = res; +#line 46 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp15_ = _tmp17_ != SQLITE_DONE; +#line 852 "FSpotDatabaseTable.c" + } else { +#line 46 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp15_ = FALSE; +#line 856 "FSpotDatabaseTable.c" + } +#line 46 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + if (_tmp15_) { +#line 860 "FSpotDatabaseTable.c" + const gchar* _tmp18_ = NULL; + const gchar* _tmp19_ = NULL; + gchar* _tmp20_ = NULL; + gchar* _tmp21_ = NULL; + gint _tmp22_ = 0; +#line 47 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp18_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_IMPORTABLE_DATABASE_TABLE, ImportableDatabaseTable)->table_name; +#line 47 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp19_ = column_list; +#line 47 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp20_ = g_strdup_printf ("select_all %s %s", _tmp18_, _tmp19_); +#line 47 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp21_ = _tmp20_; +#line 47 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _tmp22_ = res; +#line 47 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + importable_database_table_throw_error (_tmp21_, _tmp22_, &_inner_error_); +#line 47 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _g_free0 (_tmp21_); +#line 47 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 47 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + if (_inner_error_->domain == DATABASE_ERROR) { +#line 47 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + g_propagate_error (error, _inner_error_); +#line 47 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _g_free0 (sql); +#line 47 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _g_free0 (column_list); +#line 47 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + return 0; +#line 892 "FSpotDatabaseTable.c" + } else { +#line 47 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _g_free0 (sql); +#line 47 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _g_free0 (column_list); +#line 47 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); +#line 47 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + g_clear_error (&_inner_error_); +#line 47 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + return 0; +#line 904 "FSpotDatabaseTable.c" + } + } + } +#line 49 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + result = res; +#line 49 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _g_free0 (sql); +#line 49 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _g_free0 (column_list); +#line 49 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + if (stmt) { +#line 49 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + *stmt = _vala_stmt; +#line 918 "FSpotDatabaseTable.c" + } else { +#line 49 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _sqlite3_finalize0 (_vala_stmt); +#line 922 "FSpotDatabaseTable.c" + } +#line 49 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + return result; +#line 926 "FSpotDatabaseTable.c" +} + + +static void data_imports_fspot_db_fspot_database_table_class_init (DataImportsFSpotDbFSpotDatabaseTableClass * klass) { +#line 12 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + data_imports_fspot_db_fspot_database_table_parent_class = g_type_class_peek_parent (klass); +#line 12 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + ((ImportableDatabaseTableClass *) klass)->finalize = data_imports_fspot_db_fspot_database_table_finalize; +#line 12 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + g_type_class_add_private (klass, sizeof (DataImportsFSpotDbFSpotDatabaseTablePrivate)); +#line 937 "FSpotDatabaseTable.c" +} + + +static void data_imports_fspot_db_fspot_database_table_instance_init (DataImportsFSpotDbFSpotDatabaseTable * self) { +#line 12 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + self->priv = DATA_IMPORTS_FSPOT_DB_FSPOT_DATABASE_TABLE_GET_PRIVATE (self); +#line 944 "FSpotDatabaseTable.c" +} + + +static void data_imports_fspot_db_fspot_database_table_finalize (ImportableDatabaseTable* obj) { + DataImportsFSpotDbFSpotDatabaseTable * self; +#line 12 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE, DataImportsFSpotDbFSpotDatabaseTable); +#line 14 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + _g_object_unref0 (self->behavior); +#line 12 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotDatabaseTable.vala" + IMPORTABLE_DATABASE_TABLE_CLASS (data_imports_fspot_db_fspot_database_table_parent_class)->finalize (obj); +#line 956 "FSpotDatabaseTable.c" +} + + +/** + * This class represents a generic F-Spot table. + */ +GType data_imports_fspot_db_fspot_database_table_get_type (void) { + static volatile gsize data_imports_fspot_db_fspot_database_table_type_id__volatile = 0; + if (g_once_init_enter (&data_imports_fspot_db_fspot_database_table_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (DataImportsFSpotDbFSpotDatabaseTableClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) data_imports_fspot_db_fspot_database_table_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (DataImportsFSpotDbFSpotDatabaseTable), 0, (GInstanceInitFunc) data_imports_fspot_db_fspot_database_table_instance_init, NULL }; + GType data_imports_fspot_db_fspot_database_table_type_id; + data_imports_fspot_db_fspot_database_table_type_id = g_type_register_static (TYPE_IMPORTABLE_DATABASE_TABLE, "DataImportsFSpotDbFSpotDatabaseTable", &g_define_type_info, G_TYPE_FLAG_ABSTRACT); + g_once_init_leave (&data_imports_fspot_db_fspot_database_table_type_id__volatile, data_imports_fspot_db_fspot_database_table_type_id); + } + return data_imports_fspot_db_fspot_database_table_type_id__volatile; +} + + +static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func) { + if ((array != NULL) && (destroy_func != NULL)) { + int i; + for (i = 0; i < array_length; i = i + 1) { + if (((gpointer*) array)[i] != NULL) { + destroy_func (((gpointer*) array)[i]); + } + } + } +} + + +static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func) { + _vala_array_destroy (array, array_length, destroy_func); + g_free (array); +} + + + -- cgit v1.2.3