[libgda] Updating DbRecord interfaces. Updating GIR/VAPI bindings.
- From: Daniel Espinosa Ortiz <despinosa src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [libgda] Updating DbRecord interfaces. Updating GIR/VAPI bindings.
- Date: Sun, 8 Jan 2012 05:07:24 +0000 (UTC)
commit dde84e41c962e21dcf37ba1796ee2e663f8dc446
Author: Daniel Espinosa <despinosa src gnome org>
Date: Sat Jan 7 23:03:37 2012 -0600
Updating DbRecord interfaces. Updating GIR/VAPI bindings.
libgda/Gda-5.0.gir | 19 ++++++++
libgda/data/DbRecord.vala | 9 ++--
libgda/data/GdaData-5.0.gir | 104 +++++++++++++++++++++++++++++--------------
libgda/data/Record.vala | 42 +++++++++--------
libgda/libgda-5.0.vapi | 2 +
5 files changed, 119 insertions(+), 57 deletions(-)
---
diff --git a/libgda/Gda-5.0.gir b/libgda/Gda-5.0.gir
index b1de661..7a745d1 100644
--- a/libgda/Gda-5.0.gir
+++ b/libgda/Gda-5.0.gir
@@ -23439,6 +23439,25 @@ can also be used in hash tables as a #GEqualFunc.</doc>
</parameter>
</parameters>
</function>
+ <function name="modify_statement_param_types"
+ c:identifier="gda_modify_statement_param_types"
+ version="5.2">
+ <doc xml:whitespace="preserve">Modifies the parameters in @stmt which will be mapped to columns in @model (using the +&lt;colindex&gt; or
+-&lt;colindex&gt; syntax) to map the column types of @model.</doc>
+ <return-value transfer-ownership="none">
+ <type name="none" c:type="void"/>
+ </return-value>
+ <parameters>
+ <parameter name="stmt" transfer-ownership="none">
+ <doc xml:whitespace="preserve">a #GdaStatement</doc>
+ <type name="Statement" c:type="GdaStatement*"/>
+ </parameter>
+ <parameter name="model" transfer-ownership="none">
+ <doc xml:whitespace="preserve">a #GdaDataModel</doc>
+ <type name="DataModel" c:type="GdaDataModel*"/>
+ </parameter>
+ </parameters>
+ </function>
<function name="mutex_new"
c:identifier="gda_mutex_new"
moved-to="Mutex.new"
diff --git a/libgda/data/DbRecord.vala b/libgda/data/DbRecord.vala
index 7d272ec..88b5970 100644
--- a/libgda/data/DbRecord.vala
+++ b/libgda/data/DbRecord.vala
@@ -30,9 +30,10 @@ namespace GdaData
/**
* Returns a GLib.Value containing the value stored in the given field.
*/
- public abstract G get_value (string field) throws Error;
- public abstract void set_field (string field, Value? v) throws Error;
- public abstract void set_key (string field, G v) throws Error;
- public abstract DbField<G> get_field (string field) throws Error;
+ public abstract G get_value (string name) throws Error;
+ public abstract void set_field (DbField<G> field) throws Error;
+ public abstract DbField<G> get_field (string name) throws Error;
+ public abstract void set_key (DbField<G> field) throws Error;
+ public abstract DbField<G> get_key (string name) throws Error;
}
}
diff --git a/libgda/data/GdaData-5.0.gir b/libgda/data/GdaData-5.0.gir
index 3699e15..1bb6255 100644
--- a/libgda/data/GdaData-5.0.gir
+++ b/libgda/data/GdaData-5.0.gir
@@ -419,7 +419,7 @@
<prerequisite name="Gee.Comparable"/>
<method name="get_value" c:identifier="gda_data_db_record_get_value" throws="1">
<parameters>
- <parameter name="field" transfer-ownership="none">
+ <parameter name="name" transfer-ownership="none">
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
@@ -429,7 +429,7 @@
</method>
<virtual-method name="get_value" invoker="get_value" throws="1">
<parameters>
- <parameter name="field" transfer-ownership="none">
+ <parameter name="name" transfer-ownership="none">
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
@@ -440,10 +440,9 @@
<method name="set_field" c:identifier="gda_data_db_record_set_field" throws="1">
<parameters>
<parameter name="field" transfer-ownership="none">
- <type name="utf8" c:type="const gchar*"/>
- </parameter>
- <parameter name="v" transfer-ownership="none" allow-none="1">
- <type name="GObject.Value" c:type="GValue*"/>
+ <type name="GdaData.DbField" c:type="GdaDataDbField*">
+ <type name="gpointer" c:type="gpointer"/>
+ </type>
</parameter>
</parameters>
<return-value transfer-ownership="full">
@@ -453,23 +452,45 @@
<virtual-method name="set_field" invoker="set_field" throws="1">
<parameters>
<parameter name="field" transfer-ownership="none">
- <type name="utf8" c:type="const gchar*"/>
- </parameter>
- <parameter name="v" transfer-ownership="none" allow-none="1">
- <type name="GObject.Value" c:type="GValue*"/>
+ <type name="GdaData.DbField" c:type="GdaDataDbField*">
+ <type name="gpointer" c:type="gpointer"/>
+ </type>
</parameter>
</parameters>
<return-value transfer-ownership="full">
<type name="none"/>
</return-value>
</virtual-method>
- <method name="set_key" c:identifier="gda_data_db_record_set_key" throws="1">
+ <method name="get_field" c:identifier="gda_data_db_record_get_field" throws="1">
<parameters>
- <parameter name="field" transfer-ownership="none">
+ <parameter name="name" transfer-ownership="none">
<type name="utf8" c:type="const gchar*"/>
</parameter>
- <parameter name="v" transfer-ownership="none" allow-none="1">
+ </parameters>
+ <return-value transfer-ownership="full">
+ <type name="GdaData.DbField" c:type="GdaDataDbField*">
<type name="gpointer" c:type="gpointer"/>
+ </type>
+ </return-value>
+ </method>
+ <virtual-method name="get_field" invoker="get_field" throws="1">
+ <parameters>
+ <parameter name="name" transfer-ownership="none">
+ <type name="utf8" c:type="const gchar*"/>
+ </parameter>
+ </parameters>
+ <return-value transfer-ownership="full">
+ <type name="GdaData.DbField" c:type="GdaDataDbField*">
+ <type name="gpointer" c:type="gpointer"/>
+ </type>
+ </return-value>
+ </virtual-method>
+ <method name="set_key" c:identifier="gda_data_db_record_set_key" throws="1">
+ <parameters>
+ <parameter name="field" transfer-ownership="none">
+ <type name="GdaData.DbField" c:type="GdaDataDbField*">
+ <type name="gpointer" c:type="gpointer"/>
+ </type>
</parameter>
</parameters>
<return-value transfer-ownership="full">
@@ -479,19 +500,18 @@
<virtual-method name="set_key" invoker="set_key" throws="1">
<parameters>
<parameter name="field" transfer-ownership="none">
- <type name="utf8" c:type="const gchar*"/>
- </parameter>
- <parameter name="v" transfer-ownership="none" allow-none="1">
- <type name="gpointer" c:type="gpointer"/>
+ <type name="GdaData.DbField" c:type="GdaDataDbField*">
+ <type name="gpointer" c:type="gpointer"/>
+ </type>
</parameter>
</parameters>
<return-value transfer-ownership="full">
<type name="none"/>
</return-value>
</virtual-method>
- <method name="get_field" c:identifier="gda_data_db_record_get_field" throws="1">
+ <method name="get_key" c:identifier="gda_data_db_record_get_key" throws="1">
<parameters>
- <parameter name="field" transfer-ownership="none">
+ <parameter name="name" transfer-ownership="none">
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
@@ -501,9 +521,9 @@
</type>
</return-value>
</method>
- <virtual-method name="get_field" invoker="get_field" throws="1">
+ <virtual-method name="get_key" invoker="get_key" throws="1">
<parameters>
- <parameter name="field" transfer-ownership="none">
+ <parameter name="name" transfer-ownership="none">
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
@@ -543,7 +563,7 @@
<parameter name="self" transfer-ownership="none">
<type name="GdaData.DbRecord" c:type="GdaDataDbRecord*"/>
</parameter>
- <parameter name="field" transfer-ownership="none">
+ <parameter name="name" transfer-ownership="none">
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
@@ -559,10 +579,9 @@
<type name="GdaData.DbRecord" c:type="GdaDataDbRecord*"/>
</parameter>
<parameter name="field" transfer-ownership="none">
- <type name="utf8" c:type="const gchar*"/>
- </parameter>
- <parameter name="v" transfer-ownership="none" allow-none="1">
- <type name="GObject.Value" c:type="GValue*"/>
+ <type name="GdaData.DbField" c:type="GdaDataDbField*">
+ <type name="gpointer" c:type="gpointer"/>
+ </type>
</parameter>
</parameters>
<return-value transfer-ownership="full">
@@ -570,17 +589,33 @@
</return-value>
</callback>
</field>
- <field name="set_key">
- <callback name="set_key" c:type="set_key" throws="1">
+ <field name="get_field">
+ <callback name="get_field" c:type="get_field" throws="1">
<parameters>
<parameter name="self" transfer-ownership="none">
<type name="GdaData.DbRecord" c:type="GdaDataDbRecord*"/>
</parameter>
- <parameter name="field" transfer-ownership="none">
+ <parameter name="name" transfer-ownership="none">
<type name="utf8" c:type="const gchar*"/>
</parameter>
- <parameter name="v" transfer-ownership="none" allow-none="1">
+ </parameters>
+ <return-value transfer-ownership="full">
+ <type name="GdaData.DbField" c:type="GdaDataDbField*">
<type name="gpointer" c:type="gpointer"/>
+ </type>
+ </return-value>
+ </callback>
+ </field>
+ <field name="set_key">
+ <callback name="set_key" c:type="set_key" throws="1">
+ <parameters>
+ <parameter name="self" transfer-ownership="none">
+ <type name="GdaData.DbRecord" c:type="GdaDataDbRecord*"/>
+ </parameter>
+ <parameter name="field" transfer-ownership="none">
+ <type name="GdaData.DbField" c:type="GdaDataDbField*">
+ <type name="gpointer" c:type="gpointer"/>
+ </type>
</parameter>
</parameters>
<return-value transfer-ownership="full">
@@ -588,13 +623,13 @@
</return-value>
</callback>
</field>
- <field name="get_field">
- <callback name="get_field" c:type="get_field" throws="1">
+ <field name="get_key">
+ <callback name="get_key" c:type="get_key" throws="1">
<parameters>
<parameter name="self" transfer-ownership="none">
<type name="GdaData.DbRecord" c:type="GdaDataDbRecord*"/>
</parameter>
- <parameter name="field" transfer-ownership="none">
+ <parameter name="name" transfer-ownership="none">
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
@@ -699,6 +734,9 @@
<prerequisite name="Gee.Traversable"/>
<prerequisite name="Gee.Iterable"/>
<prerequisite name="Gee.Collection"/>
+ <property name="connection" writable="1">
+ <type name="Gda.Connection" c:type="GdaConnection*"/>
+ </property>
<property name="table">
<type name="GdaData.DbTable" c:type="GdaDataDbTable*">
<type name="gpointer" c:type="gpointer"/>
diff --git a/libgda/data/Record.vala b/libgda/data/Record.vala
index 43bd7f4..5133e16 100644
--- a/libgda/data/Record.vala
+++ b/libgda/data/Record.vala
@@ -51,41 +51,43 @@ namespace GdaData {
/**
* Set the value to a field with the given @name.
*/
- public void set_field (string field, Value? v)
- throws Error
+ public void set_field (DbField<Value?> field) throws Error
{
- if (_fields.has_key (field)) {
- var f = this._fields.get (field);
- f.value = v;
- this._fields.set (field, f);
+ if (_fields.has_key (field.name)) {
+ var f = this._fields.get (field.name);
+ f.value = field.value;
+ this._fields.set (field.name, f);
}
else {
// FIXME: Get default attributes from table
- var n = new Field<Value?> (field, DbField.Attribute.NONE);
+ var n = new Field<Value?> (field.name, DbField.Attribute.NONE);
n.connection = connection;
- n.value = v;
- this._fields.set (field, n);
+ n.value = field.value;
+ this._fields.set (field.name, n);
}
}
-
- public void set_key (string field, Value? v)
+ public DbField<Value?> get_field (string name) throws Error
+ {
+ return _fields.get (name);
+ }
+ public void set_key (DbField<Value?> field)
{
- if (_keys.has_key (field)) {
- var f = _keys.get (field);
- f.value = v;
- _keys.set (field, f);
+ if (_keys.has_key (field.name)) {
+ var f = _keys.get (field.name);
+ f.value = field.value;
+ _keys.set (field.name, f);
}
else {
// FIXME: Get default attributes from table
- var n = new Field<Value?> (field, DbField.Attribute.NONE);
- n.value = v;
- _keys.set (field, n);
+ var n = new Field<Value?> (field.name, DbField.Attribute.NONE);
+ n.value = field.value;
+ _keys.set (field.name, n);
}
}
- public DbField<Value?> get_field (string field) throws Error
+ public DbField<Value?> get_key (string name) throws Error
{
- return _fields.get (field);
+ return _keys.get (name);
}
/**
* Saves any modficiation made to in memory representation of the data directly to
diff --git a/libgda/libgda-5.0.vapi b/libgda/libgda-5.0.vapi
index 82d47ac..65049ad 100644
--- a/libgda/libgda-5.0.vapi
+++ b/libgda/libgda-5.0.vapi
@@ -2031,6 +2031,8 @@ namespace Gda {
[CCode (cheader_filename = "libgda/libgda.h")]
public static bool log_is_enabled ();
[CCode (cheader_filename = "libgda/libgda.h")]
+ public static void modify_statement_param_types (Gda.Statement stmt, Gda.DataModel model);
+ [CCode (cheader_filename = "libgda/libgda.h")]
public static bool parse_iso8601_date (GLib.Date gdate, string value);
[CCode (cheader_filename = "libgda/libgda.h")]
public static bool parse_iso8601_time (Gda.Time timegda, string value);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]