[libgda] GdaWebProvider: ported to G_DECLARE/G_DEFINE
- From: Daniel Espinosa Ortiz <despinosa src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [libgda] GdaWebProvider: ported to G_DECLARE/G_DEFINE
- Date: Fri, 5 Apr 2019 23:01:07 +0000 (UTC)
commit 36e8fb5c83bb97e780ba164d8e009ca359d60977
Author: Daniel Espinosa <esodan gmail com>
Date: Fri Apr 5 14:33:41 2019 -0600
GdaWebProvider: ported to G_DECLARE/G_DEFINE
providers/web/gda-web-provider.c | 43 ++++++----------------------------------
providers/web/gda-web-provider.h | 12 +----------
2 files changed, 7 insertions(+), 48 deletions(-)
---
diff --git a/providers/web/gda-web-provider.c b/providers/web/gda-web-provider.c
index a7891f24d..759fd44f6 100644
--- a/providers/web/gda-web-provider.c
+++ b/providers/web/gda-web-provider.c
@@ -46,9 +46,9 @@
* GObject methods
*/
static void gda_web_provider_class_init (GdaWebProviderClass *klass);
-static void gda_web_provider_init (GdaWebProvider *provider,
- GdaWebProviderClass *klass);
-static GObjectClass *parent_class = NULL;
+static void gda_web_provider_init (GdaWebProvider *provider);
+
+G_DEFINE_TYPE(GdaWebProvider, gda_web_provider, GDA_TYPE_SERVER_PROVIDER)
/*
* GdaServerProvider's virtual methods
@@ -210,8 +210,6 @@ GdaServerProviderMeta web_meta_functions = {
static void
gda_web_provider_class_init (GdaWebProviderClass *klass)
{
- parent_class = g_type_class_peek_parent (klass);
-
/* set virtual functions */
gda_server_provider_set_impl_functions (GDA_SERVER_PROVIDER_CLASS (klass),
GDA_SERVER_PROVIDER_FUNCTIONS_BASE,
@@ -227,37 +225,10 @@ gda_web_provider_class_init (GdaWebProviderClass *klass)
}
static void
-gda_web_provider_init (G_GNUC_UNUSED GdaWebProvider *web_prv, G_GNUC_UNUSED GdaWebProviderClass *klass)
+gda_web_provider_init (G_GNUC_UNUSED GdaWebProvider *web_prv)
{
}
-GType
-gda_web_provider_get_type (void)
-{
- static GType type = 0;
-
- if (G_UNLIKELY (type == 0)) {
- static GMutex registering;
- static GTypeInfo info = {
- sizeof (GdaWebProviderClass),
- (GBaseInitFunc) NULL,
- (GBaseFinalizeFunc) NULL,
- (GClassInitFunc) gda_web_provider_class_init,
- NULL, NULL,
- sizeof (GdaWebProvider),
- 0,
- (GInstanceInitFunc) gda_web_provider_init,
- 0
- };
- g_mutex_lock (®istering);
- if (type == 0)
- type = g_type_register_static (GDA_TYPE_SERVER_PROVIDER, "GdaWebProvider", &info, 0);
- g_mutex_unlock (®istering);
- }
-
- return type;
-}
-
static GdaWorker *
gda_web_provider_create_worker (GdaServerProvider *provider, gboolean for_cnc)
{
@@ -1249,8 +1220,7 @@ gda_web_provider_statement_prepare (GdaServerProvider *provider, GdaConnection *
else {
g_set_error (error, GDA_SERVER_PROVIDER_ERROR,
GDA_SERVER_PROVIDER_PREPARE_STMT_ERROR,
"%s", _("Unnamed parameter is not allowed in prepared
statements"));
- g_slist_foreach (param_ids, (GFunc) g_free, NULL);
- g_slist_free (param_ids);
+ g_slist_free_full (param_ids, (GDestroyNotify) g_free);
goto out;
}
}
@@ -1586,8 +1556,7 @@ gda_web_provider_statement_execute (GdaServerProvider *provider, GdaConnection *
col_types,
last_inserted_row, error);
/* clear original @param_ids and restore copied one */
- g_slist_foreach (prep_param_ids, (GFunc) g_free, NULL);
- g_slist_free (prep_param_ids);
+ g_slist_free_full (prep_param_ids, (GDestroyNotify) g_free);
gda_pstmt_set_param_ids (gtps, copied_param_ids);
diff --git a/providers/web/gda-web-provider.h b/providers/web/gda-web-provider.h
index d9175a951..d098280ca 100644
--- a/providers/web/gda-web-provider.h
+++ b/providers/web/gda-web-provider.h
@@ -27,17 +27,8 @@
#include <libgda/gda-server-provider.h>
#define GDA_TYPE_WEB_PROVIDER (gda_web_provider_get_type())
-#define GDA_WEB_PROVIDER(obj) (G_TYPE_CHECK_INSTANCE_CAST (obj, GDA_TYPE_WEB_PROVIDER,
GdaWebProvider))
-#define GDA_WEB_PROVIDER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST (klass, GDA_TYPE_WEB_PROVIDER,
GdaWebProviderClass))
-#define GDA_IS_WEB_PROVIDER(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GDA_TYPE_WEB_PROVIDER))
-#define GDA_IS_WEB_PROVIDER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GDA_TYPE_WEB_PROVIDER))
-typedef struct _GdaWebProvider GdaWebProvider;
-typedef struct _GdaWebProviderClass GdaWebProviderClass;
-
-struct _GdaWebProvider {
- GdaServerProvider provider;
-};
+G_DECLARE_DERIVABLE_TYPE(GdaWebProvider, gda_web_provider, GDA, WEB_PROVIDER, GdaServerProvider)
struct _GdaWebProviderClass {
GdaServerProviderClass parent_class;
@@ -45,7 +36,6 @@ struct _GdaWebProviderClass {
G_BEGIN_DECLS
-GType gda_web_provider_get_type (void) G_GNUC_CONST;
G_END_DECLS
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]