]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
libgda-4.0: update to 4.2.4
authorEvan Nemerson <evan@coeus-group.com>
Mon, 25 Jul 2011 04:27:26 +0000 (21:27 -0700)
committerEvan Nemerson <evan@coeus-group.com>
Mon, 25 Jul 2011 04:27:26 +0000 (21:27 -0700)
vapi/libgda-4.0.vapi
vapi/packages/libgda-4.0/libgda-4.0-custom.vala
vapi/packages/libgda-4.0/libgda-4.0.gi
vapi/packages/libgda-4.0/libgda-4.0.metadata

index 78740eb5122eaacaa3fae6cd976764ab565c0f28..df4bca288abf93147100e681aefcef0ec79e875c 100644 (file)
@@ -115,6 +115,9 @@ namespace Gda {
                [CCode (has_construct_function = false)]
                protected Connection ();
                public bool add_savepoint (string name) throws GLib.Error;
+               public bool async_cancel (uint task_id) throws GLib.Error;
+               public unowned GLib.Object async_fetch_result (uint task_id, out unowned Gda.Set last_insert_row) throws GLib.Error;
+               public uint async_statement_execute (Gda.Statement stmt, Gda.Set @params, Gda.StatementModelUsage model_usage, GLib.Type[] col_types, bool need_last_insert_row) throws GLib.Error;
                public unowned GLib.SList<GLib.Object> batch_execute (Gda.Batch batch, Gda.Set @params, Gda.StatementModelUsage model_usage) throws GLib.Error;
                public bool begin_transaction (string name, Gda.TransactionIsolation level) throws GLib.Error;
                public void close ();
@@ -122,8 +125,11 @@ namespace Gda {
                public bool commit_transaction (string name) throws GLib.Error;
                public unowned Gda.ServerOperation create_operation (Gda.ServerOperationType type, Gda.Set options) throws GLib.Error;
                public unowned Gda.SqlParser create_parser ();
+               public bool delete_row_from_table (string table, string condition_column_name, GLib.Value condition_value) throws GLib.Error;
                public bool delete_savepoint (string name) throws GLib.Error;
                public static GLib.Quark error_quark ();
+               public int execute_non_select_command (string sql) throws GLib.Error;
+               public unowned Gda.DataModel execute_select_command (string sql) throws GLib.Error;
                public unowned string get_authentication ();
                public unowned string get_cnc_string ();
                public unowned string get_dsn ();
@@ -135,12 +141,16 @@ namespace Gda {
                public unowned Gda.ServerProvider get_provider ();
                public unowned string get_provider_name ();
                public unowned Gda.TransactionStatus get_transaction_status ();
+               public bool insert_row_into_table (string table) throws GLib.Error;
+               public bool insert_row_into_table_v (string table, GLib.SList col_names, GLib.SList values) throws GLib.Error;
                public bool is_opened ();
                public bool open () throws GLib.Error;
                public static unowned Gda.Connection open_from_dsn (string dsn, string? auth_string, Gda.ConnectionOptions options) throws GLib.Error;
                public static unowned Gda.Connection open_from_string (string provider_name, string? cnc_string, string? auth_string, Gda.ConnectionOptions options) throws GLib.Error;
+               public unowned Gda.Statement parse_sql_string (string sql, out unowned Gda.Set @params) throws GLib.Error;
                public bool perform_operation (Gda.ServerOperation op) throws GLib.Error;
                public unowned string quote_sql_identifier (string id);
+               public unowned GLib.SList repetitive_statement_execute (Gda.RepetitiveStatement rstmt, Gda.StatementModelUsage model_usage, GLib.Type[] col_types, bool stop_on_error) throws GLib.Error;
                public bool rollback_savepoint (string name) throws GLib.Error;
                public bool rollback_transaction (string name) throws GLib.Error;
                public unowned GLib.Object statement_execute (Gda.Statement stmt, Gda.Set @params, Gda.StatementModelUsage model_usage, out unowned Gda.Set last_insert_row) throws GLib.Error;
@@ -153,6 +163,8 @@ namespace Gda {
                public static void string_split (string str, string out_cnc_params, string out_provider, string out_username, string out_password);
                public bool supports_feature (Gda.ConnectionFeature feature);
                public bool update_meta_store (Gda.MetaContext context) throws GLib.Error;
+               public bool update_row_in_table (string table, string condition_column_name, GLib.Value condition_value) throws GLib.Error;
+               public bool update_row_in_table_v (string table, string condition_column_name, GLib.Value condition_value, GLib.SList col_names, GLib.SList values) throws GLib.Error;
                public unowned string value_to_sql_string (GLib.Value from);
                [NoAccessorMethod]
                public string auth_string { owned get; set; }
@@ -161,8 +173,14 @@ namespace Gda {
                [NoAccessorMethod]
                public string dsn { owned get; set; }
                [NoAccessorMethod]
+               public int events_history_size { get; set; }
+               [NoAccessorMethod]
+               public bool is_wrapper { get; construct; }
+               [NoAccessorMethod]
                public Gda.MetaStore meta_store { owned get; set; }
                [NoAccessorMethod]
+               public bool monitor_wrapped_in_mainloop { get; set; }
+               [NoAccessorMethod]
                public Gda.ConnectionOptions options { get; set; }
                [NoAccessorMethod]
                public Gda.ServerProvider provider { owned get; set; }
@@ -232,29 +250,6 @@ namespace Gda {
                public bool read_only { get; set; }
        }
        [CCode (cheader_filename = "libgda/libgda.h")]
-       public class DataModelBdb : GLib.Object, Gda.DataModel {
-               [CCode (type = "GdaDataModel*", has_construct_function = false)]
-               public DataModelBdb (string filename, string db_name);
-               public void clean_errors ();
-               [NoWrapper]
-               public virtual unowned GLib.SList create_data_columns ();
-               [NoWrapper]
-               public virtual unowned GLib.SList create_key_columns ();
-               [NoWrapper]
-               public virtual GLib.Value get_data_part (void* data, int length, int part);
-               public unowned GLib.SList<GLib.Error> get_errors ();
-               [NoWrapper]
-               public virtual GLib.Value get_key_part (void* data, int length, int part);
-               [NoWrapper]
-               public virtual bool update_data_part (void* data, int length, int part, GLib.Value value) throws GLib.Error;
-               [NoWrapper]
-               public virtual bool update_key_part (void* data, int length, int part, GLib.Value value) throws GLib.Error;
-               [NoAccessorMethod]
-               public string db_name { owned get; construct; }
-               [NoAccessorMethod]
-               public string filename { owned get; construct; }
-       }
-       [CCode (cheader_filename = "libgda/libgda.h")]
        public class DataModelDir : GLib.Object, Gda.DataModel {
                [CCode (type = "GdaDataModel*", has_construct_function = false)]
                public DataModelDir (string basedir);
@@ -287,6 +282,8 @@ namespace Gda {
                [NoAccessorMethod]
                public bool random_access { get; construct; }
                [NoAccessorMethod]
+               public bool strict { get; set construct; }
+               [NoAccessorMethod]
                public void* xml_node { get; construct; }
        }
        [CCode (cheader_filename = "libgda/libgda.h")]
@@ -389,6 +386,8 @@ namespace Gda {
                public virtual bool fetch_random (out unowned Gda.Row prow, int rownum) throws GLib.Error;
                public unowned Gda.Connection get_connection ();
                public unowned Gda.Row get_stored_row (int rownum);
+               public bool rerun () throws GLib.Error;
+               public void set_columns (GLib.SList columns);
                public bool set_modification_statement (Gda.Statement mod_stmt) throws GLib.Error;
                public bool set_modification_statement_sql (string sql) throws GLib.Error;
                public bool set_row_selection_condition (Gda.SqlExpr expr) throws GLib.Error;
@@ -573,6 +572,7 @@ namespace Gda {
                [CCode (has_construct_function = false)]
                public MetaStore (string cnc_string);
                public unowned Gda.DataModel create_modify_data_model (string table_name);
+               public bool declare_foreign_key (Gda.MetaStruct mstruct, string fk_name, string catalog, string schema, string table, string ref_catalog, string ref_schema, string ref_table, uint nb_cols, string colnames, string ref_colnames) throws GLib.Error;
                public static GLib.Quark error_quark ();
                public unowned Gda.DataModel extract (string select_sql) throws GLib.Error;
                public bool get_attribute_value (string att_name, string att_value) throws GLib.Error;
@@ -586,8 +586,10 @@ namespace Gda {
                public unowned Gda.MetaStruct schema_get_structure () throws GLib.Error;
                public bool schema_remove_custom_object (string obj_name) throws GLib.Error;
                public bool set_attribute_value (string att_name, string att_value) throws GLib.Error;
+               public void set_identifiers_style (Gda.SqlIdentifierStyle style);
                public void set_reserved_keywords_func (Gda.SqlReservedKeywordsFunc func);
                public static unowned string sql_identifier_quote (string id, Gda.Connection cnc);
+               public bool undeclare_foreign_key (Gda.MetaStruct mstruct, string fk_name, string catalog, string schema, string table, string ref_catalog, string ref_schema, string ref_table) throws GLib.Error;
                [CCode (has_construct_function = false)]
                public MetaStore.with_file (string file_name);
                public string catalog { construct; }
@@ -652,10 +654,14 @@ namespace Gda {
        [CCode (cheader_filename = "libgda/libgda.h")]
        public class MetaTableForeignKey {
                public int cols_nb;
+               public void* declared;
                public weak Gda.MetaDbObject depend_on;
                public int fk_cols_array;
+               public weak string fk_name;
                public weak string fk_names_array;
                public weak Gda.MetaDbObject meta_table;
+               public void* on_delete_policy;
+               public void* on_update_policy;
                public int ref_pk_cols_array;
                public weak string ref_pk_names_array;
        }
@@ -722,6 +728,16 @@ namespace Gda {
                public void remove (string name);
        }
        [CCode (cheader_filename = "libgda/libgda.h")]
+       public class RepetitiveStatement : GLib.Object {
+               [CCode (has_construct_function = false)]
+               public RepetitiveStatement (Gda.Statement stmt);
+               public bool append_set (Gda.Set values, bool make_copy);
+               public unowned GLib.SList get_all_sets ();
+               public bool get_template_set (out unowned Gda.Set @set) throws GLib.Error;
+               [NoAccessorMethod]
+               public Gda.Statement statement { owned get; construct; }
+       }
+       [CCode (cheader_filename = "libgda/libgda.h")]
        public class Row : GLib.Object {
                [CCode (has_construct_function = false)]
                public Row (int count);
@@ -736,8 +752,9 @@ namespace Gda {
        public class ServerOperation : GLib.Object {
                [CCode (has_construct_function = false)]
                public ServerOperation (Gda.ServerOperationType op_type, string xml_file);
-               public uint add_item_to_sequence (string path);
+               public uint add_item_to_sequence (string seq_path);
                public bool del_item_from_sequence (string item_path);
+               public static GLib.Quark error_quark ();
                public unowned Gda.ServerOperationNode get_node_info (string path_format);
                public unowned string get_node_parent (string path);
                public unowned string get_node_path_portion (string path);
@@ -754,12 +771,21 @@ namespace Gda {
                public bool is_valid (string xml_file) throws GLib.Error;
                public bool load_data_from_xml (Xml.Node node) throws GLib.Error;
                public static unowned string op_type_to_string (Gda.ServerOperationType type);
+               public bool perform_create_database (string provider) throws GLib.Error;
+               public bool perform_create_table () throws GLib.Error;
+               public bool perform_drop_database (string provider) throws GLib.Error;
+               public bool perform_drop_table () throws GLib.Error;
+               public static unowned Gda.ServerOperation prepare_create_database (string provider, string db_name) throws GLib.Error;
+               public static unowned Gda.ServerOperation prepare_create_table (Gda.Connection cnc, string table_name) throws GLib.Error;
+               public static unowned Gda.ServerOperation prepare_drop_database (string provider, string db_name) throws GLib.Error;
+               public static unowned Gda.ServerOperation prepare_drop_table (Gda.Connection cnc, string table_name) throws GLib.Error;
                public unowned Xml.Node save_data_to_xml () throws GLib.Error;
                [NoWrapper]
                public virtual void seq_item_added (string seq_path, int item_index);
                [NoWrapper]
                public virtual void seq_item_remove (string seq_path, int item_index);
                public bool set_value_at (string value, string path_format) throws GLib.Error;
+               public static Gda.ServerOperationType string_to_op_type (string str);
                [NoAccessorMethod]
                public Gda.Connection connection { owned get; construct; }
                public int op_type { get; construct; }
@@ -817,6 +843,8 @@ namespace Gda {
                public static int get_schema_nb_columns (Gda.ConnectionSchema schema);
                public virtual unowned string get_server_version (Gda.Connection cnc);
                public virtual unowned string get_version ();
+               [NoWrapper]
+               public virtual bool handle_async (Gda.Connection cnc) throws GLib.Error;
                public void handler_declare (Gda.DataHandler dh, Gda.Connection cnc, GLib.Type g_type, string dbms_type);
                public unowned Gda.DataHandler handler_find (Gda.Connection cnc, GLib.Type g_type, string dbms_type);
                [NoWrapper]
@@ -840,6 +868,8 @@ namespace Gda {
                [NoWrapper]
                public virtual bool statement_prepare (Gda.Connection cnc, Gda.Statement stmt) throws GLib.Error;
                [NoWrapper]
+               public virtual unowned Gda.SqlStatement statement_rewrite (Gda.Connection cnc, Gda.Statement stmt, Gda.Set @params) throws GLib.Error;
+               [NoWrapper]
                public virtual unowned string statement_to_sql (Gda.Connection cnc, Gda.Statement stmt, Gda.Set @params, Gda.StatementSqlFlag flags, GLib.SList params_used) throws GLib.Error;
                public GLib.Value string_to_value (Gda.Connection cnc, string str, GLib.Type preferred_type, string dbms_type);
                public virtual bool supports_feature (Gda.Connection cnc, Gda.ConnectionFeature feature);
@@ -913,13 +943,17 @@ namespace Gda {
                public unowned Gda.Holder get_holder (string holder_id);
                public GLib.Value get_holder_value (string holder_id);
                public unowned Gda.SetNode get_node (Gda.Holder holder);
+               public unowned Gda.Holder get_nth_holder (int pos);
                public unowned Gda.SetSource get_source (Gda.Holder holder);
                public unowned Gda.SetSource get_source_for_model (Gda.DataModel model);
                [CCode (has_construct_function = false)]
                public Set.@inline (int nb);
                public bool is_valid () throws GLib.Error;
                public void merge_with_set (Gda.Set set_to_merge);
+               [CCode (has_construct_function = false)]
+               public Set.read_only (GLib.SList holders);
                public void remove_holder (Gda.Holder holder);
+               public void replace_source_model (Gda.SetSource source, Gda.DataModel model);
                public bool set_holder_value (string holder_id) throws GLib.Error;
                [NoAccessorMethod]
                public string description { owned get; set; }
@@ -930,7 +964,9 @@ namespace Gda {
                public string name { owned get; set; }
                public virtual signal void holder_attr_changed (Gda.Holder holder, string attr_name, GLib.Value attr_value);
                public virtual signal void holder_changed (Gda.Holder holder);
+               public virtual signal void holder_type_set (Gda.Holder holder);
                public virtual signal void public_data_changed ();
+               public virtual signal void source_model_changed (void* source);
                public virtual signal unowned GLib.Error validate_holder_change (Gda.Holder holder, GLib.Value new_value);
                public virtual signal unowned GLib.Error validate_set ();
        }
@@ -961,6 +997,50 @@ namespace Gda {
                public bool check_structure () throws GLib.Error;
                public bool @foreach (Gda.SqlForeachFunc func, void* data) throws GLib.Error;
        }
+       [CCode (cheader_filename = "libgda/libgda.h")]
+       public class SqlBuilder : GLib.Object {
+               [CCode (has_construct_function = false)]
+               public SqlBuilder (Gda.SqlStatementType stmt_type);
+               [CCode (sentinel = "")]
+               public Gda.SqlBuilderId add_case (Gda.SqlBuilderId test_expr, Gda.SqlBuilderId else_expr, ...);
+               public Gda.SqlBuilderId add_case_v (Gda.SqlBuilderId test_expr, Gda.SqlBuilderId else_expr, Gda.SqlBuilderId when_array, Gda.SqlBuilderId then_array, int args_size);
+               public Gda.SqlBuilderId add_cond (Gda.SqlOperatorType op, Gda.SqlBuilderId op1, Gda.SqlBuilderId op2, Gda.SqlBuilderId op3);
+               public Gda.SqlBuilderId add_cond_v (Gda.SqlOperatorType op, Gda.SqlBuilderId op_ids, int op_ids_size);
+               [CCode (sentinel = "")]
+               public Gda.SqlBuilderId add_expr (Gda.DataHandler dh, GLib.Type type, ...);
+               public Gda.SqlBuilderId add_expr_value (Gda.DataHandler dh, GLib.Value value);
+               public Gda.SqlBuilderId add_field_id (string field_name, string table_name);
+               [CCode (sentinel = "")]
+               public void add_field_value (string field_name, GLib.Type type, ...);
+               public void add_field_value_as_gvalue (string field_name, GLib.Value value);
+               public void add_field_value_id (Gda.SqlBuilderId field_id, Gda.SqlBuilderId value_id);
+               [CCode (sentinel = "")]
+               public Gda.SqlBuilderId add_function (string func_name, ...);
+               public Gda.SqlBuilderId add_function_v (string func_name, Gda.SqlBuilderId args, int args_size);
+               public Gda.SqlBuilderId add_id (string str);
+               public Gda.SqlBuilderId add_param (string param_name, GLib.Type type, bool nullok);
+               public Gda.SqlBuilderId add_sub_select (Gda.SqlStatement sqlst);
+               public void compound_add_sub_select (Gda.SqlStatement sqlst);
+               public void compound_set_type (Gda.SqlStatementCompoundType compound_type);
+               public static GLib.Quark error_quark ();
+               public unowned Gda.SqlExpr export_expression (Gda.SqlBuilderId id);
+               public unowned Gda.SqlStatement get_sql_statement ();
+               public unowned Gda.Statement get_statement () throws GLib.Error;
+               public Gda.SqlBuilderId import_expression (Gda.SqlExpr expr);
+               public void join_add_field (Gda.SqlBuilderId join_id, string field_name);
+               public Gda.SqlBuilderId select_add_field (string field_name, string table_name, string alias);
+               public Gda.SqlBuilderId select_add_target (string table_name, string alias);
+               public Gda.SqlBuilderId select_add_target_id (Gda.SqlBuilderId table_id, string alias);
+               public void select_group_by (Gda.SqlBuilderId expr_id);
+               public Gda.SqlBuilderId select_join_targets (Gda.SqlBuilderId left_target_id, Gda.SqlBuilderId right_target_id, Gda.SqlSelectJoinType join_type, Gda.SqlBuilderId join_expr);
+               public void select_order_by (Gda.SqlBuilderId expr_id, bool asc, string collation_name);
+               public void select_set_distinct (bool distinct, Gda.SqlBuilderId expr_id);
+               public void select_set_having (Gda.SqlBuilderId cond_id);
+               public void select_set_limit (Gda.SqlBuilderId limit_count_expr_id, Gda.SqlBuilderId limit_offset_expr_id);
+               public void set_table (string table_name);
+               public void set_where (Gda.SqlBuilderId cond_id);
+               public Gda.SqlStatementType stmt_type { construct; }
+       }
        [Compact]
        [CCode (copy_function = "gda_sql_case_copy", cheader_filename = "libgda/libgda.h")]
        public class SqlCase {
@@ -975,7 +1055,11 @@ namespace Gda {
                public unowned string serialize ();
        }
        [Compact]
-       [CCode (copy_function = "gda_sql_expr_copy", cheader_filename = "libgda/libgda.h")]
+       [CCode (cheader_filename = "libgda/libgda.h")]
+       public class SqlErrorType {
+       }
+       [Compact]
+       [CCode (copy_function = "gda_sql_expr_copy", type_id = "GDA_TYPE_SQL_EXPR", cheader_filename = "libgda/libgda.h")]
        public class SqlExpr {
                public weak Gda.SqlAnyPart any;
                public weak Gda.SqlCase case_s;
@@ -1192,7 +1276,7 @@ namespace Gda {
                public void take_table_name (GLib.Value value);
        }
        [Compact]
-       [CCode (copy_function = "gda_sql_statement_copy", cheader_filename = "libgda/libgda.h")]
+       [CCode (copy_function = "gda_sql_statement_copy", type_id = "GDA_TYPE_SQL_STATEMENT", cheader_filename = "libgda/libgda.h")]
        public class SqlStatement {
                public void* contents;
                public weak string sql;
@@ -1203,6 +1287,7 @@ namespace Gda {
                public void check_clean ();
                public bool check_structure () throws GLib.Error;
                public bool check_validity (Gda.Connection cnc) throws GLib.Error;
+               public bool check_validity_m (Gda.MetaStruct mstruct) throws GLib.Error;
                public unowned Gda.SqlStatement copy ();
                public static unowned Gda.SqlStatementContentsInfo get_contents_infos (Gda.SqlStatementType type);
                public bool normalize (Gda.Connection cnc) throws GLib.Error;
@@ -1347,14 +1432,30 @@ namespace Gda {
                public Gda.SqlStatementType get_statement_type ();
                public bool is_useless ();
                public bool normalize (Gda.Connection cnc) throws GLib.Error;
+               public unowned Gda.SqlStatement rewrite_for_default_values (Gda.Set @params, bool remove) throws GLib.Error;
                public unowned string serialize ();
-               public unowned string to_sql_extended (Gda.Connection cnc, Gda.Set @params, Gda.StatementSqlFlag flags, GLib.SList<Gda.Holder> params_used) throws GLib.Error;
+               public string to_sql_extended (Gda.Connection? cnc, Gda.Set? @params, Gda.StatementSqlFlag flags, GLib.SList<Gda.Holder>? params_used) throws GLib.Error;
                public unowned string to_sql_real (Gda.SqlRenderingContext context) throws GLib.Error;
                [NoAccessorMethod]
                public void* structure { get; set; }
                public virtual signal void checked (Gda.Connection cnc, bool checked);
                public virtual signal void reset ();
        }
+       [CCode (cheader_filename = "libgda/libgda.h")]
+       public class ThreadWrapper : GLib.Object {
+               [CCode (has_construct_function = false)]
+               public ThreadWrapper ();
+               public bool cancel (uint id);
+               public ulong connect_raw (void* instance, string sig_name, bool private_thread, bool private_job, Gda.ThreadWrapperCallback callback, void* data);
+               public void disconnect (ulong id);
+               public static GLib.Quark error_quark ();
+               public uint execute (Gda.ThreadWrapperFunc func, void* arg, GLib.DestroyNotify arg_destroy_func) throws GLib.Error;
+               public uint execute_void (Gda.ThreadWrapperVoidFunc func, void* arg, GLib.DestroyNotify arg_destroy_func) throws GLib.Error;
+               public void* fetch_result (bool may_lock, uint exp_id) throws GLib.Error;
+               public int get_waiting_size ();
+               public void iterate (bool may_block);
+               public void steal_signal (ulong id);
+       }
        [Compact]
        [CCode (copy_function = "gda_time_copy", type_id = "GDA_TYPE_TIME", cheader_filename = "libgda/libgda.h")]
        public class Time {
@@ -1364,6 +1465,7 @@ namespace Gda {
                public ushort second;
                public long timezone;
                public static void* copy (void* boxed);
+               public bool valid ();
        }
        [Compact]
        [CCode (copy_function = "gda_timestamp_copy", type_id = "GDA_TYPE_TIMESTAMP", cheader_filename = "libgda/libgda.h")]
@@ -1377,6 +1479,7 @@ namespace Gda {
                public long timezone;
                public short year;
                public static void* copy (void* boxed);
+               public bool valid ();
        }
        [CCode (cheader_filename = "libgda/libgda.h")]
        public class TransactionStatus : GLib.Object {
@@ -1395,6 +1498,138 @@ namespace Gda {
                public weak Gda.TransactionStatus trans;
                public Gda.TransactionStatusEventType type;
        }
+       [CCode (cheader_filename = "libgda/libgda.h")]
+       public class Tree : GLib.Object {
+               [CCode (has_construct_function = false)]
+               public Tree ();
+               public void add_manager (Gda.TreeManager manager);
+               public void clean ();
+               public void dump (Gda.TreeNode node, GLib.FileStream stream);
+               public static GLib.Quark error_quark ();
+               public unowned Gda.TreeNode get_node (string tree_path, bool use_names);
+               public unowned Gda.TreeManager get_node_manager (Gda.TreeNode node);
+               public unowned string get_node_path (Gda.TreeNode node);
+               public unowned GLib.SList get_nodes_in_path (string tree_path, bool use_names);
+               public void set_attribute (string attribute, GLib.Value value, GLib.DestroyNotify destroy);
+               public bool update_all () throws GLib.Error;
+               public bool update_part (Gda.TreeNode node) throws GLib.Error;
+               [NoAccessorMethod]
+               public bool is_list { get; }
+               public virtual signal void node_changed (Gda.TreeNode node);
+               public virtual signal void node_deleted (string node_path);
+               public virtual signal void node_has_child_toggled (Gda.TreeNode node);
+               public virtual signal void node_inserted (Gda.TreeNode node);
+       }
+       [CCode (cheader_filename = "libgda/libgda.h")]
+       public class TreeManager : GLib.Object {
+               [CCode (has_construct_function = false)]
+               protected TreeManager ();
+               public void add_manager (Gda.TreeManager sub);
+               public void add_new_node_attribute (string attribute, GLib.Value value);
+               public unowned Gda.TreeNode create_node (Gda.TreeNode parent, string name);
+               public static GLib.Quark error_quark ();
+               public unowned GLib.SList get_managers ();
+               public unowned Gda.TreeManagerNodeFunc get_node_create_func ();
+               public void set_node_create_func (Gda.TreeManagerNodeFunc func);
+               [NoWrapper]
+               public virtual unowned GLib.SList update_children (Gda.TreeNode node, GLib.SList children_nodes, bool out_error) throws GLib.Error;
+               [CCode (has_construct_function = false)]
+               public TreeManager.with_func (Gda.TreeManagerNodesFunc update_func);
+               [NoAccessorMethod]
+               public void* func { get; set construct; }
+               [NoAccessorMethod]
+               public bool recursive { get; set construct; }
+       }
+       [CCode (cheader_filename = "libgda/libgda.h")]
+       public class TreeMgrColumns : Gda.TreeManager {
+               [CCode (type = "GdaTreeManager*", has_construct_function = false)]
+               public TreeMgrColumns (Gda.Connection cnc, string schema, string table_name);
+               [NoAccessorMethod]
+               public Gda.Connection connection { owned get; construct; }
+               [NoAccessorMethod]
+               public Gda.MetaStore meta_store { owned get; construct; }
+               public string schema { construct; }
+               public string table_name { construct; }
+       }
+       [Compact]
+       [CCode (cheader_filename = "libgda/libgda.h")]
+       public class TreeMgrColumnsPriv {
+       }
+       [CCode (cheader_filename = "libgda/libgda.h")]
+       public class TreeMgrLabel : Gda.TreeManager {
+               [CCode (type = "GdaTreeManager*", has_construct_function = false)]
+               public TreeMgrLabel (string label);
+               public string label { construct; }
+       }
+       [Compact]
+       [CCode (cheader_filename = "libgda/libgda.h")]
+       public class TreeMgrLabelPriv {
+       }
+       [CCode (cheader_filename = "libgda/libgda.h")]
+       public class TreeMgrSchemas : Gda.TreeManager {
+               [CCode (type = "GdaTreeManager*", has_construct_function = false)]
+               public TreeMgrSchemas (Gda.Connection cnc);
+               [NoAccessorMethod]
+               public Gda.Connection connection { owned get; construct; }
+               [NoAccessorMethod]
+               public Gda.MetaStore meta_store { owned get; construct; }
+       }
+       [Compact]
+       [CCode (cheader_filename = "libgda/libgda.h")]
+       public class TreeMgrSchemasPriv {
+       }
+       [CCode (cheader_filename = "libgda/libgda.h")]
+       public class TreeMgrSelect : Gda.TreeManager {
+               [CCode (type = "GdaTreeManager*", has_construct_function = false)]
+               public TreeMgrSelect (Gda.Connection cnc, Gda.Statement stmt, Gda.Set @params);
+               [NoAccessorMethod]
+               public Gda.Connection connection { owned get; construct; }
+               [NoAccessorMethod]
+               public Gda.Set @params { owned get; construct; }
+               [NoAccessorMethod]
+               public Gda.Statement statement { owned get; construct; }
+       }
+       [Compact]
+       [CCode (cheader_filename = "libgda/libgda.h")]
+       public class TreeMgrSelectPriv {
+       }
+       [CCode (cheader_filename = "libgda/libgda.h")]
+       public class TreeMgrTables : Gda.TreeManager {
+               [CCode (type = "GdaTreeManager*", has_construct_function = false)]
+               public TreeMgrTables (Gda.Connection cnc, string schema);
+               [NoAccessorMethod]
+               public Gda.Connection connection { owned get; construct; }
+               [NoAccessorMethod]
+               public Gda.MetaStore meta_store { owned get; construct; }
+               public string schema { construct; }
+       }
+       [Compact]
+       [CCode (cheader_filename = "libgda/libgda.h")]
+       public class TreeMgrTablesPriv {
+       }
+       [CCode (cheader_filename = "libgda/libgda.h")]
+       public class TreeNode : GLib.Object {
+               [CCode (has_construct_function = false)]
+               public TreeNode (string name);
+               [NoWrapper]
+               public virtual void dump_children (string prefix, GLib.StringBuilder in_string);
+               [NoWrapper]
+               public virtual unowned string dump_header ();
+               public static GLib.Quark error_quark ();
+               public GLib.Value fetch_attribute (string attribute);
+               public unowned Gda.TreeNode get_child_index (int index);
+               public unowned Gda.TreeNode get_child_name (string name);
+               public unowned GLib.SList get_children ();
+               public GLib.Value get_node_attribute (string attribute);
+               public unowned Gda.TreeNode get_parent ();
+               public void set_node_attribute (string attribute, GLib.Value value, GLib.DestroyNotify destroy);
+               [NoAccessorMethod]
+               public string name { owned get; set; }
+               public virtual signal void node_changed (Gda.TreeNode node);
+               public virtual signal void node_deleted (string relative_path);
+               public virtual signal void node_has_child_toggled (Gda.TreeNode node);
+               public virtual signal void node_inserted (Gda.TreeNode node);
+       }
        [Compact]
        [CCode (cheader_filename = "libgda/libgda.h")]
        public class ValueList {
@@ -1412,8 +1647,23 @@ namespace Gda {
        }
        [Compact]
        [CCode (cheader_filename = "libgda/libgda.h")]
+       public class VconnectionDataModelFilter {
+               public void* aConstraint;
+               public void* aConstraintUsage;
+               public void* aOrderBy;
+               public double estimatedCost;
+               public int idxNum;
+               public void* idxPointer;
+               public int nConstraint;
+               public int nOrderBy;
+               public bool orderByConsumed;
+       }
+       [Compact]
+       [CCode (cheader_filename = "libgda/libgda.h")]
        public class VconnectionDataModelSpec {
                public weak Gda.VconnectionDataModelCreateColumnsFunc create_columns_func;
+               public weak Gda.VconnectionDataModelParseFilterFunc create_filter_func;
+               public weak Gda.VconnectionDataModelCreateFModelFunc create_filtered_model_func;
                public weak Gda.VconnectionDataModelCreateModelFunc create_model_func;
                public weak Gda.DataModel data_model;
        }
@@ -1433,6 +1683,7 @@ namespace Gda {
                public void* internal_get_provider_data ();
                public void internal_set_provider_data (void* data, GLib.DestroyNotify destroy_func);
                public static unowned Gda.Connection open (Gda.VirtualProvider virtual_provider) throws GLib.Error;
+               public static unowned Gda.Connection open_extended (Gda.VirtualProvider virtual_provider, Gda.ConnectionOptions options) throws GLib.Error;
        }
        [CCode (cheader_filename = "libgda/libgda.h")]
        public class VirtualProvider : Gda.SqliteProvider {
@@ -1479,6 +1730,7 @@ namespace Gda {
        [CCode (cheader_filename = "libgda/libgda.h")]
        public interface DataHandler : GLib.Object {
                public abstract bool accepts_g_type (GLib.Type type);
+               public static unowned Gda.DataHandler get_default (GLib.Type for_type);
                public abstract unowned string get_descr ();
                public abstract GLib.Value get_sane_init_value (GLib.Type type);
                public abstract unowned string get_sql_from_value (GLib.Value value);
@@ -1551,11 +1803,20 @@ namespace Gda {
                public weak string auth_string;
                public bool is_system;
        }
+       [CCode (cheader_filename = "libgda/libgda.h")]
+       [SimpleType]
+       [IntegerType (rank = 7)]
+       public struct SqlBuilderId : uint {
+       }
        [CCode (type_id = "GDA_TYPE_SQL_PARSER_IFACE", cheader_filename = "libgda/libgda.h")]
        protected struct SqlParserIface {
                public Gda.SqlParser parser;
                public Gda.SqlStatement parsed_statement;
        }
+       [CCode (cprefix = "GDA_BATCH_CONFLICTING_PARAMETER_", cheader_filename = "libgda/libgda.h")]
+       public enum BatchError {
+               ERROR
+       }
        [CCode (cprefix = "GDA_CONFIG_", cheader_filename = "libgda/libgda.h")]
        public enum ConfigError {
                DSN_NOT_FOUND_ERROR,
@@ -1571,7 +1832,11 @@ namespace Gda {
                NO_CNC_SPEC_ERROR,
                NO_PROVIDER_SPEC_ERROR,
                OPEN_ERROR,
-               STATEMENT_TYPE_ERROR
+               STATEMENT_TYPE_ERROR,
+               CANT_LOCK_ERROR,
+               TASK_NOT_FOUND_ERROR,
+               UNSUPPORTED_THREADS_ERROR,
+               CLOSED_ERROR
        }
        [CCode (cprefix = "GDA_CONNECTION_EVENT_CODE_", cheader_filename = "libgda/libgda.h")]
        public enum ConnectionEventCode {
@@ -1620,6 +1885,7 @@ namespace Gda {
                USERS,
                VIEWS,
                XA_TRANSACTIONS,
+               MULTI_THREADING,
                LAST
        }
        [CCode (cprefix = "GDA_CONNECTION_META_", cheader_filename = "libgda/libgda.h")]
@@ -1636,7 +1902,10 @@ namespace Gda {
        public enum ConnectionOptions {
                NONE,
                READ_ONLY,
-               SQL_IDENTIFIERS_CASE_SENSITIVE
+               SQL_IDENTIFIERS_CASE_SENSITIVE,
+               THREAD_SAFE,
+               THREAD_ISOLATED,
+               AUTO_META_DATA
        }
        [CCode (cprefix = "GDA_CONNECTION_SCHEMA_", cheader_filename = "libgda/libgda.h")]
        public enum ConnectionSchema {
@@ -1711,6 +1980,15 @@ namespace Gda {
                READ_ONLY_ROW,
                FILTER_ERROR
        }
+       [CCode (cprefix = "GDA_DATA_SELECT_", cheader_filename = "libgda/libgda.h")]
+       public enum DataSelectError {
+               MODIFICATION_STATEMENT_ERROR,
+               MISSING_MODIFICATION_STATEMENT_ERROR,
+               CONNECTION_ERROR,
+               ACCESS_ERROR,
+               SQL_ERROR,
+               SAFETY_LOCKED_ERROR
+       }
        [CCode (cprefix = "GDA_DIFF_", cheader_filename = "libgda/libgda.h")]
        public enum DiffType {
                ADD_ROW,
@@ -1718,7 +1996,6 @@ namespace Gda {
                MODIFY_ROW
        }
        [CCode (cprefix = "GDA_EASY_CREATE_TABLE_", cheader_filename = "libgda/libgda.h")]
-       [Flags]
        public enum EasyCreateTableFlag {
                NOTHING_FLAG,
                PKEY_FLAG,
@@ -1746,6 +2023,16 @@ namespace Gda {
                TABLE,
                VIEW
        }
+       [CCode (cprefix = "GDA_META_FOREIGN_KEY_", cheader_filename = "libgda/libgda.h")]
+       public enum MetaForeignKeyPolicy {
+               UNKNOWN,
+               NONE,
+               NO_ACTION,
+               RESTRICT,
+               CASCADE,
+               SET_NULL,
+               SET_DEFAULT
+       }
        [CCode (cprefix = "GDA_META_GRAPH_", cheader_filename = "libgda/libgda.h")]
        [Flags]
        public enum MetaGraphInfo {
@@ -1802,6 +2089,22 @@ namespace Gda {
                LIBEXEC_DIR,
                ETC_DIR
        }
+       [CCode (cprefix = "GDA_SERVER_OPERATION_CREATE_TABLE_", cheader_filename = "libgda/libgda.h")]
+       [Flags]
+       public enum ServerOperationCreateTableFlag {
+               NOTHING_FLAG,
+               PKEY_FLAG,
+               NOT_NULL_FLAG,
+               UNIQUE_FLAG,
+               AUTOINC_FLAG,
+               FKEY_FLAG,
+               PKEY_AUTOINC_FLAG
+       }
+       [CCode (cprefix = "GDA_SERVER_OPERATION_", cheader_filename = "libgda/libgda.h")]
+       public enum ServerOperationError {
+               OBJECT_NAME_ERROR,
+               INCORRECT_VALUE_ERROR
+       }
        [CCode (cprefix = "GDA_SERVER_OPERATION_STATUS_", cheader_filename = "libgda/libgda.h")]
        public enum ServerOperationNodeStatus {
                OPTIONAL,
@@ -1831,6 +2134,11 @@ namespace Gda {
                DROP_INDEX,
                CREATE_VIEW,
                DROP_VIEW,
+               COMMENT_TABLE,
+               COMMENT_COLUMN,
+               CREATE_USER,
+               ALTER_USER,
+               DROP_USER,
                LAST
        }
        [CCode (cprefix = "GDA_SERVER_PROVIDER_", cheader_filename = "libgda/libgda.h")]
@@ -1845,13 +2153,15 @@ namespace Gda {
                BUSY_ERROR,
                NON_SUPPORTED_ERROR,
                SERVER_VERSION_ERROR,
-               DATA_ERROR
+               DATA_ERROR,
+               DEFAULT_VALUE_HANDLING_ERROR
        }
        [CCode (cprefix = "GDA_SET_", cheader_filename = "libgda/libgda.h")]
        public enum SetError {
                XML_SPEC_ERROR,
                HOLDER_NOT_FOUND_ERROR,
-               INVALID_ERROR
+               INVALID_ERROR,
+               READ_ONLY_ERROR
        }
        [CCode (cprefix = "GDA_SQL_ANY_", cheader_filename = "libgda/libgda.h")]
        public enum SqlAnyPartType {
@@ -1879,12 +2189,10 @@ namespace Gda {
                SQL_SELECT_FROM,
                SQL_SELECT_ORDER
        }
-       [CCode (cprefix = "GDA_SQL_", cheader_filename = "libgda/libgda.h")]
-       public enum SqlErrorType {
-               STRUCTURE_CONTENTS_ERROR,
-               MALFORMED_IDENTIFIER_ERROR,
-               MISSING_IDENTIFIER_ERROR,
-               VALIDATION_ERROR
+       [CCode (cprefix = "GDA_SQL_BUILDER_", cheader_filename = "libgda/libgda.h")]
+       public enum SqlBuilderError {
+               WRONG_TYPE_ERROR,
+               MISUSE_ERROR
        }
        [CCode (cprefix = "GDA_SQL_IDENTIFIERS_", cheader_filename = "libgda/libgda.h")]
        [Flags]
@@ -2000,6 +2308,7 @@ namespace Gda {
        [CCode (cprefix = "GDA_STATEMENT_SQL_", cheader_filename = "libgda/libgda.h")]
        [Flags]
        public enum StatementSqlFlag {
+               PARAMS_AS_VALUES,
                PRETTY,
                PARAMS_LONG,
                PARAMS_SHORT,
@@ -2008,6 +2317,10 @@ namespace Gda {
                PARAMS_AS_QMARK,
                PARAMS_AS_UQMARK
        }
+       [CCode (cprefix = "GDA_THREAD_WRAPPER_UNKNOWN_", has_type_id = false, cheader_filename = "libgda/libgda.h")]
+       public enum ThreadWrapperError {
+               ERROR
+       }
        [CCode (cprefix = "GDA_TRANSACTION_ISOLATION_", cheader_filename = "libgda/libgda.h")]
        public enum TransactionIsolation {
                UNKNOWN,
@@ -2027,6 +2340,18 @@ namespace Gda {
                OK,
                FAILED
        }
+       [CCode (cprefix = "GDA_TREE_UNKNOWN_", cheader_filename = "libgda/libgda.h")]
+       public enum TreeError {
+               ERROR
+       }
+       [CCode (cprefix = "GDA_TREE_MANAGER_UNKNOWN_", cheader_filename = "libgda/libgda.h")]
+       public enum TreeManagerError {
+               ERROR
+       }
+       [CCode (cprefix = "GDA_TREE_NODE_UNKNOWN_", cheader_filename = "libgda/libgda.h")]
+       public enum TreeNodeError {
+               ERROR
+       }
        [CCode (cprefix = "GDA_VALUE_ATTR_", cheader_filename = "libgda/libgda.h")]
        [Flags]
        public enum ValueAttribute {
@@ -2045,7 +2370,15 @@ namespace Gda {
        [CCode (cprefix = "GDA_XA_TRANSACTION_", cheader_filename = "libgda/libgda.h")]
        public enum XaTransactionError {
                ALREADY_REGISTERED_ERROR,
-               DTP_NOT_SUPPORTED_ERROR
+               DTP_NOT_SUPPORTED_ERROR,
+               CONNECTION_BRANCH_LENGTH_ERROR
+       }
+       [CCode (cprefix = "GDA_SQL_ERROR_", cheader_filename = "libgda/libgda.h")]
+       public errordomain SqlError {
+               STRUCTURE_CONTENTS_ERROR,
+               MALFORMED_IDENTIFIER_ERROR,
+               MISSING_IDENTIFIER_ERROR,
+               VALIDATION_ERROR
        }
        [CCode (cheader_filename = "libgda/libgda.h")]
        public delegate void AttributesManagerFunc (string att_name, GLib.Value value);
@@ -2068,13 +2401,27 @@ namespace Gda {
        [CCode (cheader_filename = "libgda/libgda.h", has_target = false)]
        public delegate bool SqlReservedKeywordsFunc (string word);
        [CCode (cheader_filename = "libgda/libgda.h")]
+       public delegate void ThreadWrapperCallback (Gda.ThreadWrapper wrapper, void* instance, string signame, int n_param_values, GLib.Value param_values, void* gda_reserved);
+       [CCode (cheader_filename = "libgda/libgda.h", has_target = false)]
+       public delegate void* ThreadWrapperFunc (void* arg) throws GLib.Error;
+       [CCode (cheader_filename = "libgda/libgda.h", has_target = false)]
+       public delegate void ThreadWrapperVoidFunc (void* arg) throws GLib.Error;
+       [CCode (cheader_filename = "libgda/libgda.h", has_target = false)]
+       public delegate unowned Gda.TreeNode TreeManagerNodeFunc (Gda.TreeManager manager, Gda.TreeNode parent, string name);
+       [CCode (cheader_filename = "libgda/libgda.h", has_target = false)]
+       public delegate unowned GLib.SList TreeManagerNodesFunc (Gda.TreeManager manager, Gda.TreeNode node, GLib.SList children_nodes, bool out_error) throws GLib.Error;
+       [CCode (cheader_filename = "libgda/libgda.h")]
        public delegate void VConnectionHubFunc (Gda.Connection cnc, string ns);
        [CCode (cheader_filename = "libgda/libgda.h", has_target = false)]
        public delegate unowned GLib.List VconnectionDataModelCreateColumnsFunc (Gda.VconnectionDataModelSpec p1) throws GLib.Error;
        [CCode (cheader_filename = "libgda/libgda.h", has_target = false)]
+       public delegate unowned Gda.DataModel VconnectionDataModelCreateFModelFunc (Gda.VconnectionDataModelSpec p1, int p2, string p3, int p4, out GLib.Value p5);
+       [CCode (cheader_filename = "libgda/libgda.h", has_target = false)]
        public delegate unowned Gda.DataModel VconnectionDataModelCreateModelFunc (Gda.VconnectionDataModelSpec p1);
        [CCode (cheader_filename = "libgda/libgda.h", has_target = false)]
        public delegate void VconnectionDataModelFunc (Gda.DataModel p1, string p2, void* p3);
+       [CCode (cheader_filename = "libgda/libgda.h", has_target = false)]
+       public delegate void VconnectionDataModelParseFilterFunc (Gda.VconnectionDataModelSpec p1, Gda.VconnectionDataModelFilter p2);
        [CCode (cheader_filename = "libgda/libgda.h")]
        public const string ATTRIBUTE_AUTO_INCREMENT;
        [CCode (cheader_filename = "libgda/libgda.h")]
@@ -2088,18 +2435,6 @@ namespace Gda {
        [CCode (cheader_filename = "libgda/libgda.h")]
        public const string ATTRIBUTE_NUMERIC_SCALE;
        [CCode (cheader_filename = "libgda/libgda.h")]
-       public const string D_COL_ERR;
-       [CCode (cheader_filename = "libgda/libgda.h")]
-       public const string D_COL_H0;
-       [CCode (cheader_filename = "libgda/libgda.h")]
-       public const string D_COL_H1;
-       [CCode (cheader_filename = "libgda/libgda.h")]
-       public const string D_COL_H2;
-       [CCode (cheader_filename = "libgda/libgda.h")]
-       public const string D_COL_NOR;
-       [CCode (cheader_filename = "libgda/libgda.h")]
-       public const string D_COL_OK;
-       [CCode (cheader_filename = "libgda/libgda.h")]
        public const string EXTRA_AUTO_INCREMENT;
        [CCode (cheader_filename = "libgda/libgda.h")]
        public const string SQLSTATE_GENERAL_ERROR;
@@ -2120,6 +2455,8 @@ namespace Gda {
        [CCode (cheader_filename = "libgda/libgda.h")]
        public static unowned Gda.SqlExpr compute_unique_table_row_condition (Gda.SqlStatementSelect stsel, Gda.MetaTable mtable, bool require_pk) throws GLib.Error;
        [CCode (cheader_filename = "libgda/libgda.h")]
+       public static unowned Gda.SqlExpr compute_unique_table_row_condition_with_cnc (Gda.Connection cnc, Gda.SqlStatementSelect stsel, Gda.MetaTable mtable, bool require_pk) throws GLib.Error;
+       [CCode (cheader_filename = "libgda/libgda.h")]
        public static unowned string default_escape_string (string str);
        [CCode (cheader_filename = "libgda/libgda.h")]
        public static unowned string default_unescape_string (string str);
@@ -2156,6 +2493,8 @@ namespace Gda {
        [CCode (cheader_filename = "libgda/libgda.h")]
        public static bool insert_row_into_table_v (Gda.Connection cnc, string table, GLib.SList col_names, GLib.SList values) throws GLib.Error;
        [CCode (cheader_filename = "libgda/libgda.h")]
+       public static void locale_changed ();
+       [CCode (cheader_filename = "libgda/libgda.h")]
        public static void log_disable ();
        [CCode (cheader_filename = "libgda/libgda.h")]
        public static void log_enable ();
@@ -2172,6 +2511,8 @@ namespace Gda {
        [CCode (cheader_filename = "libgda/libgda.h")]
        public static bool parse_iso8601_timestamp (Gda.Timestamp timestamp, string value);
        [CCode (cheader_filename = "libgda/libgda.h")]
+       public static unowned Gda.Statement parse_sql_string (Gda.Connection cnc, string sql, out unowned Gda.Set @params) throws GLib.Error;
+       [CCode (cheader_filename = "libgda/libgda.h")]
        public static bool perform_create_database (string provider, Gda.ServerOperation op) throws GLib.Error;
        [CCode (cheader_filename = "libgda/libgda.h")]
        public static bool perform_create_table (Gda.ServerOperation op) throws GLib.Error;
index 858fe84c42f18d7c3ce4a8bef3721a0b4dc37e86..7b694b5ba7cfb8a415c5103b3772f5103e7399c4 100644 (file)
@@ -26,4 +26,11 @@ namespace Gda {
                Gda.SqlParser    parser;
                Gda.SqlStatement parsed_statement;
        }
+
+       public errordomain SqlError {
+               STRUCTURE_CONTENTS_ERROR,
+               MALFORMED_IDENTIFIER_ERROR,
+               MISSING_IDENTIFIER_ERROR,
+               VALIDATION_ERROR
+       }
 }
index 3fba44e790f56a68e911a0d4de8988439c30061f..c4a5ff487006f8e185fe52f2d78a158da2a2bb78 100644 (file)
                                <parameter name="error" type="GError**"/>
                        </parameters>
                </function>
+               <function name="compute_unique_table_row_condition_with_cnc" symbol="gda_compute_unique_table_row_condition_with_cnc">
+                       <return-type type="GdaSqlExpr*"/>
+                       <parameters>
+                               <parameter name="cnc" type="GdaConnection*"/>
+                               <parameter name="stsel" type="GdaSqlStatementSelect*"/>
+                               <parameter name="mtable" type="GdaMetaTable*"/>
+                               <parameter name="require_pk" type="gboolean"/>
+                               <parameter name="error" type="GError**"/>
+                       </parameters>
+               </function>
                <function name="default_escape_string" symbol="gda_default_escape_string">
                        <return-type type="gchar*"/>
                        <parameters>
                                <parameter name="error" type="GError**"/>
                        </parameters>
                </function>
+               <function name="locale_changed" symbol="gda_locale_changed">
+                       <return-type type="void"/>
+               </function>
                <function name="log_disable" symbol="gda_log_disable">
                        <return-type type="void"/>
                </function>
                                <parameter name="value" type="gchar*"/>
                        </parameters>
                </function>
+               <function name="parse_sql_string" symbol="gda_parse_sql_string">
+                       <return-type type="GdaStatement*"/>
+                       <parameters>
+                               <parameter name="cnc" type="GdaConnection*"/>
+                               <parameter name="sql" type="gchar*"/>
+                               <parameter name="params" type="GdaSet**"/>
+                               <parameter name="error" type="GError**"/>
+                       </parameters>
+               </function>
                <function name="perform_create_database" symbol="gda_perform_create_database">
                        <return-type type="gboolean"/>
                        <parameters>
                                <parameter name="word" type="gchar*"/>
                        </parameters>
                </callback>
+               <callback name="GdaThreadWrapperCallback">
+                       <return-type type="void"/>
+                       <parameters>
+                               <parameter name="wrapper" type="GdaThreadWrapper*"/>
+                               <parameter name="instance" type="gpointer"/>
+                               <parameter name="signame" type="gchar*"/>
+                               <parameter name="n_param_values" type="gint"/>
+                               <parameter name="param_values" type="GValue*"/>
+                               <parameter name="gda_reserved" type="gpointer"/>
+                               <parameter name="data" type="gpointer"/>
+                       </parameters>
+               </callback>
+               <callback name="GdaThreadWrapperFunc">
+                       <return-type type="gpointer"/>
+                       <parameters>
+                               <parameter name="arg" type="gpointer"/>
+                               <parameter name="error" type="GError**"/>
+                       </parameters>
+               </callback>
+               <callback name="GdaThreadWrapperVoidFunc">
+                       <return-type type="void"/>
+                       <parameters>
+                               <parameter name="arg" type="gpointer"/>
+                               <parameter name="error" type="GError**"/>
+                       </parameters>
+               </callback>
+               <callback name="GdaTreeManagerNodeFunc">
+                       <return-type type="GdaTreeNode*"/>
+                       <parameters>
+                               <parameter name="manager" type="GdaTreeManager*"/>
+                               <parameter name="parent" type="GdaTreeNode*"/>
+                               <parameter name="name" type="gchar*"/>
+                       </parameters>
+               </callback>
+               <callback name="GdaTreeManagerNodesFunc">
+                       <return-type type="GSList*"/>
+                       <parameters>
+                               <parameter name="manager" type="GdaTreeManager*"/>
+                               <parameter name="node" type="GdaTreeNode*"/>
+                               <parameter name="children_nodes" type="GSList*"/>
+                               <parameter name="out_error" type="gboolean*"/>
+                               <parameter name="error" type="GError**"/>
+                       </parameters>
+               </callback>
                <callback name="GdaVConnectionHubFunc">
                        <return-type type="void"/>
                        <parameters>
                                <parameter name="p2" type="GError**"/>
                        </parameters>
                </callback>
+               <callback name="GdaVconnectionDataModelCreateFModelFunc">
+                       <return-type type="GdaDataModel*"/>
+                       <parameters>
+                               <parameter name="p1" type="GdaVconnectionDataModelSpec*"/>
+                               <parameter name="p2" type="int"/>
+                               <parameter name="p3" type="char*"/>
+                               <parameter name="p4" type="int"/>
+                               <parameter name="p5" type="GValue**"/>
+                       </parameters>
+               </callback>
                <callback name="GdaVconnectionDataModelCreateModelFunc">
                        <return-type type="GdaDataModel*"/>
                        <parameters>
                                <parameter name="p3" type="gpointer"/>
                        </parameters>
                </callback>
+               <callback name="GdaVconnectionDataModelParseFilterFunc">
+                       <return-type type="void"/>
+                       <parameters>
+                               <parameter name="p1" type="GdaVconnectionDataModelSpec*"/>
+                               <parameter name="p2" type="GdaVconnectionDataModelFilter*"/>
+                       </parameters>
+               </callback>
                <struct name="GdaAttributesManager">
                        <method name="clear" symbol="gda_attributes_manager_clear">
                                <return-type type="void"/>
                        <field name="fk_names_array" type="gchar**"/>
                        <field name="ref_pk_cols_array" type="gint*"/>
                        <field name="ref_pk_names_array" type="gchar**"/>
-                       <field name="_gda_reserved1" type="gpointer"/>
-                       <field name="_gda_reserved2" type="gpointer"/>
-                       <field name="_gda_reserved3" type="gpointer"/>
-                       <field name="_gda_reserved4" type="gpointer"/>
+                       <field name="on_update_policy" type="gpointer"/>
+                       <field name="on_delete_policy" type="gpointer"/>
+                       <field name="declared" type="gpointer"/>
+                       <field name="fk_name" type="gchar*"/>
                </struct>
                <struct name="GdaMetaView">
                        <field name="table" type="GdaMetaTable"/>
                        <field name="type" type="GdaSqlAnyPartType"/>
                        <field name="parent" type="GdaSqlAnyPart*"/>
                </struct>
+               <struct name="GdaSqlBuilderId">
+               </struct>
                <struct name="GdaSqlCase">
                        <method name="copy" symbol="gda_sql_case_copy">
                                <return-type type="GdaSqlCase*"/>
                        <field name="_gda_reserved1" type="gpointer"/>
                        <field name="_gda_reserved2" type="gpointer"/>
                </struct>
-               <struct name="GdaSqlExpr">
-                       <method name="copy" symbol="gda_sql_expr_copy">
-                               <return-type type="GdaSqlExpr*"/>
-                               <parameters>
-                                       <parameter name="expr" type="GdaSqlExpr*"/>
-                               </parameters>
-                       </method>
-                       <method name="free" symbol="gda_sql_expr_free">
-                               <return-type type="void"/>
-                               <parameters>
-                                       <parameter name="expr" type="GdaSqlExpr*"/>
-                               </parameters>
-                       </method>
-                       <method name="new" symbol="gda_sql_expr_new">
-                               <return-type type="GdaSqlExpr*"/>
-                               <parameters>
-                                       <parameter name="parent" type="GdaSqlAnyPart*"/>
-                               </parameters>
-                       </method>
-                       <method name="serialize" symbol="gda_sql_expr_serialize">
-                               <return-type type="gchar*"/>
-                               <parameters>
-                                       <parameter name="expr" type="GdaSqlExpr*"/>
-                               </parameters>
-                       </method>
-                       <method name="take_select" symbol="gda_sql_expr_take_select">
-                               <return-type type="void"/>
-                               <parameters>
-                                       <parameter name="expr" type="GdaSqlExpr*"/>
-                                       <parameter name="stmt" type="GdaSqlStatement*"/>
-                               </parameters>
-                       </method>
-                       <field name="any" type="GdaSqlAnyPart"/>
-                       <field name="value" type="GValue*"/>
-                       <field name="param_spec" type="GdaSqlParamSpec*"/>
-                       <field name="func" type="GdaSqlFunction*"/>
-                       <field name="cond" type="GdaSqlOperation*"/>
-                       <field name="select" type="GdaSqlAnyPart*"/>
-                       <field name="case_s" type="GdaSqlCase*"/>
-                       <field name="cast_as" type="gchar*"/>
-                       <field name="value_is_ident" type="gpointer"/>
-                       <field name="_gda_reserved2" type="gpointer"/>
+               <struct name="GdaSqlErrorType">
                </struct>
                <struct name="GdaSqlField">
                        <method name="copy" symbol="gda_sql_field_copy">
                        <field name="_gda_reserved1" type="gpointer"/>
                        <field name="_gda_reserved2" type="gpointer"/>
                </struct>
-               <struct name="GdaSqlStatement">
-                       <method name="check_clean" symbol="gda_sql_statement_check_clean">
-                               <return-type type="void"/>
-                               <parameters>
-                                       <parameter name="stmt" type="GdaSqlStatement*"/>
-                               </parameters>
-                       </method>
-                       <method name="check_structure" symbol="gda_sql_statement_check_structure">
-                               <return-type type="gboolean"/>
-                               <parameters>
-                                       <parameter name="stmt" type="GdaSqlStatement*"/>
-                                       <parameter name="error" type="GError**"/>
-                               </parameters>
-                       </method>
-                       <method name="check_validity" symbol="gda_sql_statement_check_validity">
-                               <return-type type="gboolean"/>
-                               <parameters>
-                                       <parameter name="stmt" type="GdaSqlStatement*"/>
-                                       <parameter name="cnc" type="GdaConnection*"/>
-                                       <parameter name="error" type="GError**"/>
-                               </parameters>
-                       </method>
-                       <method name="copy" symbol="gda_sql_statement_copy">
-                               <return-type type="GdaSqlStatement*"/>
-                               <parameters>
-                                       <parameter name="stmt" type="GdaSqlStatement*"/>
-                               </parameters>
-                       </method>
-                       <method name="free" symbol="gda_sql_statement_free">
-                               <return-type type="void"/>
-                               <parameters>
-                                       <parameter name="stmt" type="GdaSqlStatement*"/>
-                               </parameters>
-                       </method>
-                       <method name="get_contents_infos" symbol="gda_sql_statement_get_contents_infos">
-                               <return-type type="GdaSqlStatementContentsInfo*"/>
-                               <parameters>
-                                       <parameter name="type" type="GdaSqlStatementType"/>
-                               </parameters>
-                       </method>
-                       <method name="new" symbol="gda_sql_statement_new">
-                               <return-type type="GdaSqlStatement*"/>
-                               <parameters>
-                                       <parameter name="type" type="GdaSqlStatementType"/>
-                               </parameters>
-                       </method>
-                       <method name="normalize" symbol="gda_sql_statement_normalize">
-                               <return-type type="gboolean"/>
-                               <parameters>
-                                       <parameter name="stmt" type="GdaSqlStatement*"/>
-                                       <parameter name="cnc" type="GdaConnection*"/>
-                                       <parameter name="error" type="GError**"/>
-                               </parameters>
-                       </method>
-                       <method name="serialize" symbol="gda_sql_statement_serialize">
-                               <return-type type="gchar*"/>
-                               <parameters>
-                                       <parameter name="stmt" type="GdaSqlStatement*"/>
-                               </parameters>
-                       </method>
-                       <method name="string_to_type" symbol="gda_sql_statement_string_to_type">
-                               <return-type type="GdaSqlStatementType"/>
-                               <parameters>
-                                       <parameter name="type" type="gchar*"/>
-                               </parameters>
-                       </method>
-                       <method name="trans_set_isol_level" symbol="gda_sql_statement_trans_set_isol_level">
-                               <return-type type="void"/>
-                               <parameters>
-                                       <parameter name="stmt" type="GdaSqlStatement*"/>
-                                       <parameter name="level" type="GdaTransactionIsolation"/>
-                               </parameters>
-                       </method>
-                       <method name="trans_take_mode" symbol="gda_sql_statement_trans_take_mode">
-                               <return-type type="void"/>
-                               <parameters>
-                                       <parameter name="stmt" type="GdaSqlStatement*"/>
-                                       <parameter name="value" type="GValue*"/>
-                               </parameters>
-                       </method>
-                       <method name="trans_take_name" symbol="gda_sql_statement_trans_take_name">
-                               <return-type type="void"/>
-                               <parameters>
-                                       <parameter name="stmt" type="GdaSqlStatement*"/>
-                                       <parameter name="value" type="GValue*"/>
-                               </parameters>
-                       </method>
-                       <method name="type_to_string" symbol="gda_sql_statement_type_to_string">
-                               <return-type type="gchar*"/>
-                               <parameters>
-                                       <parameter name="type" type="GdaSqlStatementType"/>
-                               </parameters>
-                       </method>
-                       <field name="sql" type="gchar*"/>
-                       <field name="stmt_type" type="GdaSqlStatementType"/>
-                       <field name="contents" type="gpointer"/>
-                       <field name="validity_meta_struct" type="GdaMetaStruct*"/>
-                       <field name="_gda_reserved1" type="gpointer"/>
-                       <field name="_gda_reserved2" type="gpointer"/>
-               </struct>
                <struct name="GdaSqlStatementCheckValidityData">
                        <field name="cnc" type="GdaConnection*"/>
                        <field name="store" type="GdaMetaStore*"/>
                        <field name="_gda_reserved1" type="gpointer"/>
                        <field name="_gda_reserved2" type="gpointer"/>
                </struct>
+               <struct name="GdaTreeMgrColumnsPriv">
+               </struct>
+               <struct name="GdaTreeMgrLabelPriv">
+               </struct>
+               <struct name="GdaTreeMgrSchemasPriv">
+               </struct>
+               <struct name="GdaTreeMgrSelectPriv">
+               </struct>
+               <struct name="GdaTreeMgrTablesPriv">
+               </struct>
                <struct name="GdaValueList">
                </struct>
+               <struct name="GdaVconnectionDataModelFilter">
+                       <field name="nConstraint" type="int"/>
+                       <field name="aConstraint" type="struct GdaVirtualConstraint*"/>
+                       <field name="nOrderBy" type="int"/>
+                       <field name="aOrderBy" type="struct GdaVirtualOrderby*"/>
+                       <field name="aConstraintUsage" type="struct GdaVirtualConstraintUsage*"/>
+                       <field name="idxNum" type="int"/>
+                       <field name="idxPointer" type="gpointer"/>
+                       <field name="orderByConsumed" type="gboolean"/>
+                       <field name="estimatedCost" type="double"/>
+               </struct>
                <struct name="GdaVconnectionDataModelSpec">
                        <field name="data_model" type="GdaDataModel*"/>
                        <field name="create_columns_func" type="GdaVconnectionDataModelCreateColumnsFunc"/>
                        <field name="create_model_func" type="GdaVconnectionDataModelCreateModelFunc"/>
-                       <field name="_gda_reserved1" type="GCallback"/>
-                       <field name="_gda_reserved2" type="GCallback"/>
+                       <field name="create_filter_func" type="GdaVconnectionDataModelParseFilterFunc"/>
+                       <field name="create_filtered_model_func" type="GdaVconnectionDataModelCreateFModelFunc"/>
                </struct>
                <struct name="GdaXaTransactionId">
                        <method name="to_string" symbol="gda_xa_transaction_id_to_string">
                                </parameters>
                        </method>
                </boxed>
-               <boxed name="GdaTime" type-name="GdaTime" get-type="gda_time_get_type">
-                       <method name="copy" symbol="gda_time_copy">
-                               <return-type type="gpointer"/>
+               <boxed name="GdaSqlExpr" type-name="GdaSqlExpr" get-type="gda_sql_expr_get_type">
+                       <method name="copy" symbol="gda_sql_expr_copy">
+                               <return-type type="GdaSqlExpr*"/>
                                <parameters>
-                                       <parameter name="boxed" type="gpointer"/>
+                                       <parameter name="expr" type="GdaSqlExpr*"/>
                                </parameters>
                        </method>
-                       <method name="free" symbol="gda_time_free">
+                       <method name="free" symbol="gda_sql_expr_free">
                                <return-type type="void"/>
                                <parameters>
-                                       <parameter name="boxed" type="gpointer"/>
+                                       <parameter name="expr" type="GdaSqlExpr*"/>
                                </parameters>
                        </method>
-                       <field name="hour" type="gushort"/>
-                       <field name="minute" type="gushort"/>
-                       <field name="second" type="gushort"/>
-                       <field name="fraction" type="gulong"/>
-                       <field name="timezone" type="glong"/>
-               </boxed>
-               <boxed name="GdaTimestamp" type-name="GdaTimestamp" get-type="gda_timestamp_get_type">
-                       <method name="copy" symbol="gda_timestamp_copy">
-                               <return-type type="gpointer"/>
+                       <constructor name="new" symbol="gda_sql_expr_new">
+                               <return-type type="GdaSqlExpr*"/>
                                <parameters>
-                                       <parameter name="boxed" type="gpointer"/>
+                                       <parameter name="parent" type="GdaSqlAnyPart*"/>
+                               </parameters>
+                       </constructor>
+                       <method name="serialize" symbol="gda_sql_expr_serialize">
+                               <return-type type="gchar*"/>
+                               <parameters>
+                                       <parameter name="expr" type="GdaSqlExpr*"/>
                                </parameters>
                        </method>
-                       <method name="free" symbol="gda_timestamp_free">
+                       <method name="take_select" symbol="gda_sql_expr_take_select">
                                <return-type type="void"/>
                                <parameters>
-                                       <parameter name="boxed" type="gpointer"/>
+                                       <parameter name="expr" type="GdaSqlExpr*"/>
+                                       <parameter name="stmt" type="GdaSqlStatement*"/>
                                </parameters>
                        </method>
-                       <field name="year" type="gshort"/>
-                       <field name="month" type="gushort"/>
-                       <field name="day" type="gushort"/>
-                       <field name="hour" type="gushort"/>
-                       <field name="minute" type="gushort"/>
-                       <field name="second" type="gushort"/>
-                       <field name="fraction" type="gulong"/>
-                       <field name="timezone" type="glong"/>
-               </boxed>
-               <boxed name="GdaValueList" type-name="GdaValueList" get-type="gda_value_list_get_type">
+                       <field name="any" type="GdaSqlAnyPart"/>
+                       <field name="value" type="GValue*"/>
+                       <field name="param_spec" type="GdaSqlParamSpec*"/>
+                       <field name="func" type="GdaSqlFunction*"/>
+                       <field name="cond" type="GdaSqlOperation*"/>
+                       <field name="select" type="GdaSqlAnyPart*"/>
+                       <field name="case_s" type="GdaSqlCase*"/>
+                       <field name="cast_as" type="gchar*"/>
+                       <field name="value_is_ident" type="gpointer"/>
+                       <field name="_gda_reserved2" type="gpointer"/>
                </boxed>
-               <enum name="GdaConfigError" type-name="GdaConfigError" get-type="gda_config_error_get_type">
-                       <member name="GDA_CONFIG_DSN_NOT_FOUND_ERROR" value="0"/>
+               <boxed name="GdaSqlStatement" type-name="GdaSqlStatement" get-type="gda_sql_statement_get_type">
+                       <method name="check_clean" symbol="gda_sql_statement_check_clean">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="stmt" type="GdaSqlStatement*"/>
+                               </parameters>
+                       </method>
+                       <method name="check_structure" symbol="gda_sql_statement_check_structure">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="stmt" type="GdaSqlStatement*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="check_validity" symbol="gda_sql_statement_check_validity">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="stmt" type="GdaSqlStatement*"/>
+                                       <parameter name="cnc" type="GdaConnection*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="check_validity_m" symbol="gda_sql_statement_check_validity_m">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="stmt" type="GdaSqlStatement*"/>
+                                       <parameter name="mstruct" type="GdaMetaStruct*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="copy" symbol="gda_sql_statement_copy">
+                               <return-type type="GdaSqlStatement*"/>
+                               <parameters>
+                                       <parameter name="stmt" type="GdaSqlStatement*"/>
+                               </parameters>
+                       </method>
+                       <method name="free" symbol="gda_sql_statement_free">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="stmt" type="GdaSqlStatement*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_contents_infos" symbol="gda_sql_statement_get_contents_infos">
+                               <return-type type="GdaSqlStatementContentsInfo*"/>
+                               <parameters>
+                                       <parameter name="type" type="GdaSqlStatementType"/>
+                               </parameters>
+                       </method>
+                       <constructor name="new" symbol="gda_sql_statement_new">
+                               <return-type type="GdaSqlStatement*"/>
+                               <parameters>
+                                       <parameter name="type" type="GdaSqlStatementType"/>
+                               </parameters>
+                       </constructor>
+                       <method name="normalize" symbol="gda_sql_statement_normalize">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="stmt" type="GdaSqlStatement*"/>
+                                       <parameter name="cnc" type="GdaConnection*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="serialize" symbol="gda_sql_statement_serialize">
+                               <return-type type="gchar*"/>
+                               <parameters>
+                                       <parameter name="stmt" type="GdaSqlStatement*"/>
+                               </parameters>
+                       </method>
+                       <method name="string_to_type" symbol="gda_sql_statement_string_to_type">
+                               <return-type type="GdaSqlStatementType"/>
+                               <parameters>
+                                       <parameter name="type" type="gchar*"/>
+                               </parameters>
+                       </method>
+                       <method name="trans_set_isol_level" symbol="gda_sql_statement_trans_set_isol_level">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="stmt" type="GdaSqlStatement*"/>
+                                       <parameter name="level" type="GdaTransactionIsolation"/>
+                               </parameters>
+                       </method>
+                       <method name="trans_take_mode" symbol="gda_sql_statement_trans_take_mode">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="stmt" type="GdaSqlStatement*"/>
+                                       <parameter name="value" type="GValue*"/>
+                               </parameters>
+                       </method>
+                       <method name="trans_take_name" symbol="gda_sql_statement_trans_take_name">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="stmt" type="GdaSqlStatement*"/>
+                                       <parameter name="value" type="GValue*"/>
+                               </parameters>
+                       </method>
+                       <method name="type_to_string" symbol="gda_sql_statement_type_to_string">
+                               <return-type type="gchar*"/>
+                               <parameters>
+                                       <parameter name="type" type="GdaSqlStatementType"/>
+                               </parameters>
+                       </method>
+                       <field name="sql" type="gchar*"/>
+                       <field name="stmt_type" type="GdaSqlStatementType"/>
+                       <field name="contents" type="gpointer"/>
+                       <field name="validity_meta_struct" type="GdaMetaStruct*"/>
+                       <field name="_gda_reserved1" type="gpointer"/>
+                       <field name="_gda_reserved2" type="gpointer"/>
+               </boxed>
+               <boxed name="GdaTime" type-name="GdaTime" get-type="gda_time_get_type">
+                       <method name="copy" symbol="gda_time_copy">
+                               <return-type type="gpointer"/>
+                               <parameters>
+                                       <parameter name="boxed" type="gpointer"/>
+                               </parameters>
+                       </method>
+                       <method name="free" symbol="gda_time_free">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="boxed" type="gpointer"/>
+                               </parameters>
+                       </method>
+                       <method name="valid" symbol="gda_time_valid">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="time" type="GdaTime*"/>
+                               </parameters>
+                       </method>
+                       <field name="hour" type="gushort"/>
+                       <field name="minute" type="gushort"/>
+                       <field name="second" type="gushort"/>
+                       <field name="fraction" type="gulong"/>
+                       <field name="timezone" type="glong"/>
+               </boxed>
+               <boxed name="GdaTimestamp" type-name="GdaTimestamp" get-type="gda_timestamp_get_type">
+                       <method name="copy" symbol="gda_timestamp_copy">
+                               <return-type type="gpointer"/>
+                               <parameters>
+                                       <parameter name="boxed" type="gpointer"/>
+                               </parameters>
+                       </method>
+                       <method name="free" symbol="gda_timestamp_free">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="boxed" type="gpointer"/>
+                               </parameters>
+                       </method>
+                       <method name="valid" symbol="gda_timestamp_valid">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="timestamp" type="GdaTimestamp*"/>
+                               </parameters>
+                       </method>
+                       <field name="year" type="gshort"/>
+                       <field name="month" type="gushort"/>
+                       <field name="day" type="gushort"/>
+                       <field name="hour" type="gushort"/>
+                       <field name="minute" type="gushort"/>
+                       <field name="second" type="gushort"/>
+                       <field name="fraction" type="gulong"/>
+                       <field name="timezone" type="glong"/>
+               </boxed>
+               <boxed name="GdaValueList" type-name="GdaValueList" get-type="gda_value_list_get_type">
+               </boxed>
+               <enum name="GdaBatchError" type-name="GdaBatchError" get-type="gda_batch_error_get_type">
+                       <member name="GDA_BATCH_CONFLICTING_PARAMETER_ERROR" value="0"/>
+               </enum>
+               <enum name="GdaConfigError" type-name="GdaConfigError" get-type="gda_config_error_get_type">
+                       <member name="GDA_CONFIG_DSN_NOT_FOUND_ERROR" value="0"/>
                        <member name="GDA_CONFIG_PERMISSION_ERROR" value="1"/>
                        <member name="GDA_CONFIG_PROVIDER_NOT_FOUND_ERROR" value="2"/>
                        <member name="GDA_CONFIG_PROVIDER_CREATION_ERROR" value="3"/>
                        <member name="GDA_CONNECTION_NO_PROVIDER_SPEC_ERROR" value="4"/>
                        <member name="GDA_CONNECTION_OPEN_ERROR" value="5"/>
                        <member name="GDA_CONNECTION_STATEMENT_TYPE_ERROR" value="6"/>
+                       <member name="GDA_CONNECTION_CANT_LOCK_ERROR" value="7"/>
+                       <member name="GDA_CONNECTION_TASK_NOT_FOUND_ERROR" value="8"/>
+                       <member name="GDA_CONNECTION_UNSUPPORTED_THREADS_ERROR" value="9"/>
+                       <member name="GDA_CONNECTION_CLOSED_ERROR" value="10"/>
                </enum>
                <enum name="GdaConnectionEventCode" type-name="GdaConnectionEventCode" get-type="gda_connection_event_code_get_type">
                        <member name="GDA_CONNECTION_EVENT_CODE_CONSTRAINT_VIOLATION" value="0"/>
                        <member name="GDA_CONNECTION_FEATURE_USERS" value="13"/>
                        <member name="GDA_CONNECTION_FEATURE_VIEWS" value="14"/>
                        <member name="GDA_CONNECTION_FEATURE_XA_TRANSACTIONS" value="15"/>
-                       <member name="GDA_CONNECTION_FEATURE_LAST" value="16"/>
+                       <member name="GDA_CONNECTION_FEATURE_MULTI_THREADING" value="16"/>
+                       <member name="GDA_CONNECTION_FEATURE_LAST" value="17"/>
                </enum>
                <enum name="GdaConnectionMetaType" type-name="GdaConnectionMetaType" get-type="gda_connection_meta_type_get_type">
                        <member name="GDA_CONNECTION_META_NAMESPACES" value="0"/>
                        <member name="GDA_DATA_PROXY_READ_ONLY_ROW" value="3"/>
                        <member name="GDA_DATA_PROXY_FILTER_ERROR" value="4"/>
                </enum>
+               <enum name="GdaDataSelectError" type-name="GdaDataSelectError" get-type="gda_data_select_error_get_type">
+                       <member name="GDA_DATA_SELECT_MODIFICATION_STATEMENT_ERROR" value="0"/>
+                       <member name="GDA_DATA_SELECT_MISSING_MODIFICATION_STATEMENT_ERROR" value="1"/>
+                       <member name="GDA_DATA_SELECT_CONNECTION_ERROR" value="2"/>
+                       <member name="GDA_DATA_SELECT_ACCESS_ERROR" value="3"/>
+                       <member name="GDA_DATA_SELECT_SQL_ERROR" value="4"/>
+                       <member name="GDA_DATA_SELECT_SAFETY_LOCKED_ERROR" value="5"/>
+               </enum>
                <enum name="GdaDiffType" type-name="GdaDiffType" get-type="gda_diff_type_get_type">
                        <member name="GDA_DIFF_ADD_ROW" value="0"/>
                        <member name="GDA_DIFF_REMOVE_ROW" value="1"/>
                        <member name="GDA_DIFF_MODIFY_ROW" value="2"/>
                </enum>
+               <enum name="GdaEasyCreateTableFlag" type-name="GdaEasyCreateTableFlag" get-type="gda_easy_create_table_flag_get_type">
+                       <member name="GDA_EASY_CREATE_TABLE_NOTHING_FLAG" value="1"/>
+                       <member name="GDA_EASY_CREATE_TABLE_PKEY_FLAG" value="2"/>
+                       <member name="GDA_EASY_CREATE_TABLE_NOT_NULL_FLAG" value="4"/>
+                       <member name="GDA_EASY_CREATE_TABLE_UNIQUE_FLAG" value="8"/>
+                       <member name="GDA_EASY_CREATE_TABLE_AUTOINC_FLAG" value="16"/>
+                       <member name="GDA_EASY_CREATE_TABLE_FKEY_FLAG" value="32"/>
+                       <member name="GDA_EASY_CREATE_TABLE_PKEY_AUTOINC_FLAG" value="18"/>
+               </enum>
                <enum name="GdaEasyError" type-name="GdaEasyError" get-type="gda_easy_error_get_type">
                        <member name="GDA_EASY_OBJECT_NAME_ERROR" value="0"/>
                        <member name="GDA_EASY_INCORRECT_VALUE_ERROR" value="1"/>
                        <member name="GDA_META_DB_TABLE" value="1"/>
                        <member name="GDA_META_DB_VIEW" value="2"/>
                </enum>
+               <enum name="GdaMetaForeignKeyPolicy" type-name="GdaMetaForeignKeyPolicy" get-type="gda_meta_foreign_key_policy_get_type">
+                       <member name="GDA_META_FOREIGN_KEY_UNKNOWN" value="0"/>
+                       <member name="GDA_META_FOREIGN_KEY_NONE" value="1"/>
+                       <member name="GDA_META_FOREIGN_KEY_NO_ACTION" value="2"/>
+                       <member name="GDA_META_FOREIGN_KEY_RESTRICT" value="3"/>
+                       <member name="GDA_META_FOREIGN_KEY_CASCADE" value="4"/>
+                       <member name="GDA_META_FOREIGN_KEY_SET_NULL" value="5"/>
+                       <member name="GDA_META_FOREIGN_KEY_SET_DEFAULT" value="6"/>
+               </enum>
                <enum name="GdaMetaSortType" type-name="GdaMetaSortType" get-type="gda_meta_sort_type_get_type">
                        <member name="GDA_META_SORT_ALHAPETICAL" value="0"/>
                        <member name="GDA_META_SORT_DEPENDENCIES" value="1"/>
                        <member name="GDA_LIBEXEC_DIR" value="6"/>
                        <member name="GDA_ETC_DIR" value="7"/>
                </enum>
+               <enum name="GdaServerOperationError" type-name="GdaServerOperationError" get-type="gda_server_operation_error_get_type">
+                       <member name="GDA_SERVER_OPERATION_OBJECT_NAME_ERROR" value="0"/>
+                       <member name="GDA_SERVER_OPERATION_INCORRECT_VALUE_ERROR" value="1"/>
+               </enum>
                <enum name="GdaServerOperationNodeStatus" type-name="GdaServerOperationNodeStatus" get-type="gda_server_operation_node_status_get_type">
                        <member name="GDA_SERVER_OPERATION_STATUS_OPTIONAL" value="0"/>
                        <member name="GDA_SERVER_OPERATION_STATUS_REQUIRED" value="1"/>
                        <member name="GDA_SERVER_OPERATION_DROP_INDEX" value="8"/>
                        <member name="GDA_SERVER_OPERATION_CREATE_VIEW" value="9"/>
                        <member name="GDA_SERVER_OPERATION_DROP_VIEW" value="10"/>
-                       <member name="GDA_SERVER_OPERATION_LAST" value="11"/>
+                       <member name="GDA_SERVER_OPERATION_COMMENT_TABLE" value="11"/>
+                       <member name="GDA_SERVER_OPERATION_COMMENT_COLUMN" value="12"/>
+                       <member name="GDA_SERVER_OPERATION_CREATE_USER" value="13"/>
+                       <member name="GDA_SERVER_OPERATION_ALTER_USER" value="14"/>
+                       <member name="GDA_SERVER_OPERATION_DROP_USER" value="15"/>
+                       <member name="GDA_SERVER_OPERATION_LAST" value="16"/>
                </enum>
                <enum name="GdaServerProviderError" type-name="GdaServerProviderError" get-type="gda_server_provider_error_get_type">
                        <member name="GDA_SERVER_PROVIDER_METHOD_NON_IMPLEMENTED_ERROR" value="0"/>
                        <member name="GDA_SERVER_PROVIDER_NON_SUPPORTED_ERROR" value="8"/>
                        <member name="GDA_SERVER_PROVIDER_SERVER_VERSION_ERROR" value="9"/>
                        <member name="GDA_SERVER_PROVIDER_DATA_ERROR" value="10"/>
+                       <member name="GDA_SERVER_PROVIDER_DEFAULT_VALUE_HANDLING_ERROR" value="11"/>
                </enum>
                <enum name="GdaSetError" type-name="GdaSetError" get-type="gda_set_error_get_type">
                        <member name="GDA_SET_XML_SPEC_ERROR" value="0"/>
                        <member name="GDA_SET_HOLDER_NOT_FOUND_ERROR" value="1"/>
                        <member name="GDA_SET_INVALID_ERROR" value="2"/>
+                       <member name="GDA_SET_READ_ONLY_ERROR" value="3"/>
                </enum>
                <enum name="GdaSqlAnyPartType" type-name="GdaSqlAnyPartType" get-type="gda_sql_any_part_type_get_type">
                        <member name="GDA_SQL_ANY_STMT_SELECT" value="0"/>
                        <member name="GDA_SQL_ANY_SQL_SELECT_FROM" value="509"/>
                        <member name="GDA_SQL_ANY_SQL_SELECT_ORDER" value="510"/>
                </enum>
-               <enum name="GdaSqlErrorType" type-name="GdaSqlErrorType" get-type="gda_sql_error_type_get_type">
+               <enum name="GdaSqlBuilderError" type-name="GdaSqlBuilderError" get-type="gda_sql_builder_error_get_type">
+                       <member name="GDA_SQL_BUILDER_WRONG_TYPE_ERROR" value="0"/>
+                       <member name="GDA_SQL_BUILDER_MISUSE_ERROR" value="1"/>
+               </enum>
+               <enum name="GdaSqlError" type-name="GdaSqlError" get-type="gda_sql_error_type_get_type">
+                       <member name="GDA_SQL_STRUCTURE_CONTENTS_ERROR" value="0"/>
+                       <member name="GDA_SQL_MALFORMED_IDENTIFIER_ERROR" value="1"/>
+                       <member name="GDA_SQL_MISSING_IDENTIFIER_ERROR" value="2"/>
+                       <member name="GDA_SQL_VALIDATION_ERROR" value="3"/>
+               </enum>
+               <enum name="GdaSqlError" type-name="GdaSqlError" get-type="gda_sql_error_get_type">
                        <member name="GDA_SQL_STRUCTURE_CONTENTS_ERROR" value="0"/>
                        <member name="GDA_SQL_MALFORMED_IDENTIFIER_ERROR" value="1"/>
                        <member name="GDA_SQL_MISSING_IDENTIFIER_ERROR" value="2"/>
                        <member name="GDA_STATEMENT_PARAM_TYPE_ERROR" value="5"/>
                        <member name="GDA_STATEMENT_PARAM_ERROR" value="6"/>
                </enum>
+               <enum name="GdaThreadWrapperError">
+                       <member name="GDA_THREAD_WRAPPER_UNKNOWN_ERROR" value="0"/>
+               </enum>
                <enum name="GdaTransactionIsolation" type-name="GdaTransactionIsolation" get-type="gda_transaction_isolation_get_type">
                        <member name="GDA_TRANSACTION_ISOLATION_UNKNOWN" value="0"/>
                        <member name="GDA_TRANSACTION_ISOLATION_READ_COMMITTED" value="1"/>
                        <member name="GDA_TRANSACTION_STATUS_STATE_OK" value="0"/>
                        <member name="GDA_TRANSACTION_STATUS_STATE_FAILED" value="1"/>
                </enum>
+               <enum name="GdaTreeError" type-name="GdaTreeError" get-type="gda_tree_error_get_type">
+                       <member name="GDA_TREE_UNKNOWN_ERROR" value="0"/>
+               </enum>
+               <enum name="GdaTreeManagerError" type-name="GdaTreeManagerError" get-type="gda_tree_manager_error_get_type">
+                       <member name="GDA_TREE_MANAGER_UNKNOWN_ERROR" value="0"/>
+               </enum>
+               <enum name="GdaTreeNodeError" type-name="GdaTreeNodeError" get-type="gda_tree_node_error_get_type">
+                       <member name="GDA_TREE_NODE_UNKNOWN_ERROR" value="0"/>
+               </enum>
                <enum name="GdaXaTransactionError" type-name="GdaXaTransactionError" get-type="gda_xa_transaction_error_get_type">
                        <member name="GDA_XA_TRANSACTION_ALREADY_REGISTERED_ERROR" value="0"/>
                        <member name="GDA_XA_TRANSACTION_DTP_NOT_SUPPORTED_ERROR" value="1"/>
+                       <member name="GDA_XA_TRANSACTION_CONNECTION_BRANCH_LENGTH_ERROR" value="2"/>
                </enum>
                <flags name="GdaConnectionOptions" type-name="GdaConnectionOptions" get-type="gda_connection_options_get_type">
                        <member name="GDA_CONNECTION_OPTIONS_NONE" value="0"/>
                        <member name="GDA_CONNECTION_OPTIONS_READ_ONLY" value="1"/>
                        <member name="GDA_CONNECTION_OPTIONS_SQL_IDENTIFIERS_CASE_SENSITIVE" value="2"/>
+                       <member name="GDA_CONNECTION_OPTIONS_THREAD_SAFE" value="4"/>
+                       <member name="GDA_CONNECTION_OPTIONS_THREAD_ISOLATED" value="8"/>
+                       <member name="GDA_CONNECTION_OPTIONS_AUTO_META_DATA" value="16"/>
                </flags>
                <flags name="GdaDataModelAccessFlags" type-name="GdaDataModelAccessFlags" get-type="gda_data_model_access_flags_get_type">
                        <member name="GDA_DATA_MODEL_ACCESS_RANDOM" value="1"/>
                        <member name="GDA_DATA_MODEL_ACCESS_WRITE" value="56"/>
                        <member name="GDA_DATA_MODEL_ACCESS_DELETE" value="32"/>
                </flags>
-               <flags name="GdaEasyCreateTableFlag" type-name="GdaEasyCreateTableFlag" get-type="gda_easy_create_table_flag_get_type">
-                       <member name="GDA_EASY_CREATE_TABLE_NOTHING_FLAG" value="1"/>
-                       <member name="GDA_EASY_CREATE_TABLE_PKEY_FLAG" value="2"/>
-                       <member name="GDA_EASY_CREATE_TABLE_NOT_NULL_FLAG" value="4"/>
-                       <member name="GDA_EASY_CREATE_TABLE_UNIQUE_FLAG" value="8"/>
-                       <member name="GDA_EASY_CREATE_TABLE_AUTOINC_FLAG" value="16"/>
-                       <member name="GDA_EASY_CREATE_TABLE_FKEY_FLAG" value="32"/>
-                       <member name="GDA_EASY_CREATE_TABLE_PKEY_AUTOINC_FLAG" value="18"/>
-               </flags>
                <flags name="GdaMetaGraphInfo" type-name="GdaMetaGraphInfo" get-type="gda_meta_graph_info_get_type">
                        <member name="GDA_META_GRAPH_COLUMNS" value="1"/>
                </flags>
                        <member name="GDA_META_STRUCT_FEATURE_ALL" value="3"/>
                        <member name="GDA_META_STRUCT_FEATURE_VIEW_DEPENDENCIES" value="2"/>
                </flags>
+               <flags name="GdaServerOperationCreateTableFlag" type-name="GdaServerOperationCreateTableFlag" get-type="gda_server_operation_create_table_flag_get_type">
+                       <member name="GDA_SERVER_OPERATION_CREATE_TABLE_NOTHING_FLAG" value="1"/>
+                       <member name="GDA_SERVER_OPERATION_CREATE_TABLE_PKEY_FLAG" value="2"/>
+                       <member name="GDA_SERVER_OPERATION_CREATE_TABLE_NOT_NULL_FLAG" value="4"/>
+                       <member name="GDA_SERVER_OPERATION_CREATE_TABLE_UNIQUE_FLAG" value="8"/>
+                       <member name="GDA_SERVER_OPERATION_CREATE_TABLE_AUTOINC_FLAG" value="16"/>
+                       <member name="GDA_SERVER_OPERATION_CREATE_TABLE_FKEY_FLAG" value="32"/>
+                       <member name="GDA_SERVER_OPERATION_CREATE_TABLE_PKEY_AUTOINC_FLAG" value="18"/>
+               </flags>
                <flags name="GdaSqlIdentifierStyle" type-name="GdaSqlIdentifierStyle" get-type="gda_sql_identifier_style_get_type">
                        <member name="GDA_SQL_IDENTIFIERS_LOWER_CASE" value="1"/>
                        <member name="GDA_SQL_IDENTIFIERS_UPPER_CASE" value="2"/>
                        <member name="GDA_STATEMENT_MODEL_ALLOW_NOPARAM" value="8"/>
                </flags>
                <flags name="GdaStatementSqlFlag" type-name="GdaStatementSqlFlag" get-type="gda_statement_sql_flag_get_type">
+                       <member name="GDA_STATEMENT_SQL_PARAMS_AS_VALUES" value="0"/>
                        <member name="GDA_STATEMENT_SQL_PRETTY" value="1"/>
                        <member name="GDA_STATEMENT_SQL_PARAMS_LONG" value="2"/>
                        <member name="GDA_STATEMENT_SQL_PARAMS_SHORT" value="4"/>
                                        <parameter name="error" type="GError**"/>
                                </parameters>
                        </method>
+                       <method name="async_cancel" symbol="gda_connection_async_cancel">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="cnc" type="GdaConnection*"/>
+                                       <parameter name="task_id" type="guint"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="async_fetch_result" symbol="gda_connection_async_fetch_result">
+                               <return-type type="GObject*"/>
+                               <parameters>
+                                       <parameter name="cnc" type="GdaConnection*"/>
+                                       <parameter name="task_id" type="guint"/>
+                                       <parameter name="last_insert_row" type="GdaSet**"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="async_statement_execute" symbol="gda_connection_async_statement_execute">
+                               <return-type type="guint"/>
+                               <parameters>
+                                       <parameter name="cnc" type="GdaConnection*"/>
+                                       <parameter name="stmt" type="GdaStatement*"/>
+                                       <parameter name="params" type="GdaSet*"/>
+                                       <parameter name="model_usage" type="GdaStatementModelUsage"/>
+                                       <parameter name="col_types" type="GType*"/>
+                                       <parameter name="need_last_insert_row" type="gboolean"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
                        <method name="batch_execute" symbol="gda_connection_batch_execute">
                                <return-type type="GSList*"/>
                                <parameters>
                                        <parameter name="cnc" type="GdaConnection*"/>
                                </parameters>
                        </method>
+                       <method name="delete_row_from_table" symbol="gda_connection_delete_row_from_table">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="cnc" type="GdaConnection*"/>
+                                       <parameter name="table" type="gchar*"/>
+                                       <parameter name="condition_column_name" type="gchar*"/>
+                                       <parameter name="condition_value" type="GValue*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
                        <method name="delete_savepoint" symbol="gda_connection_delete_savepoint">
                                <return-type type="gboolean"/>
                                <parameters>
                        <method name="error_quark" symbol="gda_connection_error_quark">
                                <return-type type="GQuark"/>
                        </method>
+                       <method name="execute_non_select_command" symbol="gda_connection_execute_non_select_command">
+                               <return-type type="gint"/>
+                               <parameters>
+                                       <parameter name="cnc" type="GdaConnection*"/>
+                                       <parameter name="sql" type="gchar*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="execute_select_command" symbol="gda_connection_execute_select_command">
+                               <return-type type="GdaDataModel*"/>
+                               <parameters>
+                                       <parameter name="cnc" type="GdaConnection*"/>
+                                       <parameter name="sql" type="gchar*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
                        <method name="get_authentication" symbol="gda_connection_get_authentication">
                                <return-type type="gchar*"/>
                                <parameters>
                                        <parameter name="cnc" type="GdaConnection*"/>
                                </parameters>
                        </method>
+                       <method name="insert_row_into_table" symbol="gda_connection_insert_row_into_table">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="cnc" type="GdaConnection*"/>
+                                       <parameter name="table" type="gchar*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="insert_row_into_table_v" symbol="gda_connection_insert_row_into_table_v">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="cnc" type="GdaConnection*"/>
+                                       <parameter name="table" type="gchar*"/>
+                                       <parameter name="col_names" type="GSList*"/>
+                                       <parameter name="values" type="GSList*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
                        <method name="is_opened" symbol="gda_connection_is_opened">
                                <return-type type="gboolean"/>
                                <parameters>
                                        <parameter name="error" type="GError**"/>
                                </parameters>
                        </method>
+                       <method name="parse_sql_string" symbol="gda_connection_parse_sql_string">
+                               <return-type type="GdaStatement*"/>
+                               <parameters>
+                                       <parameter name="cnc" type="GdaConnection*"/>
+                                       <parameter name="sql" type="gchar*"/>
+                                       <parameter name="params" type="GdaSet**"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
                        <method name="perform_operation" symbol="gda_connection_perform_operation">
                                <return-type type="gboolean"/>
                                <parameters>
                                        <parameter name="id" type="gchar*"/>
                                </parameters>
                        </method>
-                       <method name="rollback_savepoint" symbol="gda_connection_rollback_savepoint">
-                               <return-type type="gboolean"/>
+                       <method name="repetitive_statement_execute" symbol="gda_connection_repetitive_statement_execute">
+                               <return-type type="GSList*"/>
+                               <parameters>
+                                       <parameter name="cnc" type="GdaConnection*"/>
+                                       <parameter name="rstmt" type="GdaRepetitiveStatement*"/>
+                                       <parameter name="model_usage" type="GdaStatementModelUsage"/>
+                                       <parameter name="col_types" type="GType*"/>
+                                       <parameter name="stop_on_error" type="gboolean"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="rollback_savepoint" symbol="gda_connection_rollback_savepoint">
+                               <return-type type="gboolean"/>
                                <parameters>
                                        <parameter name="cnc" type="GdaConnection*"/>
                                        <parameter name="name" type="gchar*"/>
                                        <parameter name="error" type="GError**"/>
                                </parameters>
                        </method>
+                       <method name="update_row_in_table" symbol="gda_connection_update_row_in_table">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="cnc" type="GdaConnection*"/>
+                                       <parameter name="table" type="gchar*"/>
+                                       <parameter name="condition_column_name" type="gchar*"/>
+                                       <parameter name="condition_value" type="GValue*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="update_row_in_table_v" symbol="gda_connection_update_row_in_table_v">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="cnc" type="GdaConnection*"/>
+                                       <parameter name="table" type="gchar*"/>
+                                       <parameter name="condition_column_name" type="gchar*"/>
+                                       <parameter name="condition_value" type="GValue*"/>
+                                       <parameter name="col_names" type="GSList*"/>
+                                       <parameter name="values" type="GSList*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
                        <method name="value_to_sql_string" symbol="gda_connection_value_to_sql_string">
                                <return-type type="gchar*"/>
                                <parameters>
                        <property name="auth-string" type="char*" readable="1" writable="1" construct="0" construct-only="0"/>
                        <property name="cnc-string" type="char*" readable="1" writable="1" construct="0" construct-only="0"/>
                        <property name="dsn" type="char*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="events-history-size" type="gint" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="is-wrapper" type="gboolean" readable="1" writable="1" construct="0" construct-only="1"/>
                        <property name="meta-store" type="GdaMetaStore*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="monitor-wrapped-in-mainloop" type="gboolean" readable="1" writable="1" construct="0" construct-only="0"/>
                        <property name="options" type="GdaConnectionOptions" readable="1" writable="1" construct="0" construct-only="0"/>
                        <property name="provider" type="GdaServerProvider*" readable="1" writable="1" construct="0" construct-only="0"/>
                        <property name="thread-owner" type="gpointer" readable="1" writable="1" construct="0" construct-only="0"/>
                        <property name="n-columns" type="guint" readable="1" writable="1" construct="0" construct-only="0"/>
                        <property name="read-only" type="gboolean" readable="1" writable="1" construct="0" construct-only="0"/>
                </object>
-               <object name="GdaDataModelBdb" parent="GObject" type-name="GdaDataModelBdb" get-type="gda_data_model_bdb_get_type">
-                       <implements>
-                               <interface name="GdaDataModel"/>
-                       </implements>
-                       <method name="clean_errors" symbol="gda_data_model_bdb_clean_errors">
-                               <return-type type="void"/>
-                               <parameters>
-                                       <parameter name="model" type="GdaDataModelBdb*"/>
-                               </parameters>
-                       </method>
-                       <method name="get_errors" symbol="gda_data_model_bdb_get_errors">
-                               <return-type type="GSList*"/>
-                               <parameters>
-                                       <parameter name="model" type="GdaDataModelBdb*"/>
-                               </parameters>
-                       </method>
-                       <constructor name="new" symbol="gda_data_model_bdb_new">
-                               <return-type type="GdaDataModel*"/>
-                               <parameters>
-                                       <parameter name="filename" type="gchar*"/>
-                                       <parameter name="db_name" type="gchar*"/>
-                               </parameters>
-                       </constructor>
-                       <property name="db-name" type="char*" readable="1" writable="1" construct="0" construct-only="1"/>
-                       <property name="filename" type="char*" readable="1" writable="1" construct="0" construct-only="1"/>
-                       <vfunc name="create_data_columns">
-                               <return-type type="GSList*"/>
-                               <parameters>
-                                       <parameter name="model" type="GdaDataModelBdb*"/>
-                               </parameters>
-                       </vfunc>
-                       <vfunc name="create_key_columns">
-                               <return-type type="GSList*"/>
-                               <parameters>
-                                       <parameter name="model" type="GdaDataModelBdb*"/>
-                               </parameters>
-                       </vfunc>
-                       <vfunc name="get_data_part">
-                               <return-type type="GValue*"/>
-                               <parameters>
-                                       <parameter name="model" type="GdaDataModelBdb*"/>
-                                       <parameter name="data" type="gpointer"/>
-                                       <parameter name="length" type="gint"/>
-                                       <parameter name="part" type="gint"/>
-                               </parameters>
-                       </vfunc>
-                       <vfunc name="get_key_part">
-                               <return-type type="GValue*"/>
-                               <parameters>
-                                       <parameter name="model" type="GdaDataModelBdb*"/>
-                                       <parameter name="data" type="gpointer"/>
-                                       <parameter name="length" type="gint"/>
-                                       <parameter name="part" type="gint"/>
-                               </parameters>
-                       </vfunc>
-                       <vfunc name="update_data_part">
-                               <return-type type="gboolean"/>
-                               <parameters>
-                                       <parameter name="model" type="GdaDataModelBdb*"/>
-                                       <parameter name="data" type="gpointer"/>
-                                       <parameter name="length" type="gint"/>
-                                       <parameter name="part" type="gint"/>
-                                       <parameter name="value" type="GValue*"/>
-                                       <parameter name="error" type="GError**"/>
-                               </parameters>
-                       </vfunc>
-                       <vfunc name="update_key_part">
-                               <return-type type="gboolean"/>
-                               <parameters>
-                                       <parameter name="model" type="GdaDataModelBdb*"/>
-                                       <parameter name="data" type="gpointer"/>
-                                       <parameter name="length" type="gint"/>
-                                       <parameter name="part" type="gint"/>
-                                       <parameter name="value" type="GValue*"/>
-                                       <parameter name="error" type="GError**"/>
-                               </parameters>
-                       </vfunc>
-               </object>
                <object name="GdaDataModelDir" parent="GObject" type-name="GdaDataModelDir" get-type="gda_data_model_dir_get_type">
                        <implements>
                                <interface name="GdaDataModel"/>
                        <property name="filename" type="char*" readable="1" writable="1" construct="0" construct-only="1"/>
                        <property name="options" type="GdaSet*" readable="1" writable="1" construct="0" construct-only="1"/>
                        <property name="random-access" type="gboolean" readable="1" writable="1" construct="0" construct-only="1"/>
+                       <property name="strict" type="gboolean" readable="1" writable="1" construct="1" construct-only="0"/>
                        <property name="xml-node" type="gpointer" readable="1" writable="1" construct="0" construct-only="1"/>
                </object>
                <object name="GdaDataModelIter" parent="GdaSet" type-name="GdaDataModelIter" get-type="gda_data_model_iter_get_type">
                                        <parameter name="rownum" type="gint"/>
                                </parameters>
                        </method>
+                       <method name="rerun" symbol="gda_data_select_rerun">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="model" type="GdaDataSelect*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="set_columns" symbol="gda_data_select_set_columns">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GdaDataSelect*"/>
+                                       <parameter name="columns" type="GSList*"/>
+                               </parameters>
+                       </method>
                        <method name="set_modification_statement" symbol="gda_data_select_set_modification_statement">
                                <return-type type="gboolean"/>
                                <parameters>
                                        <parameter name="table_name" type="gchar*"/>
                                </parameters>
                        </method>
+                       <method name="declare_foreign_key" symbol="gda_meta_store_declare_foreign_key">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="store" type="GdaMetaStore*"/>
+                                       <parameter name="mstruct" type="GdaMetaStruct*"/>
+                                       <parameter name="fk_name" type="gchar*"/>
+                                       <parameter name="catalog" type="gchar*"/>
+                                       <parameter name="schema" type="gchar*"/>
+                                       <parameter name="table" type="gchar*"/>
+                                       <parameter name="ref_catalog" type="gchar*"/>
+                                       <parameter name="ref_schema" type="gchar*"/>
+                                       <parameter name="ref_table" type="gchar*"/>
+                                       <parameter name="nb_cols" type="guint"/>
+                                       <parameter name="colnames" type="gchar**"/>
+                                       <parameter name="ref_colnames" type="gchar**"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
                        <method name="error_quark" symbol="gda_meta_store_error_quark">
                                <return-type type="GQuark"/>
                        </method>
                                        <parameter name="error" type="GError**"/>
                                </parameters>
                        </method>
+                       <method name="set_identifiers_style" symbol="gda_meta_store_set_identifiers_style">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="store" type="GdaMetaStore*"/>
+                                       <parameter name="style" type="GdaSqlIdentifierStyle"/>
+                               </parameters>
+                       </method>
                        <method name="set_reserved_keywords_func" symbol="gda_meta_store_set_reserved_keywords_func">
                                <return-type type="void"/>
                                <parameters>
                                        <parameter name="cnc" type="GdaConnection*"/>
                                </parameters>
                        </method>
+                       <method name="undeclare_foreign_key" symbol="gda_meta_store_undeclare_foreign_key">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="store" type="GdaMetaStore*"/>
+                                       <parameter name="mstruct" type="GdaMetaStruct*"/>
+                                       <parameter name="fk_name" type="gchar*"/>
+                                       <parameter name="catalog" type="gchar*"/>
+                                       <parameter name="schema" type="gchar*"/>
+                                       <parameter name="table" type="gchar*"/>
+                                       <parameter name="ref_catalog" type="gchar*"/>
+                                       <parameter name="ref_schema" type="gchar*"/>
+                                       <parameter name="ref_table" type="gchar*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
                        <property name="catalog" type="char*" readable="0" writable="1" construct="0" construct-only="1"/>
                        <property name="cnc" type="GdaConnection*" readable="1" writable="1" construct="0" construct-only="1"/>
                        <property name="cnc-string" type="char*" readable="0" writable="1" construct="0" construct-only="1"/>
                        <field name="types" type="GType*"/>
                        <field name="tmpl_columns" type="GSList*"/>
                </object>
+               <object name="GdaRepetitiveStatement" parent="GObject" type-name="GdaRepetitiveStatement" get-type="gda_repetitive_statement_get_type">
+                       <method name="append_set" symbol="gda_repetitive_statement_append_set">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="rstmt" type="GdaRepetitiveStatement*"/>
+                                       <parameter name="values" type="GdaSet*"/>
+                                       <parameter name="make_copy" type="gboolean"/>
+                               </parameters>
+                       </method>
+                       <method name="get_all_sets" symbol="gda_repetitive_statement_get_all_sets">
+                               <return-type type="GSList*"/>
+                               <parameters>
+                                       <parameter name="rstmt" type="GdaRepetitiveStatement*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_template_set" symbol="gda_repetitive_statement_get_template_set">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="rstmt" type="GdaRepetitiveStatement*"/>
+                                       <parameter name="set" type="GdaSet**"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <constructor name="new" symbol="gda_repetitive_statement_new">
+                               <return-type type="GdaRepetitiveStatement*"/>
+                               <parameters>
+                                       <parameter name="stmt" type="GdaStatement*"/>
+                               </parameters>
+                       </constructor>
+                       <property name="statement" type="GdaStatement*" readable="1" writable="1" construct="0" construct-only="1"/>
+               </object>
                <object name="GdaRow" parent="GObject" type-name="GdaRow" get-type="gda_row_get_type">
                        <method name="get_length" symbol="gda_row_get_length">
                                <return-type type="gint"/>
                                <return-type type="guint"/>
                                <parameters>
                                        <parameter name="op" type="GdaServerOperation*"/>
-                                       <parameter name="path" type="gchar*"/>
+                                       <parameter name="seq_path" type="gchar*"/>
                                </parameters>
                        </method>
                        <method name="del_item_from_sequence" symbol="gda_server_operation_del_item_from_sequence">
                                        <parameter name="item_path" type="gchar*"/>
                                </parameters>
                        </method>
+                       <method name="error_quark" symbol="gda_server_operation_error_quark">
+                               <return-type type="GQuark"/>
+                       </method>
                        <method name="get_node_info" symbol="gda_server_operation_get_node_info">
                                <return-type type="GdaServerOperationNode*"/>
                                <parameters>
                                        <parameter name="type" type="GdaServerOperationType"/>
                                </parameters>
                        </method>
+                       <method name="perform_create_database" symbol="gda_server_operation_perform_create_database">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="op" type="GdaServerOperation*"/>
+                                       <parameter name="provider" type="gchar*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="perform_create_table" symbol="gda_server_operation_perform_create_table">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="op" type="GdaServerOperation*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="perform_drop_database" symbol="gda_server_operation_perform_drop_database">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="op" type="GdaServerOperation*"/>
+                                       <parameter name="provider" type="gchar*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="perform_drop_table" symbol="gda_server_operation_perform_drop_table">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="op" type="GdaServerOperation*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="prepare_create_database" symbol="gda_server_operation_prepare_create_database">
+                               <return-type type="GdaServerOperation*"/>
+                               <parameters>
+                                       <parameter name="provider" type="gchar*"/>
+                                       <parameter name="db_name" type="gchar*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="prepare_create_table" symbol="gda_server_operation_prepare_create_table">
+                               <return-type type="GdaServerOperation*"/>
+                               <parameters>
+                                       <parameter name="cnc" type="GdaConnection*"/>
+                                       <parameter name="table_name" type="gchar*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="prepare_drop_database" symbol="gda_server_operation_prepare_drop_database">
+                               <return-type type="GdaServerOperation*"/>
+                               <parameters>
+                                       <parameter name="provider" type="gchar*"/>
+                                       <parameter name="db_name" type="gchar*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="prepare_drop_table" symbol="gda_server_operation_prepare_drop_table">
+                               <return-type type="GdaServerOperation*"/>
+                               <parameters>
+                                       <parameter name="cnc" type="GdaConnection*"/>
+                                       <parameter name="table_name" type="gchar*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
                        <method name="save_data_to_xml" symbol="gda_server_operation_save_data_to_xml">
                                <return-type type="xmlNodePtr"/>
                                <parameters>
                                        <parameter name="path_format" type="gchar*"/>
                                </parameters>
                        </method>
+                       <method name="string_to_op_type" symbol="gda_server_operation_string_to_op_type">
+                               <return-type type="GdaServerOperationType"/>
+                               <parameters>
+                                       <parameter name="str" type="gchar*"/>
+                               </parameters>
+                       </method>
                        <property name="connection" type="GdaConnection*" readable="1" writable="1" construct="0" construct-only="1"/>
                        <property name="op-type" type="gint" readable="1" writable="1" construct="0" construct-only="1"/>
                        <property name="provider" type="GdaServerProvider*" readable="1" writable="1" construct="0" construct-only="1"/>
                                        <parameter name="provider" type="GdaServerProvider*"/>
                                </parameters>
                        </vfunc>
+                       <vfunc name="handle_async">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="provider" type="GdaServerProvider*"/>
+                                       <parameter name="cnc" type="GdaConnection*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </vfunc>
                        <vfunc name="identifier_quote">
                                <return-type type="gchar*"/>
                                <parameters>
                                        <parameter name="error" type="GError**"/>
                                </parameters>
                        </vfunc>
+                       <vfunc name="statement_rewrite">
+                               <return-type type="GdaSqlStatement*"/>
+                               <parameters>
+                                       <parameter name="provider" type="GdaServerProvider*"/>
+                                       <parameter name="cnc" type="GdaConnection*"/>
+                                       <parameter name="stmt" type="GdaStatement*"/>
+                                       <parameter name="params" type="GdaSet*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </vfunc>
                        <vfunc name="statement_to_sql">
                                <return-type type="gchar*"/>
                                <parameters>
                                        <parameter name="holder" type="GdaHolder*"/>
                                </parameters>
                        </method>
+                       <method name="get_nth_holder" symbol="gda_set_get_nth_holder">
+                               <return-type type="GdaHolder*"/>
+                               <parameters>
+                                       <parameter name="set" type="GdaSet*"/>
+                                       <parameter name="pos" type="gint"/>
+                               </parameters>
+                       </method>
                        <method name="get_source" symbol="gda_set_get_source">
                                <return-type type="GdaSetSource*"/>
                                <parameters>
                                        <parameter name="nb" type="gint"/>
                                </parameters>
                        </constructor>
+                       <constructor name="new_read_only" symbol="gda_set_new_read_only">
+                               <return-type type="GdaSet*"/>
+                               <parameters>
+                                       <parameter name="holders" type="GSList*"/>
+                               </parameters>
+                       </constructor>
                        <method name="remove_holder" symbol="gda_set_remove_holder">
                                <return-type type="void"/>
                                <parameters>
                                        <parameter name="holder" type="GdaHolder*"/>
                                </parameters>
                        </method>
+                       <method name="replace_source_model" symbol="gda_set_replace_source_model">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="set" type="GdaSet*"/>
+                                       <parameter name="source" type="GdaSetSource*"/>
+                                       <parameter name="model" type="GdaDataModel*"/>
+                               </parameters>
+                       </method>
                        <method name="set_holder_value" symbol="gda_set_set_holder_value">
                                <return-type type="gboolean"/>
                                <parameters>
                                        <parameter name="holder" type="GdaHolder*"/>
                                </parameters>
                        </signal>
+                       <signal name="holder-type-set" when="FIRST">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="set" type="GdaSet*"/>
+                                       <parameter name="holder" type="GdaHolder*"/>
+                               </parameters>
+                       </signal>
                        <signal name="public-data-changed" when="FIRST">
                                <return-type type="void"/>
                                <parameters>
                                        <parameter name="set" type="GdaSet*"/>
                                </parameters>
                        </signal>
+                       <signal name="source-model-changed" when="FIRST">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="set" type="GdaSet*"/>
+                                       <parameter name="source" type="gpointer"/>
+                               </parameters>
+                       </signal>
                        <signal name="validate-holder-change" when="LAST">
                                <return-type type="GdaError*"/>
                                <parameters>
                        <field name="sources_list" type="GSList*"/>
                        <field name="groups_list" type="GSList*"/>
                </object>
-               <object name="GdaSqlParser" parent="GObject" type-name="GdaSqlParser" get-type="gda_sql_parser_get_type">
-                       <implements>
-                               <interface name="GdaLockable"/>
-                       </implements>
-                       <method name="error_quark" symbol="gda_sql_parser_error_quark">
-                               <return-type type="GQuark"/>
-                       </method>
-                       <constructor name="new" symbol="gda_sql_parser_new">
-                               <return-type type="GdaSqlParser*"/>
-                       </constructor>
-                       <method name="parse_file_as_batch" symbol="gda_sql_parser_parse_file_as_batch">
-                               <return-type type="GdaBatch*"/>
+               <object name="GdaSqlBuilder" parent="GObject" type-name="GdaSqlBuilder" get-type="gda_sql_builder_get_type">
+                       <method name="add_case" symbol="gda_sql_builder_add_case">
+                               <return-type type="GdaSqlBuilderId"/>
                                <parameters>
-                                       <parameter name="parser" type="GdaSqlParser*"/>
-                                       <parameter name="filename" type="gchar*"/>
-                                       <parameter name="error" type="GError**"/>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="test_expr" type="GdaSqlBuilderId"/>
+                                       <parameter name="else_expr" type="GdaSqlBuilderId"/>
                                </parameters>
                        </method>
-                       <method name="parse_string" symbol="gda_sql_parser_parse_string">
-                               <return-type type="GdaStatement*"/>
+                       <method name="add_case_v" symbol="gda_sql_builder_add_case_v">
+                               <return-type type="GdaSqlBuilderId"/>
                                <parameters>
-                                       <parameter name="parser" type="GdaSqlParser*"/>
-                                       <parameter name="sql" type="gchar*"/>
-                                       <parameter name="remain" type="gchar**"/>
-                                       <parameter name="error" type="GError**"/>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="test_expr" type="GdaSqlBuilderId"/>
+                                       <parameter name="else_expr" type="GdaSqlBuilderId"/>
+                                       <parameter name="when_array" type="GdaSqlBuilderId*"/>
+                                       <parameter name="then_array" type="GdaSqlBuilderId*"/>
+                                       <parameter name="args_size" type="gint"/>
                                </parameters>
                        </method>
-                       <method name="parse_string_as_batch" symbol="gda_sql_parser_parse_string_as_batch">
-                               <return-type type="GdaBatch*"/>
+                       <method name="add_cond" symbol="gda_sql_builder_add_cond">
+                               <return-type type="GdaSqlBuilderId"/>
                                <parameters>
-                                       <parameter name="parser" type="GdaSqlParser*"/>
-                                       <parameter name="sql" type="gchar*"/>
-                                       <parameter name="remain" type="gchar**"/>
-                                       <parameter name="error" type="GError**"/>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="op" type="GdaSqlOperatorType"/>
+                                       <parameter name="op1" type="GdaSqlBuilderId"/>
+                                       <parameter name="op2" type="GdaSqlBuilderId"/>
+                                       <parameter name="op3" type="GdaSqlBuilderId"/>
                                </parameters>
                        </method>
-                       <method name="set_overflow_error" symbol="gda_sql_parser_set_overflow_error">
-                               <return-type type="void"/>
+                       <method name="add_cond_v" symbol="gda_sql_builder_add_cond_v">
+                               <return-type type="GdaSqlBuilderId"/>
                                <parameters>
-                                       <parameter name="parser" type="GdaSqlParser*"/>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="op" type="GdaSqlOperatorType"/>
+                                       <parameter name="op_ids" type="GdaSqlBuilderId*"/>
+                                       <parameter name="op_ids_size" type="gint"/>
+                               </parameters>
+                       </method>
+                       <method name="add_expr" symbol="gda_sql_builder_add_expr">
+                               <return-type type="GdaSqlBuilderId"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="dh" type="GdaDataHandler*"/>
+                                       <parameter name="type" type="GType"/>
+                               </parameters>
+                       </method>
+                       <method name="add_expr_value" symbol="gda_sql_builder_add_expr_value">
+                               <return-type type="GdaSqlBuilderId"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="dh" type="GdaDataHandler*"/>
+                                       <parameter name="value" type="GValue*"/>
+                               </parameters>
+                       </method>
+                       <method name="add_field_id" symbol="gda_sql_builder_add_field_id">
+                               <return-type type="GdaSqlBuilderId"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="field_name" type="gchar*"/>
+                                       <parameter name="table_name" type="gchar*"/>
+                               </parameters>
+                       </method>
+                       <method name="add_field_value" symbol="gda_sql_builder_add_field_value">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="field_name" type="gchar*"/>
+                                       <parameter name="type" type="GType"/>
+                               </parameters>
+                       </method>
+                       <method name="add_field_value_as_gvalue" symbol="gda_sql_builder_add_field_value_as_gvalue">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="field_name" type="gchar*"/>
+                                       <parameter name="value" type="GValue*"/>
+                               </parameters>
+                       </method>
+                       <method name="add_field_value_id" symbol="gda_sql_builder_add_field_value_id">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="field_id" type="GdaSqlBuilderId"/>
+                                       <parameter name="value_id" type="GdaSqlBuilderId"/>
+                               </parameters>
+                       </method>
+                       <method name="add_function" symbol="gda_sql_builder_add_function">
+                               <return-type type="GdaSqlBuilderId"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="func_name" type="gchar*"/>
+                               </parameters>
+                       </method>
+                       <method name="add_function_v" symbol="gda_sql_builder_add_function_v">
+                               <return-type type="GdaSqlBuilderId"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="func_name" type="gchar*"/>
+                                       <parameter name="args" type="GdaSqlBuilderId*"/>
+                                       <parameter name="args_size" type="gint"/>
+                               </parameters>
+                       </method>
+                       <method name="add_id" symbol="gda_sql_builder_add_id">
+                               <return-type type="GdaSqlBuilderId"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="string" type="gchar*"/>
+                               </parameters>
+                       </method>
+                       <method name="add_param" symbol="gda_sql_builder_add_param">
+                               <return-type type="GdaSqlBuilderId"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="param_name" type="gchar*"/>
+                                       <parameter name="type" type="GType"/>
+                                       <parameter name="nullok" type="gboolean"/>
+                               </parameters>
+                       </method>
+                       <method name="add_sub_select" symbol="gda_sql_builder_add_sub_select">
+                               <return-type type="GdaSqlBuilderId"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="sqlst" type="GdaSqlStatement*"/>
+                               </parameters>
+                       </method>
+                       <method name="compound_add_sub_select" symbol="gda_sql_builder_compound_add_sub_select">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="sqlst" type="GdaSqlStatement*"/>
+                               </parameters>
+                       </method>
+                       <method name="compound_set_type" symbol="gda_sql_builder_compound_set_type">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="compound_type" type="GdaSqlStatementCompoundType"/>
+                               </parameters>
+                       </method>
+                       <method name="error_quark" symbol="gda_sql_builder_error_quark">
+                               <return-type type="GQuark"/>
+                       </method>
+                       <method name="export_expression" symbol="gda_sql_builder_export_expression">
+                               <return-type type="GdaSqlExpr*"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="id" type="GdaSqlBuilderId"/>
+                               </parameters>
+                       </method>
+                       <method name="get_sql_statement" symbol="gda_sql_builder_get_sql_statement">
+                               <return-type type="GdaSqlStatement*"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_statement" symbol="gda_sql_builder_get_statement">
+                               <return-type type="GdaStatement*"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="import_expression" symbol="gda_sql_builder_import_expression">
+                               <return-type type="GdaSqlBuilderId"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="expr" type="GdaSqlExpr*"/>
+                               </parameters>
+                       </method>
+                       <method name="join_add_field" symbol="gda_sql_builder_join_add_field">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="join_id" type="GdaSqlBuilderId"/>
+                                       <parameter name="field_name" type="gchar*"/>
+                               </parameters>
+                       </method>
+                       <constructor name="new" symbol="gda_sql_builder_new">
+                               <return-type type="GdaSqlBuilder*"/>
+                               <parameters>
+                                       <parameter name="stmt_type" type="GdaSqlStatementType"/>
+                               </parameters>
+                       </constructor>
+                       <method name="select_add_field" symbol="gda_sql_builder_select_add_field">
+                               <return-type type="GdaSqlBuilderId"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="field_name" type="gchar*"/>
+                                       <parameter name="table_name" type="gchar*"/>
+                                       <parameter name="alias" type="gchar*"/>
+                               </parameters>
+                       </method>
+                       <method name="select_add_target" symbol="gda_sql_builder_select_add_target">
+                               <return-type type="GdaSqlBuilderId"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="table_name" type="gchar*"/>
+                                       <parameter name="alias" type="gchar*"/>
+                               </parameters>
+                       </method>
+                       <method name="select_add_target_id" symbol="gda_sql_builder_select_add_target_id">
+                               <return-type type="GdaSqlBuilderId"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="table_id" type="GdaSqlBuilderId"/>
+                                       <parameter name="alias" type="gchar*"/>
+                               </parameters>
+                       </method>
+                       <method name="select_group_by" symbol="gda_sql_builder_select_group_by">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="expr_id" type="GdaSqlBuilderId"/>
+                               </parameters>
+                       </method>
+                       <method name="select_join_targets" symbol="gda_sql_builder_select_join_targets">
+                               <return-type type="GdaSqlBuilderId"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="left_target_id" type="GdaSqlBuilderId"/>
+                                       <parameter name="right_target_id" type="GdaSqlBuilderId"/>
+                                       <parameter name="join_type" type="GdaSqlSelectJoinType"/>
+                                       <parameter name="join_expr" type="GdaSqlBuilderId"/>
+                               </parameters>
+                       </method>
+                       <method name="select_order_by" symbol="gda_sql_builder_select_order_by">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="expr_id" type="GdaSqlBuilderId"/>
+                                       <parameter name="asc" type="gboolean"/>
+                                       <parameter name="collation_name" type="gchar*"/>
+                               </parameters>
+                       </method>
+                       <method name="select_set_distinct" symbol="gda_sql_builder_select_set_distinct">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="distinct" type="gboolean"/>
+                                       <parameter name="expr_id" type="GdaSqlBuilderId"/>
+                               </parameters>
+                       </method>
+                       <method name="select_set_having" symbol="gda_sql_builder_select_set_having">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="cond_id" type="GdaSqlBuilderId"/>
+                               </parameters>
+                       </method>
+                       <method name="select_set_limit" symbol="gda_sql_builder_select_set_limit">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="limit_count_expr_id" type="GdaSqlBuilderId"/>
+                                       <parameter name="limit_offset_expr_id" type="GdaSqlBuilderId"/>
+                               </parameters>
+                       </method>
+                       <method name="set_table" symbol="gda_sql_builder_set_table">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="table_name" type="gchar*"/>
+                               </parameters>
+                       </method>
+                       <method name="set_where" symbol="gda_sql_builder_set_where">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="builder" type="GdaSqlBuilder*"/>
+                                       <parameter name="cond_id" type="GdaSqlBuilderId"/>
+                               </parameters>
+                       </method>
+                       <property name="stmt-type" type="GdaSqlStatementType" readable="0" writable="1" construct="0" construct-only="1"/>
+               </object>
+               <object name="GdaSqlParser" parent="GObject" type-name="GdaSqlParser" get-type="gda_sql_parser_get_type">
+                       <implements>
+                               <interface name="GdaLockable"/>
+                       </implements>
+                       <method name="error_quark" symbol="gda_sql_parser_error_quark">
+                               <return-type type="GQuark"/>
+                       </method>
+                       <constructor name="new" symbol="gda_sql_parser_new">
+                               <return-type type="GdaSqlParser*"/>
+                       </constructor>
+                       <method name="parse_file_as_batch" symbol="gda_sql_parser_parse_file_as_batch">
+                               <return-type type="GdaBatch*"/>
+                               <parameters>
+                                       <parameter name="parser" type="GdaSqlParser*"/>
+                                       <parameter name="filename" type="gchar*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="parse_string" symbol="gda_sql_parser_parse_string">
+                               <return-type type="GdaStatement*"/>
+                               <parameters>
+                                       <parameter name="parser" type="GdaSqlParser*"/>
+                                       <parameter name="sql" type="gchar*"/>
+                                       <parameter name="remain" type="gchar**"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="parse_string_as_batch" symbol="gda_sql_parser_parse_string_as_batch">
+                               <return-type type="GdaBatch*"/>
+                               <parameters>
+                                       <parameter name="parser" type="GdaSqlParser*"/>
+                                       <parameter name="sql" type="gchar*"/>
+                                       <parameter name="remain" type="gchar**"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="set_overflow_error" symbol="gda_sql_parser_set_overflow_error">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="parser" type="GdaSqlParser*"/>
                                </parameters>
                        </method>
                        <method name="set_syntax_error" symbol="gda_sql_parser_set_syntax_error">
                                        <parameter name="error" type="GError**"/>
                                </parameters>
                        </method>
+                       <method name="rewrite_for_default_values" symbol="gda_statement_rewrite_for_default_values">
+                               <return-type type="GdaSqlStatement*"/>
+                               <parameters>
+                                       <parameter name="stmt" type="GdaStatement*"/>
+                                       <parameter name="params" type="GdaSet*"/>
+                                       <parameter name="remove" type="gboolean"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
                        <method name="serialize" symbol="gda_statement_serialize">
                                <return-type type="gchar*"/>
                                <parameters>
                                </parameters>
                        </signal>
                </object>
+               <object name="GdaThreadWrapper" parent="GObject" type-name="GdaThreadWrapper" get-type="gda_thread_wrapper_get_type">
+                       <method name="cancel" symbol="gda_thread_wrapper_cancel">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="wrapper" type="GdaThreadWrapper*"/>
+                                       <parameter name="id" type="guint"/>
+                               </parameters>
+                       </method>
+                       <method name="connect_raw" symbol="gda_thread_wrapper_connect_raw">
+                               <return-type type="gulong"/>
+                               <parameters>
+                                       <parameter name="wrapper" type="GdaThreadWrapper*"/>
+                                       <parameter name="instance" type="gpointer"/>
+                                       <parameter name="sig_name" type="gchar*"/>
+                                       <parameter name="private_thread" type="gboolean"/>
+                                       <parameter name="private_job" type="gboolean"/>
+                                       <parameter name="callback" type="GdaThreadWrapperCallback"/>
+                                       <parameter name="data" type="gpointer"/>
+                               </parameters>
+                       </method>
+                       <method name="disconnect" symbol="gda_thread_wrapper_disconnect">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="wrapper" type="GdaThreadWrapper*"/>
+                                       <parameter name="id" type="gulong"/>
+                               </parameters>
+                       </method>
+                       <method name="error_quark" symbol="gda_thread_wrapper_error_quark">
+                               <return-type type="GQuark"/>
+                       </method>
+                       <method name="execute" symbol="gda_thread_wrapper_execute">
+                               <return-type type="guint"/>
+                               <parameters>
+                                       <parameter name="wrapper" type="GdaThreadWrapper*"/>
+                                       <parameter name="func" type="GdaThreadWrapperFunc"/>
+                                       <parameter name="arg" type="gpointer"/>
+                                       <parameter name="arg_destroy_func" type="GDestroyNotify"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="execute_void" symbol="gda_thread_wrapper_execute_void">
+                               <return-type type="guint"/>
+                               <parameters>
+                                       <parameter name="wrapper" type="GdaThreadWrapper*"/>
+                                       <parameter name="func" type="GdaThreadWrapperVoidFunc"/>
+                                       <parameter name="arg" type="gpointer"/>
+                                       <parameter name="arg_destroy_func" type="GDestroyNotify"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="fetch_result" symbol="gda_thread_wrapper_fetch_result">
+                               <return-type type="gpointer"/>
+                               <parameters>
+                                       <parameter name="wrapper" type="GdaThreadWrapper*"/>
+                                       <parameter name="may_lock" type="gboolean"/>
+                                       <parameter name="exp_id" type="guint"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="get_waiting_size" symbol="gda_thread_wrapper_get_waiting_size">
+                               <return-type type="gint"/>
+                               <parameters>
+                                       <parameter name="wrapper" type="GdaThreadWrapper*"/>
+                               </parameters>
+                       </method>
+                       <method name="iterate" symbol="gda_thread_wrapper_iterate">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="wrapper" type="GdaThreadWrapper*"/>
+                                       <parameter name="may_block" type="gboolean"/>
+                               </parameters>
+                       </method>
+                       <constructor name="new" symbol="gda_thread_wrapper_new">
+                               <return-type type="GdaThreadWrapper*"/>
+                       </constructor>
+                       <method name="steal_signal" symbol="gda_thread_wrapper_steal_signal">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="wrapper" type="GdaThreadWrapper*"/>
+                                       <parameter name="id" type="gulong"/>
+                               </parameters>
+                       </method>
+               </object>
                <object name="GdaTransactionStatus" parent="GObject" type-name="GdaTransactionStatus" get-type="gda_transaction_status_get_type">
                        <constructor name="new" symbol="gda_transaction_status_new">
                                <return-type type="GdaTransactionStatus*"/>
                        <field name="state" type="GdaTransactionStatusState"/>
                        <field name="events" type="GList*"/>
                </object>
+               <object name="GdaTree" parent="GObject" type-name="GdaTree" get-type="gda_tree_get_type">
+                       <method name="add_manager" symbol="gda_tree_add_manager">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="tree" type="GdaTree*"/>
+                                       <parameter name="manager" type="GdaTreeManager*"/>
+                               </parameters>
+                       </method>
+                       <method name="clean" symbol="gda_tree_clean">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="tree" type="GdaTree*"/>
+                               </parameters>
+                       </method>
+                       <method name="dump" symbol="gda_tree_dump">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="tree" type="GdaTree*"/>
+                                       <parameter name="node" type="GdaTreeNode*"/>
+                                       <parameter name="stream" type="FILE*"/>
+                               </parameters>
+                       </method>
+                       <method name="error_quark" symbol="gda_tree_error_quark">
+                               <return-type type="GQuark"/>
+                       </method>
+                       <method name="get_node" symbol="gda_tree_get_node">
+                               <return-type type="GdaTreeNode*"/>
+                               <parameters>
+                                       <parameter name="tree" type="GdaTree*"/>
+                                       <parameter name="tree_path" type="gchar*"/>
+                                       <parameter name="use_names" type="gboolean"/>
+                               </parameters>
+                       </method>
+                       <method name="get_node_manager" symbol="gda_tree_get_node_manager">
+                               <return-type type="GdaTreeManager*"/>
+                               <parameters>
+                                       <parameter name="tree" type="GdaTree*"/>
+                                       <parameter name="node" type="GdaTreeNode*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_node_path" symbol="gda_tree_get_node_path">
+                               <return-type type="gchar*"/>
+                               <parameters>
+                                       <parameter name="tree" type="GdaTree*"/>
+                                       <parameter name="node" type="GdaTreeNode*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_nodes_in_path" symbol="gda_tree_get_nodes_in_path">
+                               <return-type type="GSList*"/>
+                               <parameters>
+                                       <parameter name="tree" type="GdaTree*"/>
+                                       <parameter name="tree_path" type="gchar*"/>
+                                       <parameter name="use_names" type="gboolean"/>
+                               </parameters>
+                       </method>
+                       <constructor name="new" symbol="gda_tree_new">
+                               <return-type type="GdaTree*"/>
+                       </constructor>
+                       <method name="set_attribute" symbol="gda_tree_set_attribute">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="tree" type="GdaTree*"/>
+                                       <parameter name="attribute" type="gchar*"/>
+                                       <parameter name="value" type="GValue*"/>
+                                       <parameter name="destroy" type="GDestroyNotify"/>
+                               </parameters>
+                       </method>
+                       <method name="update_all" symbol="gda_tree_update_all">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="tree" type="GdaTree*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <method name="update_part" symbol="gda_tree_update_part">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="tree" type="GdaTree*"/>
+                                       <parameter name="node" type="GdaTreeNode*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
+                       <property name="is-list" type="gboolean" readable="1" writable="0" construct="0" construct-only="0"/>
+                       <signal name="node-changed" when="LAST">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="tree" type="GdaTree*"/>
+                                       <parameter name="node" type="GdaTreeNode*"/>
+                               </parameters>
+                       </signal>
+                       <signal name="node-deleted" when="LAST">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="tree" type="GdaTree*"/>
+                                       <parameter name="node_path" type="char*"/>
+                               </parameters>
+                       </signal>
+                       <signal name="node-has-child-toggled" when="LAST">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="tree" type="GdaTree*"/>
+                                       <parameter name="node" type="GdaTreeNode*"/>
+                               </parameters>
+                       </signal>
+                       <signal name="node-inserted" when="LAST">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="tree" type="GdaTree*"/>
+                                       <parameter name="node" type="GdaTreeNode*"/>
+                               </parameters>
+                       </signal>
+               </object>
+               <object name="GdaTreeManager" parent="GObject" type-name="GdaTreeManager" get-type="gda_tree_manager_get_type">
+                       <method name="add_manager" symbol="gda_tree_manager_add_manager">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="manager" type="GdaTreeManager*"/>
+                                       <parameter name="sub" type="GdaTreeManager*"/>
+                               </parameters>
+                       </method>
+                       <method name="add_new_node_attribute" symbol="gda_tree_manager_add_new_node_attribute">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="manager" type="GdaTreeManager*"/>
+                                       <parameter name="attribute" type="gchar*"/>
+                                       <parameter name="value" type="GValue*"/>
+                               </parameters>
+                       </method>
+                       <method name="create_node" symbol="gda_tree_manager_create_node">
+                               <return-type type="GdaTreeNode*"/>
+                               <parameters>
+                                       <parameter name="manager" type="GdaTreeManager*"/>
+                                       <parameter name="parent" type="GdaTreeNode*"/>
+                                       <parameter name="name" type="gchar*"/>
+                               </parameters>
+                       </method>
+                       <method name="error_quark" symbol="gda_tree_manager_error_quark">
+                               <return-type type="GQuark"/>
+                       </method>
+                       <method name="get_managers" symbol="gda_tree_manager_get_managers">
+                               <return-type type="GSList*"/>
+                               <parameters>
+                                       <parameter name="manager" type="GdaTreeManager*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_node_create_func" symbol="gda_tree_manager_get_node_create_func">
+                               <return-type type="GdaTreeManagerNodeFunc"/>
+                               <parameters>
+                                       <parameter name="manager" type="GdaTreeManager*"/>
+                               </parameters>
+                       </method>
+                       <constructor name="new_with_func" symbol="gda_tree_manager_new_with_func">
+                               <return-type type="GdaTreeManager*"/>
+                               <parameters>
+                                       <parameter name="update_func" type="GdaTreeManagerNodesFunc"/>
+                               </parameters>
+                       </constructor>
+                       <method name="set_node_create_func" symbol="gda_tree_manager_set_node_create_func">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="manager" type="GdaTreeManager*"/>
+                                       <parameter name="func" type="GdaTreeManagerNodeFunc"/>
+                               </parameters>
+                       </method>
+                       <property name="func" type="gpointer" readable="1" writable="1" construct="1" construct-only="0"/>
+                       <property name="recursive" type="gboolean" readable="1" writable="1" construct="1" construct-only="0"/>
+                       <vfunc name="update_children">
+                               <return-type type="GSList*"/>
+                               <parameters>
+                                       <parameter name="manager" type="GdaTreeManager*"/>
+                                       <parameter name="node" type="GdaTreeNode*"/>
+                                       <parameter name="children_nodes" type="GSList*"/>
+                                       <parameter name="out_error" type="gboolean*"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </vfunc>
+               </object>
+               <object name="GdaTreeMgrColumns" parent="GdaTreeManager" type-name="GdaTreeMgrColumns" get-type="gda_tree_mgr_columns_get_type">
+                       <constructor name="new" symbol="gda_tree_mgr_columns_new">
+                               <return-type type="GdaTreeManager*"/>
+                               <parameters>
+                                       <parameter name="cnc" type="GdaConnection*"/>
+                                       <parameter name="schema" type="gchar*"/>
+                                       <parameter name="table_name" type="gchar*"/>
+                               </parameters>
+                       </constructor>
+                       <property name="connection" type="GdaConnection*" readable="1" writable="1" construct="0" construct-only="1"/>
+                       <property name="meta-store" type="GdaMetaStore*" readable="1" writable="1" construct="0" construct-only="1"/>
+                       <property name="schema" type="char*" readable="0" writable="1" construct="0" construct-only="1"/>
+                       <property name="table-name" type="char*" readable="0" writable="1" construct="0" construct-only="1"/>
+               </object>
+               <object name="GdaTreeMgrLabel" parent="GdaTreeManager" type-name="GdaTreeMgrLabel" get-type="gda_tree_mgr_label_get_type">
+                       <constructor name="new" symbol="gda_tree_mgr_label_new">
+                               <return-type type="GdaTreeManager*"/>
+                               <parameters>
+                                       <parameter name="label" type="gchar*"/>
+                               </parameters>
+                       </constructor>
+                       <property name="label" type="char*" readable="0" writable="1" construct="0" construct-only="1"/>
+               </object>
+               <object name="GdaTreeMgrSchemas" parent="GdaTreeManager" type-name="GdaTreeMgrSchemas" get-type="gda_tree_mgr_schemas_get_type">
+                       <constructor name="new" symbol="gda_tree_mgr_schemas_new">
+                               <return-type type="GdaTreeManager*"/>
+                               <parameters>
+                                       <parameter name="cnc" type="GdaConnection*"/>
+                               </parameters>
+                       </constructor>
+                       <property name="connection" type="GdaConnection*" readable="1" writable="1" construct="0" construct-only="1"/>
+                       <property name="meta-store" type="GdaMetaStore*" readable="1" writable="1" construct="0" construct-only="1"/>
+               </object>
+               <object name="GdaTreeMgrSelect" parent="GdaTreeManager" type-name="GdaTreeMgrSelect" get-type="gda_tree_mgr_select_get_type">
+                       <constructor name="new" symbol="gda_tree_mgr_select_new">
+                               <return-type type="GdaTreeManager*"/>
+                               <parameters>
+                                       <parameter name="cnc" type="GdaConnection*"/>
+                                       <parameter name="stmt" type="GdaStatement*"/>
+                                       <parameter name="params" type="GdaSet*"/>
+                               </parameters>
+                       </constructor>
+                       <property name="connection" type="GdaConnection*" readable="1" writable="1" construct="0" construct-only="1"/>
+                       <property name="params" type="GdaSet*" readable="1" writable="1" construct="0" construct-only="1"/>
+                       <property name="statement" type="GdaStatement*" readable="1" writable="1" construct="0" construct-only="1"/>
+               </object>
+               <object name="GdaTreeMgrTables" parent="GdaTreeManager" type-name="GdaTreeMgrTables" get-type="gda_tree_mgr_tables_get_type">
+                       <constructor name="new" symbol="gda_tree_mgr_tables_new">
+                               <return-type type="GdaTreeManager*"/>
+                               <parameters>
+                                       <parameter name="cnc" type="GdaConnection*"/>
+                                       <parameter name="schema" type="gchar*"/>
+                               </parameters>
+                       </constructor>
+                       <property name="connection" type="GdaConnection*" readable="1" writable="1" construct="0" construct-only="1"/>
+                       <property name="meta-store" type="GdaMetaStore*" readable="1" writable="1" construct="0" construct-only="1"/>
+                       <property name="schema" type="char*" readable="0" writable="1" construct="0" construct-only="1"/>
+               </object>
+               <object name="GdaTreeNode" parent="GObject" type-name="GdaTreeNode" get-type="gda_tree_node_get_type">
+                       <method name="error_quark" symbol="gda_tree_node_error_quark">
+                               <return-type type="GQuark"/>
+                       </method>
+                       <method name="fetch_attribute" symbol="gda_tree_node_fetch_attribute">
+                               <return-type type="GValue*"/>
+                               <parameters>
+                                       <parameter name="node" type="GdaTreeNode*"/>
+                                       <parameter name="attribute" type="gchar*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_child_index" symbol="gda_tree_node_get_child_index">
+                               <return-type type="GdaTreeNode*"/>
+                               <parameters>
+                                       <parameter name="node" type="GdaTreeNode*"/>
+                                       <parameter name="index" type="gint"/>
+                               </parameters>
+                       </method>
+                       <method name="get_child_name" symbol="gda_tree_node_get_child_name">
+                               <return-type type="GdaTreeNode*"/>
+                               <parameters>
+                                       <parameter name="node" type="GdaTreeNode*"/>
+                                       <parameter name="name" type="gchar*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_children" symbol="gda_tree_node_get_children">
+                               <return-type type="GSList*"/>
+                               <parameters>
+                                       <parameter name="node" type="GdaTreeNode*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_node_attribute" symbol="gda_tree_node_get_node_attribute">
+                               <return-type type="GValue*"/>
+                               <parameters>
+                                       <parameter name="node" type="GdaTreeNode*"/>
+                                       <parameter name="attribute" type="gchar*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_parent" symbol="gda_tree_node_get_parent">
+                               <return-type type="GdaTreeNode*"/>
+                               <parameters>
+                                       <parameter name="node" type="GdaTreeNode*"/>
+                               </parameters>
+                       </method>
+                       <constructor name="new" symbol="gda_tree_node_new">
+                               <return-type type="GdaTreeNode*"/>
+                               <parameters>
+                                       <parameter name="name" type="gchar*"/>
+                               </parameters>
+                       </constructor>
+                       <method name="set_node_attribute" symbol="gda_tree_node_set_node_attribute">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="node" type="GdaTreeNode*"/>
+                                       <parameter name="attribute" type="gchar*"/>
+                                       <parameter name="value" type="GValue*"/>
+                                       <parameter name="destroy" type="GDestroyNotify"/>
+                               </parameters>
+                       </method>
+                       <property name="name" type="char*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <signal name="node-changed" when="LAST">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="reporting" type="GdaTreeNode*"/>
+                                       <parameter name="node" type="GdaTreeNode*"/>
+                               </parameters>
+                       </signal>
+                       <signal name="node-deleted" when="LAST">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="reporting" type="GdaTreeNode*"/>
+                                       <parameter name="relative_path" type="char*"/>
+                               </parameters>
+                       </signal>
+                       <signal name="node-has-child-toggled" when="LAST">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="reporting" type="GdaTreeNode*"/>
+                                       <parameter name="node" type="GdaTreeNode*"/>
+                               </parameters>
+                       </signal>
+                       <signal name="node-inserted" when="LAST">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="reporting" type="GdaTreeNode*"/>
+                                       <parameter name="node" type="GdaTreeNode*"/>
+                               </parameters>
+                       </signal>
+                       <vfunc name="dump_children">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="node" type="GdaTreeNode*"/>
+                                       <parameter name="prefix" type="gchar*"/>
+                                       <parameter name="in_string" type="GString*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="dump_header">
+                               <return-type type="gchar*"/>
+                               <parameters>
+                                       <parameter name="node" type="GdaTreeNode*"/>
+                               </parameters>
+                       </vfunc>
+               </object>
                <object name="GdaVconnectionDataModel" parent="GdaVirtualConnection" type-name="GdaVconnectionDataModel" get-type="gda_vconnection_data_model_get_type">
                        <implements>
                                <interface name="GdaLockable"/>
                        <method name="internal_get_provider_data" symbol="gda_virtual_connection_internal_get_provider_data">
                                <return-type type="gpointer"/>
                                <parameters>
-                                       <parameter name="cnc" type="GdaVirtualConnection*"/>
+                                       <parameter name="vcnc" type="GdaVirtualConnection*"/>
                                </parameters>
                        </method>
                        <method name="internal_set_provider_data" symbol="gda_virtual_connection_internal_set_provider_data">
                                        <parameter name="error" type="GError**"/>
                                </parameters>
                        </method>
+                       <method name="open_extended" symbol="gda_virtual_connection_open_extended">
+                               <return-type type="GdaConnection*"/>
+                               <parameters>
+                                       <parameter name="virtual_provider" type="GdaVirtualProvider*"/>
+                                       <parameter name="options" type="GdaConnectionOptions"/>
+                                       <parameter name="error" type="GError**"/>
+                               </parameters>
+                       </method>
                </object>
                <object name="GdaVirtualProvider" parent="GdaSqliteProvider" type-name="GdaVirtualProvider" get-type="gda_virtual_provider_get_type">
                </object>
                                        <parameter name="type" type="GType"/>
                                </parameters>
                        </method>
+                       <method name="get_default" symbol="gda_data_handler_get_default">
+                               <return-type type="GdaDataHandler*"/>
+                               <parameters>
+                                       <parameter name="for_type" type="GType"/>
+                               </parameters>
+                       </method>
                        <method name="get_descr" symbol="gda_data_handler_get_descr">
                                <return-type type="gchar*"/>
                                <parameters>
                                </parameters>
                        </vfunc>
                </interface>
-               <constant name="D_COL_ERR" type="char*" value="&#x1b;[;31;1m"/>
-               <constant name="D_COL_H0" type="char*" value="&#x1b;[;34;7m"/>
-               <constant name="D_COL_H1" type="char*" value="&#x1b;[;36;7m"/>
-               <constant name="D_COL_H2" type="char*" value="&#x1b;[;36;4m"/>
-               <constant name="D_COL_NOR" type="char*" value="&#x1b;[0m"/>
-               <constant name="D_COL_OK" type="char*" value="&#x1b;[;32m"/>
                <constant name="GDA_ATTRIBUTE_AUTO_INCREMENT" type="char*" value="__gda_attr_autoinc"/>
                <constant name="GDA_ATTRIBUTE_DESCRIPTION" type="char*" value="__gda_attr_descr"/>
                <constant name="GDA_ATTRIBUTE_IS_DEFAULT" type="char*" value="__gda_attr_is_default"/>
index 40160307b1338478be555e4caf5266dc452e4856..709ae3a5a4c6ae46119f191c8cdd6ecd6627a5f1 100644 (file)
@@ -40,12 +40,18 @@ gda_data_model_set_values.values type_arguments="GLib.Value"
 gda_data_model_bdb_get_errors type_arguments="GLib.Error"
 gda_data_model_import_get_errors type_arguments="GLib.Error"
 gda_data_proxy_get_values type_arguments="GLib.Value"
+GdaSqlError hidden="1"
 gda_lockable_lock virtual="1" vfunc_name="i_lock"
 gda_lockable_trylock virtual="1" vfunc_name="i_trylock"
 gda_lockable_unlock virtual="1" vfunc_name="i_unlock"
 GdaMetaStore::meta_changed.changes type_arguments="MetaStoreChange"
 gda_meta_struct_get_all_db_objects transfer_ownership="1" type_arguments="MetaDbObject"
 gda_set_new.holders type_arguments="Holder"
+GdaSqlBuilderId is_value_type="1" simple_type="1" base_type="uint" rank="7"
+gda_sql_builder_add_case ellipsis="1" sentinel=""
+gda_sql_builder_add_expr ellipsis="1" sentinel=""
+gda_sql_builder_add_field_value ellipsis="1" sentinel=""
+gda_sql_builder_add_function ellipsis="1" sentinel=""
 gda_sql_function_take_args_list.args transfer_ownership="1"
 gda_sql_parser_parse_string.remain is_out="1"
 gda_sql_statement_insert_take_1_values_list.list transfer_ownership="1" type_arguments="SqlExpr"
@@ -54,8 +60,11 @@ gda_sql_statement_select_take_expr_list.expr_list transfer_ownership="1" type_ar
 gda_sql_statement_select_take_group_by.group_by transfer_ownership="1" type_arguments="SqlExpr"
 gda_sql_statement_select_take_order_by.order_by transfer_ownership="1" type_arguments="SqlSelectOrder"
 gda_sql_statement_select_take_where_cond.expr transfer_ownership="1"
+gda_statement_to_sql_extended transfer_ownership="1"
+gda_statement_to_sql_extended.cnc nullable="1"
+gda_statement_to_sql_extended.params nullable="1"
+gda_statement_to_sql_extended.params_used nullable="1" type_arguments="Holder"
 gda_sql_statement_unknown_take_expressions.expressions transfer_ownership="1" type_arguments="SqlExpr"
-gda_statement_to_sql_extended.params_used type_arguments="Holder"
 xmlNodePtr name="Node" namespace="Xml"
 GdaDataModelAccessFlags hidden="1"
 GdaMetaStructFeature hidden="1"