[libgdamm] DataModelIter::get_value_at(): Throw an exception sometimes.
- From: Murray Cumming <murrayc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [libgdamm] DataModelIter::get_value_at(): Throw an exception sometimes.
- Date: Mon, 10 Oct 2011 20:34:56 +0000 (UTC)
commit 3fa381df4a39f00706ff5dec2e2486596ef759ff
Author: Murray Cumming <murrayc murrayc com>
Date: Mon Oct 10 22:30:13 2011 +0200
DataModelIter::get_value_at(): Throw an exception sometimes.
* libgda/src/libgda_methods.defs: Regenerated with h2defs.py.
* libgda/src/datamodeliter.hg: Use the new
gda_data_model_iter_get_value_at_e() instead of
gda_data_model_iter_get_value_at(). Presumably this lets us catch more
problems.
* libgda/src/holder.hg:
* libgda/src/row.hg: Ignore some other new methods, with comments.
ChangeLog | 12 ++
libgda/src/datamodeliter.hg | 4 +-
libgda/src/holder.hg | 7 ++
libgda/src/libgda_methods.defs | 224 ++++++++++++++++++++++++++++++++++++++++
libgda/src/row.hg | 2 +-
5 files changed, 247 insertions(+), 2 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index 9f040cb..5079518 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+2011-10-10 Murray Cumming <murrayc murrayc com>
+
+ DataModelIter::get_value_at(): Throw an exception sometimes.
+
+ * libgda/src/libgda_methods.defs: Regenerated with h2defs.py.
+ * libgda/src/datamodeliter.hg: Use the new
+ gda_data_model_iter_get_value_at_e() instead of
+ gda_data_model_iter_get_value_at(). Presumably this lets us catch more
+ problems.
+ * libgda/src/holder.hg:
+ * libgda/src/row.hg: Ignore some other new methods, with comments.
+
4.99.4.1:
2011-09-21 Murray Cumming <murrayc murrayc com>
diff --git a/libgda/src/datamodeliter.hg b/libgda/src/datamodeliter.hg
index e1ba3c6..035d233 100644
--- a/libgda/src/datamodeliter.hg
+++ b/libgda/src/datamodeliter.hg
@@ -83,7 +83,9 @@ public:
_WRAP_METHOD(Glib::RefPtr<Holder> get_holder_for_field(int col), gda_data_model_iter_get_holder_for_field, refreturn)
_WRAP_METHOD(Glib::RefPtr<const Holder> get_holder_for_field(int col) const, gda_data_model_iter_get_holder_for_field, refreturn)
- _WRAP_METHOD(Value get_value_at(int col) const, gda_data_model_iter_get_value_at)
+ _WRAP_METHOD(Value get_value_at(int col) const, gda_data_model_iter_get_value_at_e, errthrow)
+ _IGNORE(gda_data_model_iter_get_value_at)
+
_WRAP_METHOD(Value get_value_for_field(const Glib::ustring& field_name) const, gda_data_model_iter_get_value_for_field)
_WRAP_METHOD(bool set_value_at(int col, const Value& value), gda_data_model_iter_set_value_at, errthrow)
diff --git a/libgda/src/holder.hg b/libgda/src/holder.hg
index f399456..fe4ac04 100644
--- a/libgda/src/holder.hg
+++ b/libgda/src/holder.hg
@@ -81,7 +81,14 @@ public:
_WRAP_METHOD(bool value_is_default() const, gda_holder_value_is_default)
_WRAP_METHOD(void force_invalid(), gda_holder_force_invalid)
+ _IGNORE(gda_holder_force_invalid_e)
+ //TODO: gda_holder_force_invalid_e() is a way to _set_ an error, not throw an error.
+ //The error is later returned by gda_holder_is_valid_e(). We can probably ignore it.
+
_WRAP_METHOD(bool is_valid() const, gda_holder_is_valid)
+ _IGNORE(gda_holder_is_valid_e)
+ //Ignore gda_holder_is_valid_e() because throwing an exception would be odd for an is_*() method.
+
_WRAP_METHOD(void set_not_null(bool not_null = true), gda_holder_set_not_null)
_WRAP_METHOD(bool get_not_null() const, gda_holder_get_not_null)
diff --git a/libgda/src/libgda_methods.defs b/libgda/src/libgda_methods.defs
index ac66dad..5d47bc4 100644
--- a/libgda/src/libgda_methods.defs
+++ b/libgda/src/libgda_methods.defs
@@ -103,6 +103,13 @@
(gtype-id "GDA_TYPE_DATA_MODEL_LDAP")
)
+(define-object DataPivot
+ (in-module "Gda")
+ (parent "GObject")
+ (c-name "GdaDataPivot")
+ (gtype-id "GDA_TYPE_DATA_PIVOT")
+)
+
(define-object DataProxy
(in-module "Gda")
(parent "GObject")
@@ -406,6 +413,7 @@
'("task-not-found-error" "GDA_CONNECTION_TASK_NOT_FOUND_ERROR")
'("unsupported-threads-error" "GDA_CONNECTION_UNSUPPORTED_THREADS_ERROR")
'("closed-error" "GDA_CONNECTION_CLOSED_ERROR")
+ '("meta-data-context-error" "GDA_CONNECTION_META_DATA_CONTEXT_ERROR")
)
)
@@ -562,6 +570,42 @@
)
)
+(define-enum DataPivotError
+ (in-module "Gda")
+ (c-name "GdaDataPivotError")
+ (gtype-id "GDA_TYPE_DATA_PIVOT_ERROR")
+ (values
+ '("internal-error" "GDA_DATA_PIVOT_INTERNAL_ERROR")
+ '("source-model-error" "GDA_DATA_PIVOT_SOURCE_MODEL_ERROR")
+ '("field-format-error" "GDA_DATA_PIVOT_FIELD_FORMAT_ERROR")
+ '("usage-error" "GDA_DATA_PIVOT_USAGE_ERROR")
+ '("overflow-error" "GDA_DATA_PIVOT_OVERFLOW_ERROR")
+ )
+)
+
+(define-enum DataPivotAggregate
+ (in-module "Gda")
+ (c-name "GdaDataPivotAggregate")
+ (gtype-id "GDA_TYPE_DATA_PIVOT_AGGREGATE")
+ (values
+ '("avg" "GDA_DATA_PIVOT_AVG")
+ '("count" "GDA_DATA_PIVOT_COUNT")
+ '("max" "GDA_DATA_PIVOT_MAX")
+ '("min" "GDA_DATA_PIVOT_MIN")
+ '("sum" "GDA_DATA_PIVOT_SUM")
+ )
+)
+
+(define-enum DataPivotFieldType
+ (in-module "Gda")
+ (c-name "GdaDataPivotFieldType")
+ (gtype-id "GDA_TYPE_DATA_PIVOT_FIELD_TYPE")
+ (values
+ '("row" "GDA_DATA_PIVOT_FIELD_ROW")
+ '("column" "GDA_DATA_PIVOT_FIELD_COLUMN")
+ )
+)
+
(define-enum DataProxyError
(in-module "Gda")
(c-name "GdaDataProxyError")
@@ -589,6 +633,16 @@
)
)
+(define-enum DataSelectConditionType
+ (in-module "Gda")
+ (c-name "GdaDataSelectConditionType")
+ (gtype-id "GDA_TYPE_DATA_SELECT_CONDITION_TYPE")
+ (values
+ '("pk" "GDA_DATA_SELECT_COND_PK")
+ '("all-columns" "GDA_DATA_SELECT_COND_ALL_COLUMNS")
+ )
+)
+
(define-enum TransactionIsolation
(in-module "Gda")
(c-name "GdaTransactionIsolation")
@@ -681,6 +735,7 @@
'("unknown-object-error" "GDA_META_STRUCT_UNKNOWN_OBJECT_ERROR")
'("duplicate-object-error" "GDA_META_STRUCT_DUPLICATE_OBJECT_ERROR")
'("incoherence-error" "GDA_META_STRUCT_INCOHERENCE_ERROR")
+ '("xml-error" "GDA_META_STRUCT_XML_ERROR")
)
)
@@ -773,6 +828,7 @@
(values
'("object-name-error" "GDA_SERVER_OPERATION_OBJECT_NAME_ERROR")
'("incorrect-value-error" "GDA_SERVER_OPERATION_INCORRECT_VALUE_ERROR")
+ '("xml-error" "GDA_SERVER_OPERATION_XML_ERROR")
)
)
@@ -834,6 +890,8 @@
'("server-version-error" "GDA_SERVER_PROVIDER_SERVER_VERSION_ERROR")
'("data-error" "GDA_SERVER_PROVIDER_DATA_ERROR")
'("default-value-handling-error" "GDA_SERVER_PROVIDER_DEFAULT_VALUE_HANDLING_ERROR")
+ '("misuse-error" "GDA_SERVER_PROVIDER_MISUSE_ERROR")
+ '("file-not-found-error" "GDA_SERVER_PROVIDER_FILE_NOT_FOUND_ERROR")
)
)
@@ -846,6 +904,7 @@
'("holder-not-found-error" "GDA_SET_HOLDER_NOT_FOUND_ERROR")
'("invalid-error" "GDA_SET_INVALID_ERROR")
'("read-only-error" "GDA_SET_READ_ONLY_ERROR")
+ '("implementation-error" "GDA_SET_IMPLEMENTATION_ERROR")
)
)
@@ -1109,6 +1168,7 @@
'("bitand" "GDA_SQL_OPERATOR_TYPE_BITAND")
'("bitor" "GDA_SQL_OPERATOR_TYPE_BITOR")
'("bitnot" "GDA_SQL_OPERATOR_TYPE_BITNOT")
+ '("ilike" "GDA_SQL_OPERATOR_TYPE_ILIKE")
)
)
@@ -3089,6 +3149,16 @@
)
)
+(define-method get_value_at_e
+ (of-object "GdaDataModelIter")
+ (c-name "gda_data_model_iter_get_value_at_e")
+ (return-type "const-GValue*")
+ (parameters
+ '("gint" "col")
+ '("GError**" "error")
+ )
+)
+
(define-method get_value_for_field
(of-object "GdaDataModelIter")
(c-name "gda_data_model_iter_get_value_for_field")
@@ -3204,6 +3274,57 @@
+;; From gda-data-pivot.h
+
+(define-function gda_data_pivot_get_type
+ (c-name "gda_data_pivot_get_type")
+ (return-type "GType")
+)
+
+(define-function gda_data_pivot_new
+ (c-name "gda_data_pivot_new")
+ (is-constructor-of "GdaDataPivot")
+ (return-type "GdaDataModel*")
+ (parameters
+ '("GdaDataModel*" "model")
+ )
+)
+
+(define-method add_field
+ (of-object "GdaDataPivot")
+ (c-name "gda_data_pivot_add_field")
+ (return-type "gboolean")
+ (parameters
+ '("GdaDataPivotFieldType" "field_type")
+ '("const-gchar*" "field")
+ '("const-gchar*" "alias")
+ '("GError**" "error")
+ )
+)
+
+(define-method add_data
+ (of-object "GdaDataPivot")
+ (c-name "gda_data_pivot_add_data")
+ (return-type "gboolean")
+ (parameters
+ '("GdaDataPivotAggregate" "aggregate_type")
+ '("const-gchar*" "field")
+ '("const-gchar*" "alias")
+ '("GError**" "error")
+ )
+)
+
+(define-method populate
+ (of-object "GdaDataPivot")
+ (c-name "gda_data_pivot_populate")
+ (return-type "gboolean")
+ (parameters
+ '("GError**" "error")
+ )
+)
+
+
+
;; From gda-data-proxy.h
(define-function gda_data_proxy_get_type
@@ -3518,6 +3639,16 @@
)
)
+(define-method compute_modification_statements_ext
+ (of-object "GdaDataSelect")
+ (c-name "gda_data_select_compute_modification_statements_ext")
+ (return-type "gboolean")
+ (parameters
+ '("GdaDataSelectConditionType" "cond_type")
+ '("GError**" "error")
+ )
+)
+
(define-method compute_columns_attributes
(of-object "GdaDataSelect")
(c-name "gda_data_select_compute_columns_attributes")
@@ -3648,6 +3779,11 @@
(return-type "GType")
)
+(define-function gda_data_select_condition_type_get_type
+ (c-name "gda_data_select_condition_type_get_type")
+ (return-type "GType")
+)
+
(define-function gda_transaction_isolation_get_type
(c-name "gda_transaction_isolation_get_type")
(return-type "GType")
@@ -3793,6 +3929,21 @@
(return-type "GType")
)
+(define-function gda_data_pivot_error_get_type
+ (c-name "gda_data_pivot_error_get_type")
+ (return-type "GType")
+)
+
+(define-function gda_data_pivot_aggregate_get_type
+ (c-name "gda_data_pivot_aggregate_get_type")
+ (return-type "GType")
+)
+
+(define-function gda_data_pivot_field_type_get_type
+ (c-name "gda_data_pivot_field_type_get_type")
+ (return-type "GType")
+)
+
;; From gda-holder.h
@@ -3929,12 +4080,30 @@
(return-type "none")
)
+(define-method force_invalid_e
+ (of-object "GdaHolder")
+ (c-name "gda_holder_force_invalid_e")
+ (return-type "none")
+ (parameters
+ '("GError*" "error")
+ )
+)
+
(define-method is_valid
(of-object "GdaHolder")
(c-name "gda_holder_is_valid")
(return-type "gboolean")
)
+(define-method is_valid_e
+ (of-object "GdaHolder")
+ (c-name "gda_holder_is_valid_e")
+ (return-type "gboolean")
+ (parameters
+ '("GError**" "error")
+ )
+)
+
(define-method set_not_null
(of-object "GdaHolder")
(c-name "gda_holder_set_not_null")
@@ -4677,6 +4846,16 @@
)
)
+(define-method invalidate_value_e
+ (of-object "GdaRow")
+ (c-name "gda_row_invalidate_value_e")
+ (return-type "none")
+ (parameters
+ '("GValue*" "value")
+ '("GError*" "error")
+ )
+)
+
(define-method value_is_valid
(of-object "GdaRow")
(c-name "gda_row_value_is_valid")
@@ -4686,6 +4865,16 @@
)
)
+(define-method value_is_valid_e
+ (of-object "GdaRow")
+ (c-name "gda_row_value_is_valid_e")
+ (return-type "gboolean")
+ (parameters
+ '("GValue*" "value")
+ '("GError**" "error")
+ )
+)
+
;; From gda-server-operation.h
@@ -6569,6 +6758,28 @@
)
)
+(define-function gda_rewrite_sql_statement_for_null_parameters
+ (c-name "gda_rewrite_sql_statement_for_null_parameters")
+ (return-type "GdaSqlStatement*")
+ (parameters
+ '("GdaSqlStatement*" "sqlst")
+ '("GdaSet*" "params")
+ '("gboolean*" "out_modified")
+ '("GError**" "error")
+ )
+)
+
+(define-function gda_rewrite_statement_for_null_parameters
+ (c-name "gda_rewrite_statement_for_null_parameters")
+ (return-type "gboolean")
+ (parameters
+ '("GdaStatement*" "stmt")
+ '("GdaSet*" "params")
+ '("GdaStatement**" "out_stmt")
+ '("GError**" "error")
+ )
+)
+
(define-function gda_rfc1738_encode
(c-name "gda_rfc1738_encode")
(return-type "gchar*")
@@ -6653,6 +6864,14 @@
(return-type "GValue*")
)
+(define-function gda_value_new_default
+ (c-name "gda_value_new_default")
+ (return-type "GValue*")
+ (parameters
+ '("const-gchar*" "default_val")
+ )
+)
+
(define-function gda_value_new_binary
(c-name "gda_value_new_binary")
(return-type "GValue*")
@@ -6999,6 +7218,11 @@
(return-type "GType")
)
+(define-function gda_default_get_type
+ (c-name "gda_default_get_type")
+ (return-type "GType")
+)
+
(define-function gda_numeric_get_type
(c-name "gda_numeric_get_type")
(return-type "GType")
diff --git a/libgda/src/row.hg b/libgda/src/row.hg
index e84bfad..b38048d 100644
--- a/libgda/src/row.hg
+++ b/libgda/src/row.hg
@@ -52,7 +52,7 @@ protected:
public:
// Docs say this is mainly for providers
- _IGNORE(gda_row_invalidate_value, gda_row_value_is_valid)
+ _IGNORE(gda_row_invalidate_value, gda_row_invalidate_value_e, gda_row_value_is_valid)
_WRAP_CREATE(int count)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]