[evolution-data-server/camel-gobject: 205/331] Use thread-safe G_DEFINE_TYPE macros.
- From: Matthew Barnes <mbarnes src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evolution-data-server/camel-gobject: 205/331] Use thread-safe G_DEFINE_TYPE macros.
- Date: Thu, 1 Apr 2010 03:22:59 +0000 (UTC)
commit c440b4255f28269e34697fbdb804166dfe6d98a0
Author: Matthew Barnes <mbarnes redhat com>
Date: Sun Feb 28 14:21:08 2010 -0500
Use thread-safe G_DEFINE_TYPE macros.
camel/camel-address.c | 28 +----
camel/camel-block-file.c | 60 ++---------
camel/camel-certdb.c | 27 +----
camel/camel-cipher-context.c | 29 +----
camel/camel-data-cache.c | 26 +----
camel/camel-data-wrapper.c | 29 +----
camel/camel-digest-folder.c | 31 +-----
camel/camel-digest-store.c | 26 +----
camel/camel-digest-summary.c | 26 +----
camel/camel-disco-diary.c | 27 +----
camel/camel-disco-folder.c | 33 ++-----
camel/camel-disco-store.c | 32 ++----
camel/camel-filter-driver.c | 29 +----
camel/camel-folder-search.c | 29 +----
camel/camel-folder-summary.c | 29 +----
camel/camel-folder.c | 35 ++-----
camel/camel-gpg-context.c | 25 +----
camel/camel-html-parser.c | 31 ++----
camel/camel-http-stream.c | 30 +-----
camel/camel-index.c | 77 +++-----------
camel/camel-internet-address.c | 23 +----
camel/camel-medium.c | 29 +----
camel/camel-mime-filter-basic.c | 25 +----
camel/camel-mime-filter-bestenc.c | 25 +----
camel/camel-mime-filter-canon.c | 24 +----
camel/camel-mime-filter-charset.c | 27 +----
camel/camel-mime-filter-crlf.c | 25 +----
camel/camel-mime-filter-enriched.c | 25 +----
camel/camel-mime-filter-from.c | 27 +----
camel/camel-mime-filter-gzip.c | 27 +----
camel/camel-mime-filter-html.c | 27 +----
camel/camel-mime-filter-index.c | 27 +----
camel/camel-mime-filter-linewrap.c | 25 +----
camel/camel-mime-filter-pgp.c | 25 +----
camel/camel-mime-filter-progress.c | 25 +----
camel/camel-mime-filter-save.c | 25 +----
camel/camel-mime-filter-tohtml.c | 27 +----
camel/camel-mime-filter-windows.c | 27 +----
camel/camel-mime-filter-yenc.c | 25 +----
camel/camel-mime-filter.c | 27 +----
camel/camel-mime-message.c | 59 ++++-------
camel/camel-mime-parser.c | 31 +-----
camel/camel-mime-part.c | 29 +----
camel/camel-multipart-encrypted.c | 32 +-----
camel/camel-multipart-signed.c | 32 +-----
camel/camel-multipart.c | 33 +-----
camel/camel-news-address.c | 18 +---
camel/camel-nntp-address.c | 25 +----
camel/camel-object.c | 25 +----
camel/camel-offline-folder.c | 34 ++-----
camel/camel-offline-journal.c | 28 +----
camel/camel-offline-store.c | 28 +----
camel/camel-partition-table.c | 55 ++--------
camel/camel-sasl-anonymous.c | 25 +----
camel/camel-sasl-cram-md5.c | 24 +----
camel/camel-sasl-digest-md5.c | 28 +----
camel/camel-sasl-gssapi.c | 27 +----
camel/camel-sasl-login.c | 24 +----
camel/camel-sasl-ntlm.c | 25 +----
camel/camel-sasl-plain.c | 24 +----
camel/camel-sasl-popb4smtp.c | 25 +----
camel/camel-sasl.c | 29 +----
camel/camel-seekable-stream.c | 26 +----
camel/camel-seekable-substream.c | 26 +----
camel/camel-service.c | 31 +-----
camel/camel-session.c | 27 +----
camel/camel-smime-context.c | 25 +----
camel/camel-store-summary.c | 27 +----
camel/camel-store.c | 56 ++++------
camel/camel-stream-buffer.c | 29 +----
camel/camel-stream-filter.c | 27 +----
camel/camel-stream-fs.c | 27 +----
camel/camel-stream-mem.c | 27 +----
camel/camel-stream-null.c | 23 +----
camel/camel-stream-process.c | 28 +----
camel/camel-stream-vfs.c | 28 +----
camel/camel-stream.c | 23 +----
camel/camel-tcp-stream-raw.c | 28 +----
camel/camel-tcp-stream-ssl.c | 31 +-----
camel/camel-tcp-stream.c | 22 +---
camel/camel-text-index.c | 115 +++-----------------
camel/camel-transport.c | 27 +----
camel/camel-vee-folder.c | 37 ++-----
camel/camel-vee-store.c | 30 +-----
camel/camel-vee-summary.c | 25 +----
camel/camel-vtrash-folder.c | 28 +----
camel/providers/groupwise/camel-groupwise-folder.c | 33 ++-----
.../providers/groupwise/camel-groupwise-journal.c | 23 +----
.../groupwise/camel-groupwise-store-summary.c | 40 ++-----
camel/providers/groupwise/camel-groupwise-store.c | 35 ++-----
.../providers/groupwise/camel-groupwise-summary.c | 52 +++------
.../groupwise/camel-groupwise-transport.c | 24 +----
camel/providers/imap/camel-imap-folder.c | 41 ++-----
camel/providers/imap/camel-imap-journal.c | 28 +----
camel/providers/imap/camel-imap-message-cache.c | 27 +----
camel/providers/imap/camel-imap-search.c | 32 +-----
camel/providers/imap/camel-imap-store-summary.c | 40 ++-----
camel/providers/imap/camel-imap-store.c | 44 ++------
camel/providers/imap/camel-imap-summary.c | 51 +++------
camel/providers/imap/camel-imap-wrapper.c | 31 +-----
camel/providers/imap4/camel-imap4-engine.c | 4 -
camel/providers/imap4/camel-imap4-folder.c | 10 +--
camel/providers/imap4/camel-imap4-journal.c | 4 -
camel/providers/imap4/camel-imap4-search.c | 6 +-
camel/providers/imap4/camel-imap4-store-summary.c | 14 +--
camel/providers/imap4/camel-imap4-store.c | 6 +-
camel/providers/imap4/camel-imap4-stream.c | 4 -
camel/providers/imap4/camel-imap4-summary.c | 20 ++--
camel/providers/imapx/camel-imapx-stream.c | 4 -
camel/providers/local/camel-local-folder.c | 40 ++-----
camel/providers/local/camel-local-store.c | 31 ++----
camel/providers/local/camel-local-summary.c | 40 ++-----
camel/providers/local/camel-maildir-folder.c | 33 ++----
camel/providers/local/camel-maildir-store.c | 31 ++----
camel/providers/local/camel-maildir-summary.c | 39 ++-----
camel/providers/local/camel-mbox-folder.c | 32 +-----
camel/providers/local/camel-mbox-store.c | 27 +----
camel/providers/local/camel-mbox-summary.c | 58 ++++-------
camel/providers/local/camel-mh-folder.c | 25 +----
camel/providers/local/camel-mh-store.c | 33 ++----
camel/providers/local/camel-mh-summary.c | 27 +----
camel/providers/local/camel-spool-folder.c | 28 +----
camel/providers/local/camel-spool-store.c | 25 +----
camel/providers/local/camel-spool-summary.c | 28 +----
camel/providers/nntp/camel-nntp-folder.c | 39 ++-----
camel/providers/nntp/camel-nntp-store-summary.c | 40 ++-----
camel/providers/nntp/camel-nntp-store.c | 37 ++-----
camel/providers/nntp/camel-nntp-stream.c | 32 +-----
camel/providers/nntp/camel-nntp-summary.c | 35 ++-----
camel/providers/pop3/camel-pop3-engine.c | 26 +----
camel/providers/pop3/camel-pop3-folder.c | 25 +----
camel/providers/pop3/camel-pop3-store.c | 33 ++----
camel/providers/pop3/camel-pop3-stream.c | 32 +-----
.../providers/sendmail/camel-sendmail-transport.c | 21 +---
camel/providers/smtp/camel-smtp-transport.c | 30 +-----
camel/tests/lib/session.c | 22 ++---
camel/tests/smime/pgp.c | 29 +----
137 files changed, 792 insertions(+), 3288 deletions(-)
---
diff --git a/camel/camel-address.c b/camel/camel-address.c
index 3237c0f..03008ee 100644
--- a/camel/camel-address.c
+++ b/camel/camel-address.c
@@ -20,7 +20,7 @@
#include "camel-address.h"
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelAddress, camel_address, CAMEL_TYPE_OBJECT)
static void
address_finalize (GObject *object)
@@ -31,44 +31,24 @@ address_finalize (GObject *object)
g_ptr_array_free (address->addresses, TRUE);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_address_parent_class)->finalize (object);
}
static void
-address_class_init (CamelAddressClass *class)
+camel_address_class_init (CamelAddressClass *class)
{
GObjectClass *object_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->finalize = address_finalize;
}
static void
-address_init (CamelAddress *address)
+camel_address_init (CamelAddress *address)
{
address->addresses = g_ptr_array_new();
}
-GType
-camel_address_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelAddress",
- sizeof (CamelAddressClass),
- (GClassInitFunc) address_class_init,
- sizeof (CamelAddress),
- (GInstanceInitFunc) address_init,
- 0);
-
- return type;
-}
-
/**
* camel_address_new:
*
diff --git a/camel/camel-block-file.c b/camel/camel-block-file.c
index e4b162d..263f035 100644
--- a/camel/camel-block-file.c
+++ b/camel/camel-block-file.c
@@ -43,8 +43,6 @@
#define d(x) /*(printf("%s(%d):%s: ", __FILE__, __LINE__, __PRETTY_FUNCTION__),(x))*/
-static gpointer block_file_parent_class;
-
/* Locks must be obtained in the order defined */
struct _CamelBlockFilePrivate {
@@ -80,6 +78,8 @@ static gint block_file_threshhold = 10;
static gint sync_nolock(CamelBlockFile *bs);
static gint sync_block_nolock(CamelBlockFile *bs, CamelBlock *bl);
+G_DEFINE_TYPE (CamelBlockFile, camel_block_file, CAMEL_TYPE_OBJECT)
+
static gint
block_file_validate_root(CamelBlockFile *bs)
{
@@ -188,16 +188,14 @@ block_file_finalize(GObject *object)
g_free(p);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (block_file_parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_block_file_parent_class)->finalize (object);
}
static void
-block_file_class_init(CamelBlockFileClass *class)
+camel_block_file_class_init(CamelBlockFileClass *class)
{
GObjectClass *object_class;
- block_file_parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->finalize = block_file_finalize;
@@ -212,7 +210,7 @@ block_hash_func(gconstpointer v)
}
static void
-block_file_init(CamelBlockFile *bs)
+camel_block_file_init(CamelBlockFile *bs)
{
struct _CamelBlockFilePrivate *p;
@@ -250,24 +248,6 @@ block_file_init(CamelBlockFile *bs)
UNLOCK(block_file_lock);
}
-GType
-camel_block_file_get_type(void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelBlockFile",
- sizeof (CamelBlockFileClass),
- (GClassInitFunc) block_file_class_init,
- sizeof (CamelBlockFile),
- (GInstanceInitFunc) block_file_init,
- 0);
-
- return type;
-}
-
/* 'use' a block file for io */
static gint
block_file_use(CamelBlockFile *bs)
@@ -830,8 +810,6 @@ gint camel_block_file_sync(CamelBlockFile *bs)
/* ********************************************************************** */
-static gpointer key_file_parent_class;
-
struct _CamelKeyFilePrivate {
struct _CamelKeyFilePrivate *next;
struct _CamelKeyFilePrivate *prev;
@@ -853,6 +831,8 @@ static CamelDList key_file_active_list = CAMEL_DLIST_INITIALISER(key_file_active
static gint key_file_count = 0;
static const gint key_file_threshhold = 10;
+G_DEFINE_TYPE (CamelKeyFile, camel_key_file, CAMEL_TYPE_OBJECT)
+
static void
key_file_finalize(GObject *object)
{
@@ -876,22 +856,20 @@ key_file_finalize(GObject *object)
g_free(p);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (key_file_parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_key_file_parent_class)->finalize (object);
}
static void
-key_file_class_init(CamelKeyFileClass *class)
+camel_key_file_class_init(CamelKeyFileClass *class)
{
GObjectClass *object_class;
- key_file_parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->finalize = key_file_finalize;
}
static void
-key_file_init(CamelKeyFile *bs)
+camel_key_file_init(CamelKeyFile *bs)
{
struct _CamelKeyFilePrivate *p;
@@ -905,24 +883,6 @@ key_file_init(CamelKeyFile *bs)
UNLOCK(key_file_lock);
}
-GType
-camel_key_file_get_type(void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelKeyFile",
- sizeof (CamelKeyFileClass),
- (GClassInitFunc) key_file_class_init,
- sizeof (CamelKeyFile),
- (GInstanceInitFunc) key_file_init,
- 0);
-
- return type;
-}
-
/* 'use' a key file for io */
static gint
key_file_use(CamelKeyFile *bs)
diff --git a/camel/camel-certdb.c b/camel/camel-certdb.c
index 3b09706..7c23dca 100644
--- a/camel/camel-certdb.c
+++ b/camel/camel-certdb.c
@@ -57,7 +57,7 @@ static void certdb_cert_free (CamelCertDB *certdb, CamelCert *cert);
static const gchar *cert_get_string (CamelCertDB *certdb, CamelCert *cert, gint string);
static void cert_set_string (CamelCertDB *certdb, CamelCert *cert, gint string, const gchar *value);
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelCertDB, camel_certdb, CAMEL_TYPE_OBJECT)
static void
certdb_finalize (GObject *object)
@@ -85,15 +85,14 @@ certdb_finalize (GObject *object)
g_mutex_free (priv->ref_lock);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_certdb_parent_class)->finalize (object);
}
static void
-certdb_class_init (CamelCertDBClass *class)
+camel_certdb_class_init (CamelCertDBClass *class)
{
GObjectClass *object_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelCertDBPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -111,7 +110,7 @@ certdb_class_init (CamelCertDBClass *class)
}
static void
-certdb_init (CamelCertDB *certdb)
+camel_certdb_init (CamelCertDB *certdb)
{
certdb->priv = CAMEL_CERTDB_GET_PRIVATE (certdb);
@@ -132,24 +131,6 @@ certdb_init (CamelCertDB *certdb)
certdb->priv->ref_lock = g_mutex_new ();
}
-GType
-camel_certdb_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelCertDB",
- sizeof (CamelCertDBClass),
- (GClassInitFunc) certdb_class_init,
- sizeof (CamelCertDB),
- (GInstanceInitFunc) certdb_init,
- 0);
-
- return type;
-}
-
CamelCertDB *
camel_certdb_new (void)
{
diff --git a/camel/camel-cipher-context.c b/camel/camel-cipher-context.c
index c1648d1..993c87c 100644
--- a/camel/camel-cipher-context.c
+++ b/camel/camel-cipher-context.c
@@ -59,7 +59,7 @@ enum {
PROP_SESSION
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelCipherContext, camel_cipher_context, CAMEL_TYPE_OBJECT)
static gint
cipher_sign (CamelCipherContext *ctx,
@@ -688,7 +688,7 @@ cipher_context_dispose (GObject *object)
}
/* Chain up to parent's dispose () method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_cipher_context_parent_class)->dispose (object);
}
static void
@@ -701,15 +701,14 @@ cipher_context_finalize (GObject *object)
g_mutex_free (priv->lock);
/* Chain up to parent's finalize () method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_cipher_context_parent_class)->finalize (object);
}
static void
-cipher_context_class_init (CamelCipherContextClass *class)
+camel_cipher_context_class_init (CamelCipherContextClass *class)
{
GObjectClass *object_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelCipherContextPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -740,30 +739,12 @@ cipher_context_class_init (CamelCipherContextClass *class)
}
static void
-cipher_context_init (CamelCipherContext *context)
+camel_cipher_context_init (CamelCipherContext *context)
{
context->priv = CAMEL_CIPHER_CONTEXT_GET_PRIVATE (context);
context->priv->lock = g_mutex_new ();
}
-GType
-camel_cipher_context_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelCipherContext",
- sizeof (CamelCipherContextClass),
- (GClassInitFunc) cipher_context_class_init,
- sizeof (CamelCipherContext),
- (GInstanceInitFunc) cipher_context_init,
- 0);
-
- return type;
-}
-
/**
* camel_cipher_context_new:
* @session: CamelSession
diff --git a/camel/camel-data-cache.c b/camel/camel-data-cache.c
index a07d79b..f036def 100644
--- a/camel/camel-data-cache.c
+++ b/camel/camel-data-cache.c
@@ -73,7 +73,7 @@ enum {
PROP_PATH
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelDataCache, camel_data_cache, CAMEL_TYPE_OBJECT)
static void
data_cache_set_property (GObject *object,
@@ -120,15 +120,14 @@ data_cache_finalize (GObject *object)
g_free (priv->path);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_data_cache_parent_class)->finalize (object);
}
static void
-data_cache_class_init (CamelDataCacheClass *class)
+camel_data_cache_class_init (CamelDataCacheClass *class)
{
GObjectClass *object_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelDataCachePrivate));
object_class = G_OBJECT_CLASS (class);
@@ -149,7 +148,7 @@ data_cache_class_init (CamelDataCacheClass *class)
}
static void
-data_cache_init (CamelDataCache *data_cache)
+camel_data_cache_init (CamelDataCache *data_cache)
{
CamelObjectBag *busy_bag;
@@ -164,23 +163,6 @@ data_cache_init (CamelDataCache *data_cache)
data_cache->priv->expire_access = -1;
}
-GType
-camel_data_cache_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT, "CamelDataCache",
- sizeof (CamelDataCacheClass),
- (GClassInitFunc) data_cache_class_init,
- sizeof (CamelDataCache),
- (GInstanceInitFunc) data_cache_init,
- 0);
-
- return type;
-}
-
/**
* camel_data_cache_new:
* @path: Base path of cache, subdirectories will be created here.
diff --git a/camel/camel-data-wrapper.c b/camel/camel-data-wrapper.c
index e377513..adccb97 100644
--- a/camel/camel-data-wrapper.c
+++ b/camel/camel-data-wrapper.c
@@ -39,7 +39,7 @@
(G_TYPE_INSTANCE_GET_PRIVATE \
((obj), CAMEL_TYPE_DATA_WRAPPER, CamelDataWrapperPrivate))
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelDataWrapper, camel_data_wrapper, CAMEL_TYPE_OBJECT)
static void
data_wrapper_dispose (GObject *object)
@@ -57,7 +57,7 @@ data_wrapper_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_data_wrapper_parent_class)->dispose (object);
}
static void
@@ -68,7 +68,7 @@ data_wrapper_finalize (GObject *object)
pthread_mutex_destroy (&data_wrapper->priv->stream_lock);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_data_wrapper_parent_class)->finalize (object);
}
static gssize
@@ -195,11 +195,10 @@ data_wrapper_is_offline (CamelDataWrapper *data_wrapper)
}
static void
-data_wrapper_class_init (CamelDataWrapperClass *class)
+camel_data_wrapper_class_init (CamelDataWrapperClass *class)
{
GObjectClass *object_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelDataWrapperPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -217,7 +216,7 @@ data_wrapper_class_init (CamelDataWrapperClass *class)
}
static void
-data_wrapper_init (CamelDataWrapper *data_wrapper)
+camel_data_wrapper_init (CamelDataWrapper *data_wrapper)
{
data_wrapper->priv = CAMEL_DATA_WRAPPER_GET_PRIVATE (data_wrapper);
@@ -229,24 +228,6 @@ data_wrapper_init (CamelDataWrapper *data_wrapper)
data_wrapper->offline = FALSE;
}
-GType
-camel_data_wrapper_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelDataWrapper",
- sizeof (CamelDataWrapperClass),
- (GClassInitFunc) data_wrapper_class_init,
- sizeof (CamelDataWrapper),
- (GInstanceInitFunc) data_wrapper_init,
- 0);
-
- return type;
-}
-
/**
* camel_data_wrapper_new:
*
diff --git a/camel/camel-digest-folder.c b/camel/camel-digest-folder.c
index 0bbc38c..d389954 100644
--- a/camel/camel-digest-folder.c
+++ b/camel/camel-digest-folder.c
@@ -46,8 +46,6 @@ struct _CamelDigestFolderPrivate {
#define CAMEL_DIGEST_FOLDER_LOCK(f, l) (g_mutex_lock(((CamelDigestFolder *)f)->priv->l))
#define CAMEL_DIGEST_FOLDER_UNLOCK(f, l) (g_mutex_unlock(((CamelDigestFolder *)f)->priv->l))
-static gpointer parent_class;
-
static gboolean digest_refresh_info (CamelFolder *folder, GError **error);
static gboolean digest_sync (CamelFolder *folder, gboolean expunge, GError **error);
static const gchar *digest_get_full_name (CamelFolder *folder);
@@ -70,6 +68,8 @@ static GPtrArray *digest_search_by_uids (CamelFolder *folder, const gchar *expre
static void digest_search_free (CamelFolder *folder, GPtrArray *result);
+G_DEFINE_TYPE (CamelDigestFolder, camel_digest_folder, CAMEL_TYPE_FOLDER)
+
static void
digest_dispose (GObject *object)
{
@@ -95,7 +95,7 @@ digest_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_digest_folder_parent_class)->dispose (object);
}
static void
@@ -108,16 +108,15 @@ digest_finalize (GObject *object)
g_mutex_free (priv->search_lock);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_digest_folder_parent_class)->finalize (object);
}
static void
-digest_folder_class_init (CamelDigestFolderClass *class)
+camel_digest_folder_class_init (CamelDigestFolderClass *class)
{
GObjectClass *object_class;
CamelFolderClass *folder_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelDigestFolderPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -138,7 +137,7 @@ digest_folder_class_init (CamelDigestFolderClass *class)
}
static void
-digest_folder_init (CamelDigestFolder *digest_folder)
+camel_digest_folder_init (CamelDigestFolder *digest_folder)
{
CamelFolder *folder = CAMEL_FOLDER (digest_folder);
@@ -152,24 +151,6 @@ digest_folder_init (CamelDigestFolder *digest_folder)
digest_folder->priv->search_lock = g_mutex_new ();
}
-GType
-camel_digest_folder_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_FOLDER,
- "CamelDigestFolder",
- sizeof (CamelDigestFolderClass),
- (GClassInitFunc) digest_folder_class_init,
- sizeof (CamelDigestFolder),
- (GInstanceInitFunc) digest_folder_init,
- 0);
-
- return type;
-}
-
static gboolean
multipart_contains_message_parts (CamelMultipart *multipart)
{
diff --git a/camel/camel-digest-store.c b/camel/camel-digest-store.c
index 5d80545..021a2ba 100644
--- a/camel/camel-digest-store.c
+++ b/camel/camel-digest-store.c
@@ -41,15 +41,13 @@ static CamelFolder *digest_get_junk (CamelStore *store, GError **error);
static CamelFolderInfo *digest_get_folder_info (CamelStore *store, const gchar *top, guint32 flags, GError **error);
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelDigestStore, camel_digest_store, CAMEL_TYPE_STORE)
static void
-digest_store_class_init (CamelDigestStoreClass *class)
+camel_digest_store_class_init (CamelDigestStoreClass *class)
{
CamelStoreClass *store_class;
- parent_class = g_type_class_peek_parent (class);
-
store_class = CAMEL_STORE_CLASS (class);
store_class->get_folder = digest_get_folder;
store_class->rename_folder = digest_rename_folder;
@@ -62,7 +60,7 @@ digest_store_class_init (CamelDigestStoreClass *class)
}
static void
-digest_store_init (CamelDigestStore *digest_store)
+camel_digest_store_init (CamelDigestStore *digest_store)
{
CamelStore *store = CAMEL_STORE (digest_store);
@@ -70,24 +68,6 @@ digest_store_init (CamelDigestStore *digest_store)
store->flags &= ~(CAMEL_STORE_VTRASH | CAMEL_STORE_VJUNK);
}
-GType
-camel_digest_store_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_STORE,
- "CamelDigestStore",
- sizeof (CamelDigestStoreClass),
- (GClassInitFunc) digest_store_class_init,
- sizeof (CamelDigestStore),
- (GInstanceInitFunc) digest_store_init,
- 0);
-
- return type;
-}
-
/**
* camel_digest_store_new:
* @url:
diff --git a/camel/camel-digest-summary.c b/camel/camel-digest-summary.c
index e94cb47..0d15742 100644
--- a/camel/camel-digest-summary.c
+++ b/camel/camel-digest-summary.c
@@ -28,22 +28,20 @@
#define CAMEL_DIGEST_SUMMARY_VERSION 0
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelDigestSummary, camel_digest_summary, CAMEL_TYPE_FOLDER_SUMMARY)
static void
-digest_summary_class_init (CamelDigestSummaryClass *class)
+camel_digest_summary_class_init (CamelDigestSummaryClass *class)
{
CamelFolderSummaryClass *folder_summary_class;
- parent_class = g_type_class_peek_parent (class);
-
folder_summary_class = CAMEL_FOLDER_SUMMARY_CLASS (class);
folder_summary_class->message_info_size = sizeof (CamelMessageInfo);
folder_summary_class->content_info_size = sizeof (CamelMessageContentInfo);
}
static void
-digest_summary_init (CamelDigestSummary *digest_summary)
+camel_digest_summary_init (CamelDigestSummary *digest_summary)
{
CamelFolderSummary *summary;
@@ -53,24 +51,6 @@ digest_summary_init (CamelDigestSummary *digest_summary)
summary->version += CAMEL_DIGEST_SUMMARY_VERSION;
}
-GType
-camel_digest_summary_get_type(void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_FOLDER_SUMMARY,
- "CamelDigestSummary",
- sizeof (CamelDigestSummaryClass),
- (GClassInitFunc) digest_summary_class_init,
- sizeof (CamelDigestSummary),
- (GInstanceInitFunc) digest_summary_init,
- 0);
-
- return type;
-}
-
CamelFolderSummary *
camel_digest_summary_new (void)
{
diff --git a/camel/camel-disco-diary.c b/camel/camel-disco-diary.c
index 31c7597..14f885c 100644
--- a/camel/camel-disco-diary.c
+++ b/camel/camel-disco-diary.c
@@ -43,7 +43,7 @@
#define d(x)
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelDiscoDiary, camel_disco_diary, CAMEL_TYPE_OBJECT)
static void
unref_folder (gpointer key, gpointer value, gpointer data)
@@ -77,44 +77,25 @@ disco_diary_finalize (GObject *object)
}
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_disco_diary_parent_class)->finalize (object);
}
static void
-disco_diary_class_init (CamelDiscoDiaryClass *class)
+camel_disco_diary_class_init (CamelDiscoDiaryClass *class)
{
GObjectClass *object_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->finalize = disco_diary_finalize;
}
static void
-disco_diary_init (CamelDiscoDiary *diary)
+camel_disco_diary_init (CamelDiscoDiary *diary)
{
diary->folders = g_hash_table_new (g_str_hash, g_str_equal);
diary->uidmap = g_hash_table_new (g_str_hash, g_str_equal);
}
-GType
-camel_disco_diary_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT, "CamelDiscoDiary",
- sizeof (CamelDiscoDiaryClass),
- (GClassInitFunc) disco_diary_class_init,
- sizeof (CamelDiscoDiary),
- (GInstanceInitFunc) disco_diary_init,
- 0);
-
- return type;
-}
-
static gint
diary_encode_uids (CamelDiscoDiary *diary, GPtrArray *uids)
{
diff --git a/camel/camel-disco-folder.c b/camel/camel-disco-folder.c
index d2a3d43..f37f02d 100644
--- a/camel/camel-disco-folder.c
+++ b/camel/camel-disco-folder.c
@@ -31,7 +31,6 @@
#include "camel-disco-store.h"
#include "camel-session.h"
-static gpointer parent_class;
static GSList *disco_folder_properties;
static CamelProperty disco_property_list[] = {
@@ -65,6 +64,8 @@ struct _cdf_sync_msg {
CamelFolderChangeInfo *changes;
};
+G_DEFINE_TYPE (CamelDiscoFolder, camel_disco_folder, CAMEL_TYPE_FOLDER)
+
static void
cdf_sync_offline(CamelSession *session, CamelSessionThreadMsg *mm)
{
@@ -125,14 +126,12 @@ cdf_folder_changed(CamelFolder *folder, CamelFolderChangeInfo *changes, gpointer
}
static void
-disco_folder_class_init (CamelDiscoFolderClass *class)
+camel_disco_folder_class_init (CamelDiscoFolderClass *class)
{
CamelObjectClass *camel_object_class;
CamelFolderClass *folder_class;
gint ii;
- parent_class = g_type_class_peek_parent (class);
-
camel_object_class = CAMEL_OBJECT_CLASS (class);
camel_object_class->getv = disco_getv;
camel_object_class->setv = disco_setv;
@@ -156,31 +155,13 @@ disco_folder_class_init (CamelDiscoFolderClass *class)
}
static void
-disco_folder_init (CamelDiscoFolder *disco_folder)
+camel_disco_folder_init (CamelDiscoFolder *disco_folder)
{
camel_object_hook_event (
disco_folder, "folder_changed",
(CamelObjectEventHookFunc) cdf_folder_changed, NULL);
}
-GType
-camel_disco_folder_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_FOLDER,
- "CamelDiscoFolder",
- sizeof (CamelDiscoFolderClass),
- (GClassInitFunc) disco_folder_class_init,
- sizeof (CamelDiscoFolder),
- (GInstanceInitFunc) disco_folder_init,
- 0);
-
- return type;
-}
-
static gint
disco_getv (CamelObject *object,
GError **error,
@@ -201,7 +182,7 @@ disco_getv (CamelObject *object,
props.argc = 1;
props.argv[0] = *arg;
- ((CamelObjectClass *)parent_class)->getv(object, error, &props);
+ CAMEL_OBJECT_CLASS (camel_disco_folder_parent_class)->getv(object, error, &props);
*arg->ca_ptr = g_slist_concat(*arg->ca_ptr, g_slist_copy(disco_folder_properties));
break; }
/* disco args */
@@ -217,7 +198,7 @@ disco_getv (CamelObject *object,
}
if (count)
- return ((CamelObjectClass *)parent_class)->getv(object, error, args);
+ return CAMEL_OBJECT_CLASS (camel_disco_folder_parent_class)->getv(object, error, args);
return 0;
}
@@ -253,7 +234,7 @@ disco_setv (CamelObject *object,
if (save)
camel_object_state_write(object);
- return ((CamelObjectClass *)parent_class)->setv(object, error, args);
+ return CAMEL_OBJECT_CLASS (camel_disco_folder_parent_class)->setv(object, error, args);
}
static gboolean
diff --git a/camel/camel-disco-store.c b/camel/camel-disco-store.c
index 4877a2c..d602c07 100644
--- a/camel/camel-disco-store.c
+++ b/camel/camel-disco-store.c
@@ -35,8 +35,6 @@
#define d(x)
-static gpointer parent_class;
-
static gboolean disco_construct (CamelService *service, CamelSession *session,
CamelProvider *provider, CamelURL *url,
GError **error);
@@ -53,15 +51,14 @@ static void set_status (CamelDiscoStore *disco_store,
GError **error);
static gboolean can_work_offline (CamelDiscoStore *disco_store);
+G_DEFINE_TYPE (CamelDiscoStore, camel_disco_store, CAMEL_TYPE_STORE)
static void
-disco_store_class_init (CamelDiscoStoreClass *class)
+camel_disco_store_class_init (CamelDiscoStoreClass *class)
{
CamelServiceClass *service_class;
CamelStoreClass *store_class;
- parent_class = g_type_class_peek_parent (class);
-
service_class = CAMEL_SERVICE_CLASS (class);
service_class->construct = disco_construct;
service_class->connect = disco_connect;
@@ -76,22 +73,9 @@ disco_store_class_init (CamelDiscoStoreClass *class)
class->can_work_offline = can_work_offline;
}
-GType
-camel_disco_store_get_type (void)
+static void
+camel_disco_store_init (CamelDiscoStore *disco_store)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_STORE,
- "CamelDiscoStore",
- sizeof (CamelDiscoStoreClass),
- (GClassInitFunc) disco_store_class_init,
- sizeof (CamelDiscoStore),
- NULL,
- 0);
-
- return type;
}
static gboolean
@@ -105,7 +89,7 @@ disco_construct (CamelService *service,
CamelDiscoStore *disco = CAMEL_DISCO_STORE (service);
/* Chain up to parent's construct() method. */
- service_class = CAMEL_SERVICE_CLASS (parent_class);
+ service_class = CAMEL_SERVICE_CLASS (camel_disco_store_parent_class);
if (!service_class->construct (service, session, provider, url, error))
return FALSE;
@@ -126,7 +110,7 @@ disco_connect (CamelService *service,
status = camel_disco_store_status (store);
if (status != CAMEL_DISCO_STORE_OFFLINE) {
- if (!CAMEL_SERVICE_CLASS (parent_class)->connect (service, error)) {
+ if (!CAMEL_SERVICE_CLASS (camel_disco_store_parent_class)->connect (service, error)) {
status = camel_disco_store_status (store);
if (status != CAMEL_DISCO_STORE_OFFLINE)
return FALSE;
@@ -179,7 +163,7 @@ disco_cancel_connect (CamelService *service)
/* Fall back */
store->status = CAMEL_DISCO_STORE_OFFLINE;
- CAMEL_SERVICE_CLASS (parent_class)->cancel_connect (service);
+ CAMEL_SERVICE_CLASS (camel_disco_store_parent_class)->cancel_connect (service);
}
static gboolean
@@ -203,7 +187,7 @@ disco_disconnect (CamelService *service,
}
- return CAMEL_SERVICE_CLASS (parent_class)->disconnect (service, clean, error);
+ return CAMEL_SERVICE_CLASS (camel_disco_store_parent_class)->disconnect (service, clean, error);
}
static CamelFolder *
diff --git a/camel/camel-filter-driver.c b/camel/camel-filter-driver.c
index 6ddb363..426f5e6 100644
--- a/camel/camel-filter-driver.c
+++ b/camel/camel-filter-driver.c
@@ -175,7 +175,7 @@ static struct {
{ "only-once", (ESExpFunc *) do_only_once, 0 }
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelFilterDriver, camel_filter_driver, CAMEL_TYPE_OBJECT)
static void
free_hash_strings (gpointer key, gpointer value, gpointer data)
@@ -203,7 +203,7 @@ filter_driver_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_filter_driver_parent_class)->dispose (object);
}
static void
@@ -234,15 +234,14 @@ filter_driver_finalize (GObject *object)
}
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_filter_driver_parent_class)->finalize (object);
}
static void
-filter_driver_class_init (CamelFilterDriverClass *class)
+camel_filter_driver_class_init (CamelFilterDriverClass *class)
{
GObjectClass *object_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelFilterDriverPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -251,7 +250,7 @@ filter_driver_class_init (CamelFilterDriverClass *class)
}
static void
-filter_driver_init (CamelFilterDriver *filter_driver)
+camel_filter_driver_init (CamelFilterDriver *filter_driver)
{
gint ii;
@@ -286,24 +285,6 @@ filter_driver_init (CamelFilterDriver *filter_driver)
g_hash_table_new (g_str_hash, g_str_equal);
}
-GType
-camel_filter_driver_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelFilterDriver",
- sizeof (CamelFilterDriverClass),
- (GClassInitFunc) filter_driver_class_init,
- sizeof (CamelFilterDriver),
- (GInstanceInitFunc) filter_driver_init,
- 0);
-
- return type;
-}
-
/**
* camel_filter_driver_new:
*
diff --git a/camel/camel-folder-search.c b/camel/camel-folder-search.c
index 05cb046..b936767 100644
--- a/camel/camel-folder-search.c
+++ b/camel/camel-folder-search.c
@@ -96,7 +96,7 @@ static ESExpResult *search_dummy(struct _ESExp *f, gint argc, struct _ESExpResul
static gint read_uid_callback (gpointer ref, gint ncol, gchar ** cols, gchar **name);
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelFolderSearch, camel_folder_search, CAMEL_TYPE_OBJECT)
static void
folder_search_dispose (GObject *object)
@@ -109,7 +109,7 @@ folder_search_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_folder_search_parent_class)->dispose (object);
}
static void
@@ -120,15 +120,14 @@ folder_search_finalize (GObject *object)
g_free (search->last_search);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_folder_search_parent_class)->finalize (object);
}
static void
-folder_search_class_init (CamelFolderSearchClass *class)
+camel_folder_search_class_init (CamelFolderSearchClass *class)
{
GObjectClass *object_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelFolderSearchPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -160,30 +159,12 @@ folder_search_class_init (CamelFolderSearchClass *class)
}
static void
-folder_search_init (CamelFolderSearch *search)
+camel_folder_search_init (CamelFolderSearch *search)
{
search->priv = CAMEL_FOLDER_SEARCH_GET_PRIVATE (search);
search->sexp = e_sexp_new();
}
-GType
-camel_folder_search_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelFolderSearch",
- sizeof (CamelFolderSearchClass),
- (GClassInitFunc) folder_search_class_init,
- sizeof (CamelFolderSearch),
- (GInstanceInitFunc) folder_search_init,
- 0);
-
- return type;
-}
-
static struct {
const gchar *name;
gint offset;
diff --git a/camel/camel-folder-summary.c b/camel/camel-folder-summary.c
index e173b7b..db3c2d1 100644
--- a/camel/camel-folder-summary.c
+++ b/camel/camel-folder-summary.c
@@ -134,7 +134,7 @@ static CamelMessageContentInfo * summary_build_content_info_message(CamelFolderS
static CamelMessageInfo * message_info_from_uid (CamelFolderSummary *s, const gchar *uid);
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelFolderSummary, camel_folder_summary, CAMEL_TYPE_OBJECT)
static void
free_o_name(gpointer key, gpointer value, gpointer data)
@@ -191,7 +191,7 @@ folder_summary_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_folder_summary_parent_class)->dispose (object);
}
static void
@@ -223,7 +223,7 @@ folder_summary_finalize (GObject *object)
g_mutex_free(summary->priv->ref_lock);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_folder_summary_parent_class)->finalize (object);
}
static gint
@@ -848,11 +848,10 @@ info_set_flags(CamelMessageInfo *info, guint32 flags, guint32 set)
}
static void
-folder_summary_class_init (CamelFolderSummaryClass *class)
+camel_folder_summary_class_init (CamelFolderSummaryClass *class)
{
GObjectClass *object_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelFolderSummaryPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -911,7 +910,7 @@ folder_summary_class_init (CamelFolderSummaryClass *class)
}
static void
-folder_summary_init (CamelFolderSummary *summary)
+camel_folder_summary_init (CamelFolderSummary *summary)
{
summary->priv = CAMEL_FOLDER_SUMMARY_GET_PRIVATE (summary);
@@ -952,24 +951,6 @@ folder_summary_init (CamelFolderSummary *summary)
summary->timeout_handle = 0;
}
-GType
-camel_folder_summary_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelFolderSummary",
- sizeof (CamelFolderSummaryClass),
- (GClassInitFunc) folder_summary_class_init,
- sizeof (CamelFolderSummary),
- (GInstanceInitFunc) folder_summary_init,
- 0);
-
- return type;
-}
-
/**
* camel_folder_summary_new:
* @folder: parent #CamelFolder object
diff --git a/camel/camel-folder.c b/camel/camel-folder.c
index 9a38cea..35e3318 100644
--- a/camel/camel-folder.c
+++ b/camel/camel-folder.c
@@ -51,8 +51,6 @@
#define d(x)
#define w(x)
-static gpointer parent_class;
-
static gboolean refresh_info (CamelFolder *folder, GError **error);
static const gchar *get_name (CamelFolder *folder);
@@ -104,6 +102,8 @@ static gboolean folder_changed (CamelObject *object,
static CamelFolderQuotaInfo *get_quota_info (CamelFolder *folder);
+G_DEFINE_ABSTRACT_TYPE (CamelFolder, camel_folder, CAMEL_TYPE_OBJECT)
+
static void
folder_dispose (GObject *object)
{
@@ -123,7 +123,7 @@ folder_dispose (GObject *object)
}
/* Chain up to parent's dispose () method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_folder_parent_class)->dispose (object);
}
static void
@@ -145,16 +145,15 @@ folder_finalize (GObject *object)
g_static_mutex_free (&priv->change_lock);
/* Chain up to parent's finalize () method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_folder_parent_class)->finalize (object);
}
static void
-folder_class_init (CamelFolderClass *class)
+camel_folder_class_init (CamelFolderClass *class)
{
GObjectClass *object_class;
CamelObjectClass *camel_object_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelFolderPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -206,7 +205,7 @@ folder_class_init (CamelFolderClass *class)
}
static void
-folder_init (CamelFolder *folder)
+camel_folder_init (CamelFolder *folder)
{
folder->priv = CAMEL_FOLDER_GET_PRIVATE (folder);
@@ -217,24 +216,6 @@ folder_init (CamelFolder *folder)
g_static_mutex_init (&folder->priv->change_lock);
}
-GType
-camel_folder_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelFolder",
- sizeof (CamelFolderClass),
- (GClassInitFunc) folder_class_init,
- sizeof (CamelFolder),
- (GInstanceInitFunc) folder_init,
- 0);
-
- return type;
-}
-
GQuark
camel_folder_error_quark (void)
{
@@ -504,7 +485,7 @@ folder_getv (CamelObject *object,
arg->tag = (tag & CAMEL_ARG_TYPE) | CAMEL_ARG_IGNORE;
}
- return CAMEL_OBJECT_CLASS (parent_class)->getv (object, error, args);
+ return CAMEL_OBJECT_CLASS (camel_folder_parent_class)->getv (object, error, args);
}
static void
@@ -528,7 +509,7 @@ folder_free (CamelObject *o, guint32 tag, gpointer val)
g_slist_free (val);
break;
default:
- CAMEL_OBJECT_CLASS (parent_class)->free (o, tag, val);
+ CAMEL_OBJECT_CLASS (camel_folder_parent_class)->free (o, tag, val);
}
}
diff --git a/camel/camel-gpg-context.c b/camel/camel-gpg-context.c
index 700b4d2..9d0f32f 100644
--- a/camel/camel-gpg-context.c
+++ b/camel/camel-gpg-context.c
@@ -86,7 +86,7 @@ enum {
PROP_ALWAYS_TRUST
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelGpgContext, camel_gpg_context, CAMEL_TYPE_CIPHER_CONTEXT)
static const gchar *
gpg_hash_to_id (CamelCipherContext *context, CamelCipherHash hash)
@@ -2130,12 +2130,11 @@ gpg_context_get_property (GObject *object,
}
static void
-gpg_context_class_init (CamelGpgContextClass *class)
+camel_gpg_context_class_init (CamelGpgContextClass *class)
{
GObjectClass *object_class;
CamelCipherContextClass *cipher_context_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelGpgContextClass));
object_class = G_OBJECT_CLASS (class);
@@ -2168,29 +2167,11 @@ gpg_context_class_init (CamelGpgContextClass *class)
}
static void
-gpg_context_init (CamelGpgContext *context)
+camel_gpg_context_init (CamelGpgContext *context)
{
context->priv = CAMEL_GPG_CONTEXT_GET_PRIVATE (context);
}
-GType
-camel_gpg_context_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_CIPHER_CONTEXT,
- "CamelGpgContext",
- sizeof (CamelGpgContextClass),
- (GClassInitFunc) gpg_context_class_init,
- sizeof (CamelGpgContext),
- (GInstanceInitFunc) gpg_context_init,
- 0);
-
- return type;
-}
-
/**
* camel_gpg_context_new:
* @session: session
diff --git a/camel/camel-html-parser.c b/camel/camel-html-parser.c
index de6a762..1617792 100644
--- a/camel/camel-html-parser.c
+++ b/camel/camel-html-parser.c
@@ -34,8 +34,6 @@
/* if defined, must also compile in dump_tag() below somewhere */
#define d(x)
-static gpointer parent_class;
-
/* Parser definitions, see below object code for details */
struct _CamelHTMLParserPrivate {
@@ -60,6 +58,8 @@ static CamelHTMLParserPrivate *tokenize_init(void);
static void tokenize_free(CamelHTMLParserPrivate *p);
static gint tokenize_step(CamelHTMLParserPrivate *p, gchar **datap, gint *lenp);
+G_DEFINE_TYPE (CamelHTMLParser, camel_html_parser, CAMEL_TYPE_OBJECT)
+
/* ********************************************************************** */
static void
@@ -68,15 +68,16 @@ html_parser_finalize (GObject *object)
CamelHTMLParser *parser = CAMEL_HTML_PARSER (object);
tokenize_free (parser->priv);
+
+ /* Chain up to parent's finalize() method. */
+ G_OBJECT_CLASS (camel_html_parser_parent_class)->finalize (object);
}
static void
-html_parser_class_init (CamelHTMLParserClass *class)
+camel_html_parser_class_init (CamelHTMLParserClass *class)
{
GObjectClass *object_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->finalize = html_parser_finalize;
@@ -84,29 +85,11 @@ html_parser_class_init (CamelHTMLParserClass *class)
}
static void
-html_parser_init (CamelHTMLParser *parser)
+camel_html_parser_init (CamelHTMLParser *parser)
{
parser->priv = tokenize_init();
}
-GType
-camel_html_parser_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelHTMLParser",
- sizeof (CamelHTMLParserClass),
- (GClassInitFunc) html_parser_class_init,
- sizeof (CamelHTMLParser),
- (GInstanceInitFunc) html_parser_init,
- 0);
-
- return type;
-}
-
/**
* camel_html_parser_new:
*
diff --git a/camel/camel-http-stream.c b/camel/camel-http-stream.c
index 0f3138d..cd156fc 100644
--- a/camel/camel-http-stream.c
+++ b/camel/camel-http-stream.c
@@ -49,7 +49,7 @@
#define d(x)
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelHttpStream, camel_http_stream, CAMEL_TYPE_STREAM)
static CamelStream *
http_connect (CamelHttpStream *http,
@@ -344,7 +344,7 @@ http_stream_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_http_stream_parent_class)->dispose (object);
}
static void
@@ -365,7 +365,7 @@ http_stream_finalize (GObject *object)
g_free (http->authpass);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_http_stream_parent_class)->finalize (object);
}
static gssize
@@ -520,13 +520,11 @@ http_stream_reset (CamelStream *stream,
}
static void
-http_stream_class_init (CamelHttpStreamClass *class)
+camel_http_stream_class_init (CamelHttpStreamClass *class)
{
GObjectClass *object_class;
CamelStreamClass *stream_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->dispose = http_stream_dispose;
object_class->finalize = http_stream_finalize;
@@ -540,29 +538,11 @@ http_stream_class_init (CamelHttpStreamClass *class)
}
static void
-http_stream_init (CamelHttpStream *http)
+camel_http_stream_init (CamelHttpStream *http)
{
http->raw_headers = g_queue_new ();
}
-GType
-camel_http_stream_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_STREAM,
- "CamelHttpStream",
- sizeof (CamelHttpStreamClass),
- (GClassInitFunc) http_stream_class_init,
- sizeof (CamelHttpStream),
- (GInstanceInitFunc) http_stream_init,
- 0);
-
- return type;
-}
-
/**
* camel_http_stream_new:
* @method: HTTP method
diff --git a/camel/camel-index.c b/camel/camel-index.c
index dc345c3..092b5b5 100644
--- a/camel/camel-index.c
+++ b/camel/camel-index.c
@@ -53,7 +53,7 @@ struct _CamelIndexPrivate {
/* CamelIndex */
/* ********************************************************************** */
-static gpointer index_parent_class;
+G_DEFINE_TYPE (CamelIndex, camel_index, CAMEL_TYPE_OBJECT)
static void
index_finalize (GObject *object)
@@ -63,15 +63,14 @@ index_finalize (GObject *object)
g_free (index->path);
/* Chain up to parent's finalize () method. */
- G_OBJECT_CLASS (index_parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_index_parent_class)->finalize (object);
}
static void
-index_class_init (CamelIndexClass *class)
+camel_index_class_init (CamelIndexClass *class)
{
GObjectClass *object_class;
- index_parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelIndexPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -79,30 +78,12 @@ index_class_init (CamelIndexClass *class)
}
static void
-index_init (CamelIndex *index)
+camel_index_init (CamelIndex *index)
{
index->priv = CAMEL_INDEX_GET_PRIVATE (index);
index->version = CAMEL_INDEX_VERSION;
}
-GType
-camel_index_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelIndex",
- sizeof (CamelIndexClass),
- (GClassInitFunc) index_class_init,
- sizeof (CamelIndex),
- (GInstanceInitFunc) index_init,
- 0);
-
- return type;
-}
-
CamelIndex *
camel_index_new (const gchar *path, gint flags)
{
@@ -355,7 +336,7 @@ camel_index_names (CamelIndex *idx)
/* CamelIndexName */
/* ********************************************************************** */
-static gpointer index_name_parent_class;
+G_DEFINE_TYPE (CamelIndexName, camel_index_name, CAMEL_TYPE_OBJECT)
static void
index_name_dispose (GObject *object)
@@ -368,36 +349,21 @@ index_name_dispose (GObject *object)
}
/* Chain up to parent's dispose () method. */
- G_OBJECT_CLASS (index_name_parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_index_name_parent_class)->dispose (object);
}
static void
-index_name_class_init (CamelIndexNameClass *class)
+camel_index_name_class_init (CamelIndexNameClass *class)
{
GObjectClass *object_class;
- index_name_parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->dispose = index_name_dispose;
}
-GType
-camel_index_name_get_type (void)
+static void
+camel_index_name_init (CamelIndexName *index_name)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelIndexName",
- sizeof (CamelIndexNameClass),
- (GClassInitFunc) index_name_class_init,
- sizeof (CamelIndexName),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
CamelIndexName *
@@ -451,7 +417,7 @@ camel_index_name_add_buffer (CamelIndexName *idn,
/* CamelIndexCursor */
/* ********************************************************************** */
-static gpointer index_cursor_parent_class;
+G_DEFINE_TYPE (CamelIndexCursor, camel_index_cursor, CAMEL_TYPE_OBJECT)
static void
index_cursor_dispose (GObject *object)
@@ -464,36 +430,21 @@ index_cursor_dispose (GObject *object)
}
/* Chain up to parent's dispose () method. */
- G_OBJECT_CLASS (index_cursor_parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_index_cursor_parent_class)->dispose (object);
}
static void
-index_cursor_class_init (CamelIndexCursorClass *class)
+camel_index_cursor_class_init (CamelIndexCursorClass *class)
{
GObjectClass *object_class;
- index_cursor_parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->dispose = index_cursor_dispose;
}
-GType
-camel_index_cursor_get_type (void)
+static void
+camel_index_cursor_init (CamelIndexCursor *index_cursor)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelIndexCursor",
- sizeof (CamelIndexCursorClass),
- (GClassInitFunc) index_cursor_class_init,
- sizeof (CamelIndexCursor),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
CamelIndexCursor *
diff --git a/camel/camel-internet-address.c b/camel/camel-internet-address.c
index 68d10ee..001cf04 100644
--- a/camel/camel-internet-address.c
+++ b/camel/camel-internet-address.c
@@ -31,7 +31,7 @@ struct _address {
gchar *address;
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelInternetAddress, camel_internet_address, CAMEL_TYPE_ADDRESS)
static gint
internet_address_decode (CamelAddress *a, const gchar *raw)
@@ -221,12 +221,10 @@ internet_address_cat (CamelAddress *dest, CamelAddress *source)
}
static void
-internet_address_class_init (CamelInternetAddressClass *class)
+camel_internet_address_class_init (CamelInternetAddressClass *class)
{
CamelAddressClass *address_class;
- parent_class = g_type_class_peek_parent (class);
-
address_class = CAMEL_ADDRESS_CLASS (class);
address_class->decode = internet_address_decode;
address_class->encode = internet_address_encode;
@@ -236,22 +234,9 @@ internet_address_class_init (CamelInternetAddressClass *class)
address_class->cat = internet_address_cat;
}
-GType
-camel_internet_address_get_type(void)
+static void
+camel_internet_address_init (CamelInternetAddress *internet_address)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_ADDRESS,
- "CamelInternetAddress",
- sizeof (CamelInternetAddressClass),
- (GClassInitFunc) internet_address_class_init,
- sizeof (CamelInternetAddress),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
/**
diff --git a/camel/camel-medium.c b/camel/camel-medium.c
index 5558c33..81c6d8c 100644
--- a/camel/camel-medium.c
+++ b/camel/camel-medium.c
@@ -37,8 +37,6 @@
(G_TYPE_INSTANCE_GET_PRIVATE \
((obj), CAMEL_TYPE_MEDIUM, CamelMediumPrivate))
-static gpointer parent_class;
-
struct _CamelMediumPrivate {
/* The content of the medium, as opposed to our parent
* CamelDataWrapper, which wraps both the headers and
@@ -51,6 +49,8 @@ enum {
PROP_CONTENT
};
+G_DEFINE_ABSTRACT_TYPE (CamelMedium, camel_medium, CAMEL_TYPE_DATA_WRAPPER)
+
static void
medium_set_property (GObject *object,
guint property_id,
@@ -98,7 +98,7 @@ medium_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_medium_parent_class)->dispose (object);
}
static gboolean
@@ -134,12 +134,11 @@ medium_get_content (CamelMedium *medium)
}
static void
-medium_class_init (CamelMediumClass *class)
+camel_medium_class_init (CamelMediumClass *class)
{
GObjectClass *object_class;
CamelDataWrapperClass *data_wrapper_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelMediumPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -165,29 +164,11 @@ medium_class_init (CamelMediumClass *class)
}
static void
-medium_init (CamelMedium *medium)
+camel_medium_init (CamelMedium *medium)
{
medium->priv = CAMEL_MEDIUM_GET_PRIVATE (medium);
}
-GType
-camel_medium_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_DATA_WRAPPER,
- "CamelMedium",
- sizeof (CamelMediumClass),
- (GClassInitFunc) medium_class_init,
- sizeof (CamelMedium),
- (GInstanceInitFunc) medium_init,
- 0);
-
- return type;
-}
-
/**
* camel_medium_add_header:
* @medium: a #CamelMedium object
diff --git a/camel/camel-mime-filter-basic.c b/camel/camel-mime-filter-basic.c
index b84a10b..2af2c18 100644
--- a/camel/camel-mime-filter-basic.c
+++ b/camel/camel-mime-filter-basic.c
@@ -35,7 +35,7 @@ struct _CamelMimeFilterBasicPrivate {
gint save;
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelMimeFilterBasic, camel_mime_filter_basic, CAMEL_TYPE_MIME_FILTER)
/* here we do all of the basic mime filtering */
static void
@@ -234,11 +234,10 @@ mime_filter_basic_reset (CamelMimeFilter *mime_filter)
}
static void
-mime_filter_basic_class_init (CamelMimeFilterBasicClass *class)
+camel_mime_filter_basic_class_init (CamelMimeFilterBasicClass *class)
{
CamelMimeFilterClass *mime_filter_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelMimeFilterBasicPrivate));
mime_filter_class = CAMEL_MIME_FILTER_CLASS (class);
@@ -248,29 +247,11 @@ mime_filter_basic_class_init (CamelMimeFilterBasicClass *class)
}
static void
-mime_filter_basic_init (CamelMimeFilterBasic *filter)
+camel_mime_filter_basic_init (CamelMimeFilterBasic *filter)
{
filter->priv = CAMEL_MIME_FILTER_BASIC_GET_PRIVATE (filter);
}
-GType
-camel_mime_filter_basic_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_MIME_FILTER,
- "CamelMimeFilterBasic",
- sizeof (CamelMimeFilterBasicClass),
- (GClassInitFunc) mime_filter_basic_class_init,
- sizeof (CamelMimeFilterBasic),
- (GInstanceInitFunc) mime_filter_basic_init,
- 0);
-
- return type;
-}
-
/**
* camel_mime_filter_basic_new_type:
* @type: a #CamelMimeFilterBasicType type
diff --git a/camel/camel-mime-filter-bestenc.c b/camel/camel-mime-filter-bestenc.c
index 7fe9673..bbc505c 100644
--- a/camel/camel-mime-filter-bestenc.c
+++ b/camel/camel-mime-filter-bestenc.c
@@ -54,7 +54,7 @@ struct _CamelMimeFilterBestencPrivate {
CamelCharset charset; /* used to determine the best charset to use */
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelMimeFilterBestenc, camel_mime_filter_bestenc, CAMEL_TYPE_MIME_FILTER)
static void
mime_filter_bestenc_filter (CamelMimeFilter *mime_filter,
@@ -200,11 +200,10 @@ mime_filter_bestenc_reset (CamelMimeFilter *mime_filter)
}
static void
-mime_filter_bestenc_class_init (CamelMimeFilterBestencClass *class)
+camel_mime_filter_bestenc_class_init (CamelMimeFilterBestencClass *class)
{
CamelMimeFilterClass *mime_filter_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelMimeFilterBestencPrivate));
mime_filter_class = CAMEL_MIME_FILTER_CLASS (class);
@@ -214,31 +213,13 @@ mime_filter_bestenc_class_init (CamelMimeFilterBestencClass *class)
}
static void
-mime_filter_bestenc_init (CamelMimeFilterBestenc *filter)
+camel_mime_filter_bestenc_init (CamelMimeFilterBestenc *filter)
{
filter->priv = CAMEL_MIME_FILTER_BESTENC_GET_PRIVATE (filter);
mime_filter_bestenc_reset (CAMEL_MIME_FILTER (filter));
}
-GType
-camel_mime_filter_bestenc_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_MIME_FILTER,
- "CamelMimeFilterBestenc",
- sizeof (CamelMimeFilterBestencClass),
- (GClassInitFunc) mime_filter_bestenc_class_init,
- sizeof (CamelMimeFilterBestenc),
- (GInstanceInitFunc) mime_filter_bestenc_init,
- 0);
-
- return type;
-}
-
/**
* camel_mime_filter_bestenc_new:
* @flags: a bitmask of data required.
diff --git a/camel/camel-mime-filter-canon.c b/camel/camel-mime-filter-canon.c
index 7894b5f..b272a6c 100644
--- a/camel/camel-mime-filter-canon.c
+++ b/camel/camel-mime-filter-canon.c
@@ -39,7 +39,7 @@ struct _CamelMimeFilterCanonPrivate {
guint32 flags;
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelMimeFilterCanon, camel_mime_filter_canon, CAMEL_TYPE_MIME_FILTER)
static void
mime_filter_canon_run (CamelMimeFilter *mime_filter,
@@ -178,11 +178,10 @@ mime_filter_canon_reset (CamelMimeFilter *mime_filter)
}
static void
-mime_filter_canon_class_init (CamelMimeFilterCanonClass *class)
+camel_mime_filter_canon_class_init (CamelMimeFilterCanonClass *class)
{
CamelMimeFilterClass *mime_filter_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelMimeFilterCanonPrivate));
mime_filter_class = CAMEL_MIME_FILTER_CLASS (class);
@@ -192,28 +191,11 @@ mime_filter_canon_class_init (CamelMimeFilterCanonClass *class)
}
static void
-mime_filter_canon_init (CamelMimeFilterCanon *filter)
+camel_mime_filter_canon_init (CamelMimeFilterCanon *filter)
{
filter->priv = CAMEL_MIME_FILTER_CANON_GET_PRIVATE (filter);
}
-GType
-camel_mime_filter_canon_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_MIME_FILTER, "CamelMimeFilterCanon",
- sizeof (CamelMimeFilterCanonClass),
- (GClassInitFunc) mime_filter_canon_class_init,
- sizeof (CamelMimeFilterCanon),
- (GInstanceInitFunc) mime_filter_canon_init,
- 0);
-
- return type;
-}
-
/**
* camel_mime_filter_canon_new:
* @flags: bitwise flags defining the behaviour of the filter
diff --git a/camel/camel-mime-filter-charset.c b/camel/camel-mime-filter-charset.c
index 92a6c5b..a553c6c 100644
--- a/camel/camel-mime-filter-charset.c
+++ b/camel/camel-mime-filter-charset.c
@@ -43,7 +43,7 @@ struct _CamelMimeFilterCharsetPrivate {
gchar *to;
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelMimeFilterCharset, camel_mime_filter_charset, CAMEL_TYPE_MIME_FILTER)
static void
mime_filter_charset_finalize (GObject *object)
@@ -61,7 +61,7 @@ mime_filter_charset_finalize (GObject *object)
}
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_mime_filter_charset_parent_class)->finalize (object);
}
static void
@@ -234,12 +234,11 @@ mime_filter_charset_reset (CamelMimeFilter *mime_filter)
}
static void
-mime_filter_charset_class_init (CamelMimeFilterCharsetClass *class)
+camel_mime_filter_charset_class_init (CamelMimeFilterCharsetClass *class)
{
GObjectClass *object_class;
CamelMimeFilterClass *mime_filter_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelMimeFilterCharsetPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -252,30 +251,12 @@ mime_filter_charset_class_init (CamelMimeFilterCharsetClass *class)
}
static void
-mime_filter_charset_init (CamelMimeFilterCharset *filter)
+camel_mime_filter_charset_init (CamelMimeFilterCharset *filter)
{
filter->priv = CAMEL_MIME_FILTER_CHARSET_GET_PRIVATE (filter);
filter->priv->ic = (iconv_t) -1;
}
-GType
-camel_mime_filter_charset_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_MIME_FILTER,
- "CamelMimeFilterCharset",
- sizeof (CamelMimeFilterCharsetClass),
- (GClassInitFunc) mime_filter_charset_class_init,
- sizeof (CamelMimeFilterCharset),
- (GInstanceInitFunc) mime_filter_charset_init,
- 0);
-
- return type;
-}
-
/**
* camel_mime_filter_charset_new:
* @from_charset: charset to convert from
diff --git a/camel/camel-mime-filter-crlf.c b/camel/camel-mime-filter-crlf.c
index 48056ea..a233dcb 100644
--- a/camel/camel-mime-filter-crlf.c
+++ b/camel/camel-mime-filter-crlf.c
@@ -34,7 +34,7 @@ struct _CamelMimeFilterCRLFPrivate {
gboolean saw_dot;
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelMimeFilterCRLF, camel_mime_filter_crlf, CAMEL_TYPE_MIME_FILTER)
static void
mime_filter_crlf_filter (CamelMimeFilter *mime_filter,
@@ -155,11 +155,10 @@ mime_filter_crlf_reset (CamelMimeFilter *mime_filter)
}
static void
-mime_filter_crlf_class_init (CamelMimeFilterCRLFClass *class)
+camel_mime_filter_crlf_class_init (CamelMimeFilterCRLFClass *class)
{
CamelMimeFilterClass *mime_filter_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelMimeFilterCRLFPrivate));
mime_filter_class = CAMEL_MIME_FILTER_CLASS (class);
@@ -169,7 +168,7 @@ mime_filter_crlf_class_init (CamelMimeFilterCRLFClass *class)
}
static void
-mime_filter_crlf_init (CamelMimeFilterCRLF *filter)
+camel_mime_filter_crlf_init (CamelMimeFilterCRLF *filter)
{
filter->priv = CAMEL_MIME_FILTER_CRLF_GET_PRIVATE (filter);
@@ -178,24 +177,6 @@ mime_filter_crlf_init (CamelMimeFilterCRLF *filter)
filter->priv->saw_dot = FALSE;
}
-GType
-camel_mime_filter_crlf_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_MIME_FILTER,
- "CamelMimeFilterCRLF",
- sizeof (CamelMimeFilterCRLFClass),
- (GClassInitFunc) mime_filter_crlf_class_init,
- sizeof (CamelMimeFilterCRLF),
- (GInstanceInitFunc) mime_filter_crlf_init,
- 0);
-
- return type;
-}
-
/**
* camel_mime_filter_crlf_new:
* @direction: encode vs decode
diff --git a/camel/camel-mime-filter-enriched.c b/camel/camel-mime-filter-enriched.c
index 44ab318..e1cfbe2 100644
--- a/camel/camel-mime-filter-enriched.c
+++ b/camel/camel-mime-filter-enriched.c
@@ -99,7 +99,7 @@ static struct {
static GHashTable *enriched_hash = NULL;
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelMimeFilterEnriched, camel_mime_filter_enriched, CAMEL_TYPE_MIME_FILTER)
#if 0
static gboolean
@@ -523,12 +523,11 @@ mime_filter_enriched_reset (CamelMimeFilter *filter)
}
static void
-mime_filter_enriched_class_init (CamelMimeFilterEnrichedClass *class)
+camel_mime_filter_enriched_class_init (CamelMimeFilterEnrichedClass *class)
{
CamelMimeFilterClass *mime_filter_class;
gint i;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelMimeFilterEnrichedPrivate));
mime_filter_class = CAMEL_MIME_FILTER_CLASS (class);
@@ -546,29 +545,11 @@ mime_filter_enriched_class_init (CamelMimeFilterEnrichedClass *class)
}
static void
-mime_filter_enriched_init (CamelMimeFilterEnriched *filter)
+camel_mime_filter_enriched_init (CamelMimeFilterEnriched *filter)
{
filter->priv = CAMEL_MIME_FILTER_ENRICHED_GET_PRIVATE (filter);
}
-GType
-camel_mime_filter_enriched_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_MIME_FILTER,
- "CamelMimeFilterEnriched",
- sizeof (CamelMimeFilterEnrichedClass),
- (GClassInitFunc) mime_filter_enriched_class_init,
- sizeof (CamelMimeFilterEnriched),
- (GInstanceInitFunc) mime_filter_enriched_init,
- 0);
-
- return type;
-}
-
/**
* camel_mime_filter_enriched_new:
* @flags: bitwise set of flags to specify filter behaviour
diff --git a/camel/camel-mime-filter-from.c b/camel/camel-mime-filter-from.c
index a574555..4d91dc6 100644
--- a/camel/camel-mime-filter-from.c
+++ b/camel/camel-mime-filter-from.c
@@ -37,13 +37,13 @@ struct _CamelMimeFilterFromPrivate {
gint midline; /* are we between lines? */
};
-static gpointer parent_class;
-
struct fromnode {
struct fromnode *next;
const gchar *pointer;
};
+G_DEFINE_TYPE (CamelMimeFilterFrom, camel_mime_filter_from, CAMEL_TYPE_MIME_FILTER)
+
static void
mime_filter_from_complete (CamelMimeFilter *mime_filter,
const gchar *in,
@@ -150,11 +150,10 @@ mime_filter_from_filter (CamelMimeFilter *mime_filter,
}
static void
-mime_filter_from_class_init (CamelMimeFilterFromClass *class)
+camel_mime_filter_from_class_init (CamelMimeFilterFromClass *class)
{
CamelMimeFilterClass *mime_filter_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelMimeFilterFromPrivate));
mime_filter_class = CAMEL_MIME_FILTER_CLASS (class);
@@ -163,29 +162,11 @@ mime_filter_from_class_init (CamelMimeFilterFromClass *class)
}
static void
-mime_filter_from_init (CamelMimeFilterFrom *filter)
+camel_mime_filter_from_init (CamelMimeFilterFrom *filter)
{
filter->priv = CAMEL_MIME_FILTER_FROM_GET_PRIVATE (filter);
}
-GType
-camel_mime_filter_from_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_MIME_FILTER,
- "CamelMimeFilterFrom",
- sizeof (CamelMimeFilterFromClass),
- (GClassInitFunc) mime_filter_from_class_init,
- sizeof (CamelMimeFilterFrom),
- (GInstanceInitFunc) mime_filter_from_init,
- 0);
-
- return type;
-}
-
/**
* camel_mime_filter_from_new:
*
diff --git a/camel/camel-mime-filter-gzip.c b/camel/camel-mime-filter-gzip.c
index 005314d..01a5a5e 100644
--- a/camel/camel-mime-filter-gzip.c
+++ b/camel/camel-mime-filter-gzip.c
@@ -95,7 +95,7 @@ struct _CamelMimeFilterGZipPrivate {
guint32 isize;
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelMimeFilterGZip, camel_mime_filter_gzip, CAMEL_TYPE_MIME_FILTER)
static void
gzip_filter (CamelMimeFilter *filter,
@@ -414,16 +414,15 @@ mime_filter_gzip_finalize (GObject *object)
g_free (priv->stream);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_mime_filter_gzip_parent_class)->finalize (object);
}
static void
-mime_filter_gzip_class_init (CamelMimeFilterGZipClass *class)
+camel_mime_filter_gzip_class_init (CamelMimeFilterGZipClass *class)
{
GObjectClass *object_class;
CamelMimeFilterClass *mime_filter_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelMimeFilterGZipPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -436,31 +435,13 @@ mime_filter_gzip_class_init (CamelMimeFilterGZipClass *class)
}
static void
-mime_filter_gzip_init (CamelMimeFilterGZip *filter)
+camel_mime_filter_gzip_init (CamelMimeFilterGZip *filter)
{
filter->priv = CAMEL_MIME_FILTER_GZIP_GET_PRIVATE (filter);
filter->priv->stream = g_new0 (z_stream, 1);
filter->priv->crc32 = crc32 (0, Z_NULL, 0);
}
-GType
-camel_mime_filter_gzip_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_MIME_FILTER,
- "CamelMimeFilterGZip",
- sizeof (CamelMimeFilterGZipClass),
- (GClassInitFunc) mime_filter_gzip_class_init,
- sizeof (CamelMimeFilterGZip),
- (GInstanceInitFunc) mime_filter_gzip_init,
- 0);
-
- return type;
-}
-
/**
* camel_mime_filter_gzip_new:
* @mode: zip or unzip
diff --git a/camel/camel-mime-filter-html.c b/camel/camel-mime-filter-html.c
index 7d49d38..1a96834 100644
--- a/camel/camel-mime-filter-html.c
+++ b/camel/camel-mime-filter-html.c
@@ -41,7 +41,7 @@ struct _CamelMimeFilterHTMLPrivate {
CamelHTMLParser *ctxt;
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelMimeFilterHTML, camel_mime_filter_html, CAMEL_TYPE_MIME_FILTER)
/* ********************************************************************** */
@@ -123,7 +123,7 @@ mime_filter_html_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_mime_filter_html_parent_class)->dispose (object);
}
static void
@@ -166,12 +166,11 @@ mime_filter_html_complete (CamelMimeFilter *mime_filter,
}
static void
-mime_filter_html_class_init (CamelMimeFilterHTMLClass *class)
+camel_mime_filter_html_class_init (CamelMimeFilterHTMLClass *class)
{
GObjectClass *object_class;
CamelMimeFilterClass *mime_filter_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelMimeFilterHTMLPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -184,30 +183,12 @@ mime_filter_html_class_init (CamelMimeFilterHTMLClass *class)
}
static void
-mime_filter_html_init (CamelMimeFilterHTML *filter)
+camel_mime_filter_html_init (CamelMimeFilterHTML *filter)
{
filter->priv = CAMEL_MIME_FILTER_HTML_GET_PRIVATE (filter);
filter->priv->ctxt = camel_html_parser_new ();
}
-GType
-camel_mime_filter_html_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_MIME_FILTER,
- "CamelMimeFilterHTML",
- sizeof (CamelMimeFilterHTMLClass),
- (GClassInitFunc) mime_filter_html_class_init,
- sizeof (CamelMimeFilterHTML),
- (GInstanceInitFunc) mime_filter_html_init,
- 0);
-
- return type;
-}
-
/**
* camel_mime_filter_html_new:
*
diff --git a/camel/camel-mime-filter-index.c b/camel/camel-mime-filter-index.c
index 0c6e3a5..47c15dd 100644
--- a/camel/camel-mime-filter-index.c
+++ b/camel/camel-mime-filter-index.c
@@ -30,7 +30,7 @@ struct _CamelMimeFilterIndexPrivate {
CamelIndexName *name;
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelMimeFilterIndex, camel_mime_filter_index, CAMEL_TYPE_MIME_FILTER)
static void
mime_filter_index_dispose (GObject *object)
@@ -50,7 +50,7 @@ mime_filter_index_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_mime_filter_index_parent_class)->dispose (object);
}
static void
@@ -105,12 +105,11 @@ donothing:
}
static void
-mime_filter_index_class_init (CamelMimeFilterIndexClass *class)
+camel_mime_filter_index_class_init (CamelMimeFilterIndexClass *class)
{
GObjectClass *object_class;
CamelMimeFilterClass *mime_filter_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelMimeFilterIndexPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -122,29 +121,11 @@ mime_filter_index_class_init (CamelMimeFilterIndexClass *class)
}
static void
-mime_filter_index_init (CamelMimeFilterIndex *filter)
+camel_mime_filter_index_init (CamelMimeFilterIndex *filter)
{
filter->priv = CAMEL_MIME_FILTER_INDEX_GET_PRIVATE (filter);
}
-GType
-camel_mime_filter_index_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_MIME_FILTER,
- "CamelMimeFilterIndex",
- sizeof (CamelMimeFilterIndexClass),
- (GClassInitFunc) mime_filter_index_class_init,
- sizeof (CamelMimeFilterIndex),
- (GInstanceInitFunc) mime_filter_index_init,
- 0);
-
- return type;
-}
-
/**
* camel_mime_filter_index_new:
* @index: a #CamelIndex object
diff --git a/camel/camel-mime-filter-linewrap.c b/camel/camel-mime-filter-linewrap.c
index 2bd2d9e..0449d89 100644
--- a/camel/camel-mime-filter-linewrap.c
+++ b/camel/camel-mime-filter-linewrap.c
@@ -39,7 +39,7 @@ struct _CamelMimeFilterLinewrapPrivate {
guint32 flags;
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelMimeFilterLinewrap, camel_mime_filter_linewrap, CAMEL_TYPE_MIME_FILTER)
static void
mime_filter_linewrap_filter (CamelMimeFilter *mime_filter,
@@ -164,11 +164,10 @@ mime_filter_linewrap_reset (CamelMimeFilter *mime_filter)
}
static void
-mime_filter_linewrap_class_init (CamelMimeFilterLinewrapClass *class)
+camel_mime_filter_linewrap_class_init (CamelMimeFilterLinewrapClass *class)
{
CamelMimeFilterClass *mime_filter_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelMimeFilterLinewrapPrivate));
mime_filter_class = CAMEL_MIME_FILTER_CLASS (class);
@@ -178,29 +177,11 @@ mime_filter_linewrap_class_init (CamelMimeFilterLinewrapClass *class)
}
static void
-mime_filter_linewrap_init (CamelMimeFilterLinewrap *filter)
+camel_mime_filter_linewrap_init (CamelMimeFilterLinewrap *filter)
{
filter->priv = CAMEL_MIME_FILTER_LINEWRAP_GET_PRIVATE (filter);
}
-GType
-camel_mime_filter_linewrap_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_MIME_FILTER,
- "CamelMimeFilterLinewrap",
- sizeof (CamelMimeFilterLinewrapClass),
- (GClassInitFunc) mime_filter_linewrap_class_init,
- sizeof (CamelMimeFilterLinewrap),
- (GInstanceInitFunc) mime_filter_linewrap_init,
- 0);
-
- return type;
-}
-
CamelMimeFilter *
camel_mime_filter_linewrap_new (guint preferred_len,
guint max_len,
diff --git a/camel/camel-mime-filter-pgp.c b/camel/camel-mime-filter-pgp.c
index d91f4a2..c9a539a 100644
--- a/camel/camel-mime-filter-pgp.c
+++ b/camel/camel-mime-filter-pgp.c
@@ -55,7 +55,7 @@ enum {
PGP_FOOTER
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelMimeFilterPgp, camel_mime_filter_pgp, CAMEL_TYPE_MIME_FILTER)
static void
mime_filter_pgp_run (CamelMimeFilter *mime_filter,
@@ -189,11 +189,10 @@ mime_filter_pgp_reset (CamelMimeFilter *mime_filter)
}
static void
-mime_filter_pgp_class_init (CamelMimeFilterPgpClass *class)
+camel_mime_filter_pgp_class_init (CamelMimeFilterPgpClass *class)
{
CamelMimeFilterClass *mime_filter_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelMimeFilterPgpPrivate));
mime_filter_class = CAMEL_MIME_FILTER_CLASS (class);
@@ -203,29 +202,11 @@ mime_filter_pgp_class_init (CamelMimeFilterPgpClass *class)
}
static void
-mime_filter_pgp_init (CamelMimeFilterPgp *filter)
+camel_mime_filter_pgp_init (CamelMimeFilterPgp *filter)
{
filter->priv = CAMEL_MIME_FILTER_PGP_GET_PRIVATE (filter);
}
-GType
-camel_mime_filter_pgp_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_MIME_FILTER,
- "CamelMimeFilterPgp",
- sizeof (CamelMimeFilterPgpClass),
- (GClassInitFunc) mime_filter_pgp_class_init,
- sizeof (CamelMimeFilterPgp),
- (GInstanceInitFunc) mime_filter_pgp_init,
- 0);
-
- return type;
-}
-
CamelMimeFilter *
camel_mime_filter_pgp_new (void)
{
diff --git a/camel/camel-mime-filter-progress.c b/camel/camel-mime-filter-progress.c
index 965618a..696bc14 100644
--- a/camel/camel-mime-filter-progress.c
+++ b/camel/camel-mime-filter-progress.c
@@ -42,7 +42,7 @@ struct _CamelMimeFilterProgressPrivate {
gsize count;
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelMimeFilterProgress, camel_mime_filter_progress, CAMEL_TYPE_MIME_FILTER)
static void
mime_filter_progress_filter (CamelMimeFilter *filter,
@@ -95,11 +95,10 @@ mime_filter_progress_reset (CamelMimeFilter *mime_filter)
}
static void
-mime_filter_progress_class_init (CamelMimeFilterProgressClass *class)
+camel_mime_filter_progress_class_init (CamelMimeFilterProgressClass *class)
{
CamelMimeFilterClass *mime_filter_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelMimeFilterProgressPrivate));
mime_filter_class = CAMEL_MIME_FILTER_CLASS (class);
@@ -109,29 +108,11 @@ mime_filter_progress_class_init (CamelMimeFilterProgressClass *class)
}
static void
-mime_filter_progress_init (CamelMimeFilterProgress *filter)
+camel_mime_filter_progress_init (CamelMimeFilterProgress *filter)
{
filter->priv = CAMEL_MIME_FILTER_PROGRESS_GET_PRIVATE (filter);
}
-GType
-camel_mime_filter_progress_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_MIME_FILTER,
- "CamelMimeFilterProgress",
- sizeof (CamelMimeFilterProgressClass),
- (GClassInitFunc) mime_filter_progress_class_init,
- sizeof (CamelMimeFilterProgress),
- (GInstanceInitFunc) mime_filter_progress_init,
- 0);
-
- return type;
-}
-
/**
* camel_mime_filter_progress_new:
* @operation: a #CamelOperation
diff --git a/camel/camel-mime-filter-save.c b/camel/camel-mime-filter-save.c
index 1b98b89..7c30913 100644
--- a/camel/camel-mime-filter-save.c
+++ b/camel/camel-mime-filter-save.c
@@ -35,7 +35,7 @@ struct _CamelMimeFilterSavePrivate {
CamelStream *stream;
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelMimeFilterSave, camel_mime_filter_save, CAMEL_TYPE_MIME_FILTER)
static void
mime_filter_save_filter (CamelMimeFilter *mime_filter,
@@ -74,11 +74,10 @@ mime_filter_save_complete (CamelMimeFilter *mime_filter,
}
static void
-mime_filter_save_class_init (CamelMimeFilterSaveClass *class)
+camel_mime_filter_save_class_init (CamelMimeFilterSaveClass *class)
{
CamelMimeFilterClass *mime_filter_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelMimeFilterSavePrivate));
mime_filter_class = CAMEL_MIME_FILTER_CLASS (class);
@@ -87,29 +86,11 @@ mime_filter_save_class_init (CamelMimeFilterSaveClass *class)
}
static void
-mime_filter_save_init (CamelMimeFilterSave *filter)
+camel_mime_filter_save_init (CamelMimeFilterSave *filter)
{
filter->priv = CAMEL_MIME_FILTER_SAVE_GET_PRIVATE (filter);
}
-GType
-camel_mime_filter_save_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_MIME_FILTER,
- "CamelMimeFilterSave",
- sizeof (CamelMimeFilterSaveClass),
- (GClassInitFunc) mime_filter_save_class_init,
- sizeof (CamelMimeFilterSave),
- (GInstanceInitFunc) mime_filter_save_init,
- 0);
-
- return type;
-}
-
/**
* camel_mime_filter_save_new:
* @stream: a #CamelStream object
diff --git a/camel/camel-mime-filter-tohtml.c b/camel/camel-mime-filter-tohtml.c
index 0b06614..bf96d04 100644
--- a/camel/camel-mime-filter-tohtml.c
+++ b/camel/camel-mime-filter-tohtml.c
@@ -83,7 +83,7 @@ static struct {
{ CONVERT_ADDRSPEC, { "@", "mailto:", camel_url_addrspec_start, camel_url_addrspec_end } },
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelMimeFilterToHTML, camel_mime_filter_tohtml, CAMEL_TYPE_MIME_FILTER)
static gchar *
check_size (CamelMimeFilter *mime_filter,
@@ -402,7 +402,7 @@ mime_filter_tohtml_finalize (GObject *object)
camel_url_scanner_free (priv->scanner);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_mime_filter_tohtml_parent_class)->finalize (object);
}
static void
@@ -445,12 +445,11 @@ mime_filter_tohtml_reset (CamelMimeFilter *mime_filter)
}
static void
-mime_filter_tohtml_class_init (CamelMimeFilterToHTMLClass *class)
+camel_mime_filter_tohtml_class_init (CamelMimeFilterToHTMLClass *class)
{
GObjectClass *object_class;
CamelMimeFilterClass *filter_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelMimeFilterToHTMLPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -463,31 +462,13 @@ mime_filter_tohtml_class_init (CamelMimeFilterToHTMLClass *class)
}
static void
-mime_filter_tohtml_init (CamelMimeFilterToHTML *filter)
+camel_mime_filter_tohtml_init (CamelMimeFilterToHTML *filter)
{
filter->priv = CAMEL_MIME_FILTER_TOHTML_GET_PRIVATE (filter);
filter->priv->scanner = camel_url_scanner_new ();
}
-GType
-camel_mime_filter_tohtml_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_MIME_FILTER,
- "CamelMimeFilterToHTML",
- sizeof (CamelMimeFilterToHTMLClass),
- (GClassInitFunc) mime_filter_tohtml_class_init,
- sizeof (CamelMimeFilterToHTML),
- (GInstanceInitFunc) mime_filter_tohtml_init,
- 0);
-
- return type;
-}
-
/**
* camel_mime_filter_tohtml_new:
* @flags: bitwise flags defining the behaviour
diff --git a/camel/camel-mime-filter-windows.c b/camel/camel-mime-filter-windows.c
index ad6590a..ffe4bdd 100644
--- a/camel/camel-mime-filter-windows.c
+++ b/camel/camel-mime-filter-windows.c
@@ -43,7 +43,7 @@ struct _CamelMimeFilterWindowsPrivate {
gchar *claimed_charset;
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelMimeFilterWindows, camel_mime_filter_windows, CAMEL_TYPE_MIME_FILTER)
static void
mime_filter_windows_finalize (GObject *object)
@@ -55,7 +55,7 @@ mime_filter_windows_finalize (GObject *object)
g_free (priv->claimed_charset);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_mime_filter_windows_parent_class)->finalize (object);
}
static void
@@ -118,12 +118,11 @@ mime_filter_windows_reset (CamelMimeFilter *mime_filter)
}
static void
-mime_filter_windows_class_init (CamelMimeFilterWindowsClass *class)
+camel_mime_filter_windows_class_init (CamelMimeFilterWindowsClass *class)
{
GObjectClass *object_class;
CamelMimeFilterClass *mime_filter_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelMimeFilterWindowsPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -136,29 +135,11 @@ mime_filter_windows_class_init (CamelMimeFilterWindowsClass *class)
}
static void
-mime_filter_windows_init (CamelMimeFilterWindows *filter)
+camel_mime_filter_windows_init (CamelMimeFilterWindows *filter)
{
filter->priv = CAMEL_MIME_FILTER_WINDOWS_GET_PRIVATE (filter);
}
-GType
-camel_mime_filter_windows_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_MIME_FILTER,
- "CamelMimeFilterWindows",
- sizeof (CamelMimeFilterWindowsClass),
- (GClassInitFunc) mime_filter_windows_class_init,
- sizeof (CamelMimeFilterWindows),
- (GInstanceInitFunc) mime_filter_windows_init,
- 0);
-
- return type;
-}
-
/**
* camel_mime_filter_windows_new:
* @claimed_charset: ISO charset name
diff --git a/camel/camel-mime-filter-yenc.c b/camel/camel-mime-filter-yenc.c
index 3f81cc5..59fd869 100644
--- a/camel/camel-mime-filter-yenc.c
+++ b/camel/camel-mime-filter-yenc.c
@@ -43,7 +43,7 @@ struct _CamelMimeFilterYencPrivate {
guint32 crc;
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelMimeFilterYenc, camel_mime_filter_yenc, CAMEL_TYPE_MIME_FILTER)
/* here we do all of the basic yEnc filtering */
static void
@@ -209,11 +209,10 @@ mime_filter_yenc_reset (CamelMimeFilter *mime_filter)
}
static void
-mime_filter_yenc_class_init (CamelMimeFilterYencClass *class)
+camel_mime_filter_yenc_class_init (CamelMimeFilterYencClass *class)
{
CamelMimeFilterClass *mime_filter_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelMimeFilterYencPrivate));
mime_filter_class = CAMEL_MIME_FILTER_CLASS (class);
@@ -223,7 +222,7 @@ mime_filter_yenc_class_init (CamelMimeFilterYencClass *class)
}
static void
-mime_filter_yenc_init (CamelMimeFilterYenc *filter)
+camel_mime_filter_yenc_init (CamelMimeFilterYenc *filter)
{
filter->priv = CAMEL_MIME_FILTER_YENC_GET_PRIVATE (filter);
@@ -232,24 +231,6 @@ mime_filter_yenc_init (CamelMimeFilterYenc *filter)
filter->priv->crc = CAMEL_MIME_YENCODE_CRC_INIT;
}
-GType
-camel_mime_filter_yenc_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_MIME_FILTER,
- "CamelMimeFilterYenc",
- sizeof (CamelMimeFilterYencClass),
- (GClassInitFunc) mime_filter_yenc_class_init,
- sizeof (CamelMimeFilterYenc),
- (GInstanceInitFunc) mime_filter_yenc_init,
- 0);
-
- return type;
-}
-
/**
* camel_mime_filter_yenc_new:
* @direction: encode direction
diff --git a/camel/camel-mime-filter.c b/camel/camel-mime-filter.c
index 4cf4fab..f762549 100644
--- a/camel/camel-mime-filter.c
+++ b/camel/camel-mime-filter.c
@@ -41,7 +41,7 @@ struct _CamelMimeFilterPrivate {
#define PRE_HEAD (64)
#define BACK_HEAD (64)
-static gpointer parent_class;
+G_DEFINE_ABSTRACT_TYPE (CamelMimeFilter, camel_mime_filter, CAMEL_TYPE_OBJECT)
static void
mime_filter_finalize (GObject *object)
@@ -55,7 +55,7 @@ mime_filter_finalize (GObject *object)
g_free (mime_filter->priv->inbuf);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_mime_filter_parent_class)->finalize (object);
}
static void
@@ -71,11 +71,10 @@ mime_filter_complete (CamelMimeFilter *mime_filter,
}
static void
-mime_filter_class_init (CamelMimeFilterClass *class)
+camel_mime_filter_class_init (CamelMimeFilterClass *class)
{
GObjectClass *object_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelMimeFilterPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -85,7 +84,7 @@ mime_filter_class_init (CamelMimeFilterClass *class)
}
static void
-mime_filter_init (CamelMimeFilter *mime_filter)
+camel_mime_filter_init (CamelMimeFilter *mime_filter)
{
mime_filter->priv = CAMEL_MIME_FILTER_GET_PRIVATE (mime_filter);
@@ -98,24 +97,6 @@ mime_filter_init (CamelMimeFilter *mime_filter)
mime_filter->backlen = 0;
}
-GType
-camel_mime_filter_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelMimeFilter",
- sizeof (CamelMimeFilterClass),
- (GClassInitFunc) mime_filter_class_init,
- sizeof (CamelMimeFilter),
- (GInstanceInitFunc) mime_filter_init,
- 0);
-
- return type;
-}
-
/**
* camel_mime_filter_new:
*
diff --git a/camel/camel-mime-message.c b/camel/camel-mime-message.c
index 3efe267..e46fb10 100644
--- a/camel/camel-mime-message.c
+++ b/camel/camel-mime-message.c
@@ -84,9 +84,10 @@ static const gchar *recipient_names[] = {
"To", "Cc", "Bcc", "Resent-To", "Resent-Cc", "Resent-Bcc", NULL
};
-static gpointer parent_class;
static GHashTable *header_name_table;
+G_DEFINE_TYPE (CamelMimeMessage, camel_mime_message, CAMEL_TYPE_MIME_PART)
+
/* FIXME: check format of fields. */
static gboolean
process_header (CamelMedium *medium,
@@ -196,7 +197,7 @@ mime_message_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_mime_message_parent_class)->dispose (object);
}
static void
@@ -212,7 +213,7 @@ mime_message_finalize (GObject *object)
g_hash_table_destroy (message->recipients);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_mime_message_parent_class)->finalize (object);
}
static gssize
@@ -244,7 +245,7 @@ mime_message_write_to_stream (CamelDataWrapper *data_wrapper,
camel_medium_set_header ((CamelMedium *)mm, "Mime-Version", "1.0");
/* Chain up to parent's write_to_stream() method. */
- data_wrapper_class = CAMEL_DATA_WRAPPER_CLASS (parent_class);
+ data_wrapper_class = CAMEL_DATA_WRAPPER_CLASS (camel_mime_message_parent_class);
return data_wrapper_class->write_to_stream (data_wrapper, stream, error);
}
@@ -255,7 +256,7 @@ mime_message_add_header (CamelMedium *medium,
{
CamelMediumClass *medium_class;
- medium_class = CAMEL_MEDIUM_CLASS (parent_class);
+ medium_class = CAMEL_MEDIUM_CLASS (camel_mime_message_parent_class);
/* if we process it, then it must be forced unique as well ... */
if (process_header (medium, name, value))
@@ -272,7 +273,7 @@ mime_message_set_header (CamelMedium *medium,
process_header (medium, name, value);
/* Chain up to parent's set_header() method. */
- CAMEL_MEDIUM_CLASS (parent_class)->set_header (medium, name, value);
+ CAMEL_MEDIUM_CLASS (camel_mime_message_parent_class)->set_header (medium, name, value);
}
static void
@@ -282,7 +283,7 @@ mime_message_remove_header (CamelMedium *medium,
process_header (medium, name, NULL);
/* Chain up to parent's remove_header() method. */
- CAMEL_MEDIUM_CLASS (parent_class)->remove_header (medium, name);
+ CAMEL_MEDIUM_CLASS (camel_mime_message_parent_class)->remove_header (medium, name);
}
static gint
@@ -302,7 +303,7 @@ mime_message_construct_from_parser (CamelMimePart *dw,
d(printf("mime_message::construct_from_parser()\n"));
/* let the mime-part construct the guts ... */
- mime_part_class = CAMEL_MIME_PART_CLASS (parent_class);
+ mime_part_class = CAMEL_MIME_PART_CLASS (camel_mime_message_parent_class);
ret = mime_part_class->construct_from_parser (dw, mp, error);
if (ret == -1)
@@ -334,7 +335,7 @@ mime_message_construct_from_parser (CamelMimePart *dw,
}
static void
-mime_message_class_init (CamelMimeMessageClass *class)
+camel_mime_message_class_init (CamelMimeMessageClass *class)
{
GObjectClass *object_class;
CamelDataWrapperClass *data_wrapper_class;
@@ -342,8 +343,6 @@ mime_message_class_init (CamelMimeMessageClass *class)
CamelMediumClass *medium_class;
gint ii;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->dispose = mime_message_dispose;
object_class->finalize = mime_message_finalize;
@@ -371,7 +370,7 @@ mime_message_class_init (CamelMimeMessageClass *class)
}
static void
-mime_message_init (CamelMimeMessage *mime_message)
+camel_mime_message_init (CamelMimeMessage *mime_message)
{
gint ii;
@@ -394,24 +393,6 @@ mime_message_init (CamelMimeMessage *mime_message)
mime_message->message_id = NULL;
}
-GType
-camel_mime_message_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_MIME_PART,
- "CamelMimeMessage",
- sizeof (CamelMimeMessageClass),
- (GClassInitFunc) mime_message_class_init,
- sizeof (CamelMimeMessage),
- (GInstanceInitFunc) mime_message_init,
- 0);
-
- return type;
-}
-
/**
* camel_mime_message_new:
*
@@ -454,7 +435,7 @@ camel_mime_message_set_date (CamelMimeMessage *message, time_t date, gint offse
message->date_offset = offset;
datestr = camel_header_format_date (date, offset);
- CAMEL_MEDIUM_CLASS (parent_class)->set_header ((CamelMedium *)message, "Date", datestr);
+ CAMEL_MEDIUM_CLASS (camel_mime_message_parent_class)->set_header ((CamelMedium *)message, "Date", datestr);
g_free (datestr);
}
@@ -530,7 +511,7 @@ camel_mime_message_set_message_id (CamelMimeMessage *mime_message, const gchar *
mime_message->message_id = id;
id = g_strdup_printf ("<%s>", mime_message->message_id);
- CAMEL_MEDIUM_CLASS (parent_class)->set_header (CAMEL_MEDIUM (mime_message), "Message-ID", id);
+ CAMEL_MEDIUM_CLASS (camel_mime_message_parent_class)->set_header (CAMEL_MEDIUM (mime_message), "Message-ID", id);
g_free (id);
}
@@ -572,13 +553,13 @@ camel_mime_message_set_reply_to (CamelMimeMessage *msg, const CamelInternetAddre
}
if (reply_to == NULL) {
- CAMEL_MEDIUM_CLASS (parent_class)->remove_header (CAMEL_MEDIUM (msg), "Reply-To");
+ CAMEL_MEDIUM_CLASS (camel_mime_message_parent_class)->remove_header (CAMEL_MEDIUM (msg), "Reply-To");
return;
}
msg->reply_to = (CamelInternetAddress *)camel_address_new_clone ((CamelAddress *)reply_to);
addr = camel_address_encode ((CamelAddress *)msg->reply_to);
- CAMEL_MEDIUM_CLASS (parent_class)->set_header (CAMEL_MEDIUM (msg), "Reply-To", addr);
+ CAMEL_MEDIUM_CLASS (camel_mime_message_parent_class)->set_header (CAMEL_MEDIUM (msg), "Reply-To", addr);
g_free (addr);
}
@@ -626,7 +607,7 @@ camel_mime_message_set_subject (CamelMimeMessage *message, const gchar *subject)
text = NULL;
}
- CAMEL_MEDIUM_CLASS (parent_class)->set_header (CAMEL_MEDIUM (message), "Subject", text);
+ CAMEL_MEDIUM_CLASS (camel_mime_message_parent_class)->set_header (CAMEL_MEDIUM (message), "Subject", text);
g_free (text);
}
@@ -672,13 +653,13 @@ camel_mime_message_set_from (CamelMimeMessage *msg, const CamelInternetAddress *
}
if (from == NULL || camel_address_length((CamelAddress *)from) == 0) {
- CAMEL_MEDIUM_CLASS(parent_class)->remove_header(CAMEL_MEDIUM(msg), "From");
+ CAMEL_MEDIUM_CLASS(camel_mime_message_parent_class)->remove_header(CAMEL_MEDIUM(msg), "From");
return;
}
msg->from = (CamelInternetAddress *)camel_address_new_clone((CamelAddress *)from);
addr = camel_address_encode((CamelAddress *)msg->from);
- CAMEL_MEDIUM_CLASS (parent_class)->set_header(CAMEL_MEDIUM(msg), "From", addr);
+ CAMEL_MEDIUM_CLASS (camel_mime_message_parent_class)->set_header(CAMEL_MEDIUM(msg), "From", addr);
g_free(addr);
}
@@ -726,7 +707,7 @@ camel_mime_message_set_recipients(CamelMimeMessage *mime_message, const gchar *t
if (r == NULL || camel_address_length ((CamelAddress *)r) == 0) {
camel_address_remove ((CamelAddress *)addr, -1);
- CAMEL_MEDIUM_CLASS (parent_class)->remove_header (CAMEL_MEDIUM (mime_message), type);
+ CAMEL_MEDIUM_CLASS (camel_mime_message_parent_class)->remove_header (CAMEL_MEDIUM (mime_message), type);
return;
}
@@ -735,7 +716,7 @@ camel_mime_message_set_recipients(CamelMimeMessage *mime_message, const gchar *t
/* and sync our headers */
text = camel_address_encode (CAMEL_ADDRESS (addr));
- CAMEL_MEDIUM_CLASS (parent_class)->set_header (CAMEL_MEDIUM (mime_message), type, text);
+ CAMEL_MEDIUM_CLASS (camel_mime_message_parent_class)->set_header (CAMEL_MEDIUM (mime_message), type, text);
g_free(text);
}
diff --git a/camel/camel-mime-parser.c b/camel/camel-mime-parser.c
index 57443fd..7312358 100644
--- a/camel/camel-mime-parser.c
+++ b/camel/camel-mime-parser.c
@@ -150,9 +150,6 @@ static off_t folder_tell(struct _header_scan_state *s);
static gint folder_read(struct _header_scan_state *s);
static void folder_push_part(struct _header_scan_state *s, struct _header_scan_stack *h);
-static void mime_parser_class_init (CamelMimeParserClass *class);
-static void mime_parser_init (CamelMimeParser *obj);
-
#if d(!)0
static gchar *states[] = {
"CAMEL_MIME_PARSER_STATE_INITIAL",
@@ -175,7 +172,7 @@ static gchar *states[] = {
};
#endif
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelMimeParser, camel_mime_parser, CAMEL_TYPE_OBJECT)
static void
mime_parser_finalize (GObject *object)
@@ -189,44 +186,24 @@ mime_parser_finalize (GObject *object)
folder_scan_close(s);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_mime_parser_parent_class)->finalize (object);
}
static void
-mime_parser_class_init (CamelMimeParserClass *class)
+camel_mime_parser_class_init (CamelMimeParserClass *class)
{
GObjectClass *object_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->finalize = mime_parser_finalize;
}
static void
-mime_parser_init (CamelMimeParser *parser)
+camel_mime_parser_init (CamelMimeParser *parser)
{
parser->priv = folder_scan_init();
}
-GType
-camel_mime_parser_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelMimeParser",
- sizeof (CamelMimeParserClass),
- (GClassInitFunc) mime_parser_class_init,
- sizeof (CamelMimeParser),
- (GInstanceInitFunc) mime_parser_init,
- 0);
-
- return type;
-}
-
/**
* camel_mime_parser_new:
*
diff --git a/camel/camel-mime-part.c b/camel/camel-mime-part.c
index 3acdb7f..699c101 100644
--- a/camel/camel-mime-part.c
+++ b/camel/camel-mime-part.c
@@ -91,7 +91,7 @@ typedef enum {
static GHashTable *header_name_table;
static GHashTable *header_formatted_table;
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelMimePart, camel_mime_part, CAMEL_TYPE_MEDIUM)
static gssize
write_raw (CamelStream *stream,
@@ -389,7 +389,7 @@ mime_part_finalize (GObject *object)
g_queue_free (priv->raw_headers);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_mime_part_parent_class)->finalize (object);
}
static void
@@ -495,7 +495,7 @@ mime_part_set_content (CamelMedium *medium,
CamelContentType *content_type;
/* Chain up to parent's set_content() method. */
- medium_class = CAMEL_MEDIUM_CLASS (parent_class);
+ medium_class = CAMEL_MEDIUM_CLASS (camel_mime_part_parent_class);
medium_class->set_content (medium, content);
content_type = camel_data_wrapper_get_mime_type_field (content);
@@ -778,13 +778,12 @@ mime_part_construct_from_parser (CamelMimePart *mime_part,
}
static void
-mime_part_class_init (CamelMimePartClass *class)
+camel_mime_part_class_init (CamelMimePartClass *class)
{
GObjectClass *object_class;
CamelMediumClass *medium_class;
CamelDataWrapperClass *data_wrapper_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelMimePartPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -851,7 +850,7 @@ mime_part_class_init (CamelMimePartClass *class)
}
static void
-mime_part_init (CamelMimePart *mime_part)
+camel_mime_part_init (CamelMimePart *mime_part)
{
CamelDataWrapper *data_wrapper;
@@ -867,24 +866,6 @@ mime_part_init (CamelMimePart *mime_part)
data_wrapper->mime_type = camel_content_type_new ("text", "plain");
}
-GType
-camel_mime_part_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_MEDIUM,
- "CamelMimePart",
- sizeof (CamelMimePartClass),
- (GClassInitFunc) mime_part_class_init,
- sizeof (CamelMimePart),
- (GInstanceInitFunc) mime_part_init,
- 0);
-
- return type;
-}
-
/* **** Content-Description */
/**
diff --git a/camel/camel-multipart-encrypted.c b/camel/camel-multipart-encrypted.c
index 600b672..825f394 100644
--- a/camel/camel-multipart-encrypted.c
+++ b/camel/camel-multipart-encrypted.c
@@ -37,7 +37,7 @@
#include "camel-stream-fs.h"
#include "camel-stream-mem.h"
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelMultipartEncrypted, camel_multipart_encrypted, CAMEL_TYPE_MULTIPART)
static void
multipart_encrypted_dispose (GObject *object)
@@ -52,7 +52,7 @@ multipart_encrypted_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_multipart_encrypted_parent_class)->dispose (object);
}
static void
@@ -65,7 +65,7 @@ multipart_encrypted_finalize (GObject *object)
g_free (multipart->protocol);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_multipart_encrypted_parent_class)->finalize (object);
}
/* we snoop the mime type to get the protocol */
@@ -87,18 +87,16 @@ multipart_encrypted_set_mime_type_field (CamelDataWrapper *data_wrapper,
}
/* Chain up to parent's set_mime_type_field() method. */
- data_wrapper_class = CAMEL_DATA_WRAPPER_CLASS (parent_class);
+ data_wrapper_class = CAMEL_DATA_WRAPPER_CLASS (camel_multipart_encrypted_parent_class);
data_wrapper_class->set_mime_type_field (data_wrapper, mime_type);
}
static void
-multipart_encrypted_class_init (CamelMultipartEncryptedClass *class)
+camel_multipart_encrypted_class_init (CamelMultipartEncryptedClass *class)
{
GObjectClass *object_class;
CamelDataWrapperClass *data_wrapper_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->dispose = multipart_encrypted_dispose;
object_class->finalize = multipart_encrypted_finalize;
@@ -109,7 +107,7 @@ multipart_encrypted_class_init (CamelMultipartEncryptedClass *class)
}
static void
-multipart_encrypted_init (CamelMultipartEncrypted *multipart)
+camel_multipart_encrypted_init (CamelMultipartEncrypted *multipart)
{
camel_data_wrapper_set_mime_type (
CAMEL_DATA_WRAPPER (multipart), "multipart/encrypted");
@@ -117,24 +115,6 @@ multipart_encrypted_init (CamelMultipartEncrypted *multipart)
multipart->decrypted = NULL;
}
-GType
-camel_multipart_encrypted_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_MULTIPART,
- "CamelMultipartEncrypted",
- sizeof (CamelMultipartEncryptedClass),
- (GClassInitFunc) multipart_encrypted_class_init,
- sizeof (CamelMultipartEncrypted),
- (GInstanceInitFunc) multipart_encrypted_init,
- 0);
-
- return type;
-}
-
/**
* camel_multipart_encrypted_new:
*
diff --git a/camel/camel-multipart-signed.c b/camel/camel-multipart-signed.c
index ab41f83..a045d1d 100644
--- a/camel/camel-multipart-signed.c
+++ b/camel/camel-multipart-signed.c
@@ -50,7 +50,7 @@
#define d(x) /*(printf("%s(%d): ", __FILE__, __LINE__),(x))
#include <stdio.h>;*/
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelMultipartSigned, camel_multipart_signed, CAMEL_TYPE_MULTIPART)
static gint
multipart_signed_skip_content (CamelMimeParser *cmp)
@@ -214,7 +214,7 @@ multipart_signed_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_multipart_signed_parent_class)->dispose (object);
}
static void
@@ -228,7 +228,7 @@ multipart_signed_finalize (GObject *object)
g_free (multipart->micalg);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_multipart_signed_parent_class)->finalize (object);
}
static void
@@ -241,7 +241,7 @@ multipart_signed_set_mime_type_field (CamelDataWrapper *data_wrapper,
/* we snoop the mime type to get boundary and hash info */
/* Chain up to parent's set_mime_type_field() method. */
- data_wrapper_class = CAMEL_DATA_WRAPPER_CLASS (parent_class);
+ data_wrapper_class = CAMEL_DATA_WRAPPER_CLASS (camel_multipart_signed_parent_class);
data_wrapper_class->set_mime_type_field(data_wrapper, mime_type);
if (mime_type) {
@@ -501,14 +501,12 @@ multipart_signed_construct_from_parser (CamelMultipart *multipart,
}
static void
-multipart_signed_class_init (CamelMultipartSignedClass *class)
+camel_multipart_signed_class_init (CamelMultipartSignedClass *class)
{
GObjectClass *object_class;
CamelDataWrapperClass *data_wrapper_class;
CamelMultipartClass *multipart_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->dispose = multipart_signed_dispose;
object_class->finalize = multipart_signed_finalize;
@@ -530,7 +528,7 @@ multipart_signed_class_init (CamelMultipartSignedClass *class)
}
static void
-multipart_signed_init (CamelMultipartSigned *multipart)
+camel_multipart_signed_init (CamelMultipartSigned *multipart)
{
camel_data_wrapper_set_mime_type (
CAMEL_DATA_WRAPPER (multipart), "multipart/signed");
@@ -538,24 +536,6 @@ multipart_signed_init (CamelMultipartSigned *multipart)
multipart->start1 = -1;
}
-GType
-camel_multipart_signed_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_MULTIPART,
- "CamelMultipartSigned",
- sizeof (CamelMultipartSignedClass),
- (GClassInitFunc) multipart_signed_class_init,
- sizeof (CamelMultipartSigned),
- (GInstanceInitFunc) multipart_signed_init,
- 0);
-
- return type;
-}
-
/**
* camel_multipart_signed_new:
*
diff --git a/camel/camel-multipart.c b/camel/camel-multipart.c
index 1b853a5..dee33e0 100644
--- a/camel/camel-multipart.c
+++ b/camel/camel-multipart.c
@@ -37,7 +37,7 @@
#define d(x)
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelMultipart, camel_multipart, CAMEL_TYPE_DATA_WRAPPER)
static void
multipart_dispose (GObject *object)
@@ -49,7 +49,7 @@ multipart_dispose (GObject *object)
multipart->parts = NULL;
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_multipart_parent_class)->dispose (object);
}
static void
@@ -61,7 +61,7 @@ multipart_finalize (GObject *object)
g_free (multipart->postface);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_multipart_parent_class)->finalize (object);
}
/* this is MIME specific, doesn't belong here really */
@@ -141,7 +141,7 @@ multipart_is_offline (CamelDataWrapper *data_wrapper)
GList *node;
CamelDataWrapper *part;
- if (CAMEL_DATA_WRAPPER_CLASS (parent_class)->is_offline (data_wrapper))
+ if (CAMEL_DATA_WRAPPER_CLASS (camel_multipart_parent_class)->is_offline (data_wrapper))
return TRUE;
for (node = multipart->parts; node; node = node->next) {
part = node->data;
@@ -319,13 +319,11 @@ multipart_construct_from_parser (CamelMultipart *multipart,
}
static void
-multipart_class_init (CamelMultipartClass *class)
+camel_multipart_class_init (CamelMultipartClass *class)
{
GObjectClass *object_class;
CamelDataWrapperClass *data_wrapper_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->dispose = multipart_dispose;
object_class->finalize = multipart_finalize;
@@ -347,7 +345,7 @@ multipart_class_init (CamelMultipartClass *class)
}
static void
-multipart_init (CamelMultipart *multipart)
+camel_multipart_init (CamelMultipart *multipart)
{
camel_data_wrapper_set_mime_type (
CAMEL_DATA_WRAPPER (multipart), "multipart/mixed");
@@ -356,25 +354,6 @@ multipart_init (CamelMultipart *multipart)
multipart->postface = NULL;
}
-GType
-camel_multipart_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID)) {
- type = g_type_register_static_simple (
- CAMEL_TYPE_DATA_WRAPPER,
- "CamelMultipart",
- sizeof (CamelMultipartClass),
- (GClassInitFunc) multipart_class_init,
- sizeof (CamelMultipart),
- (GInstanceInitFunc) multipart_init,
- 0);
- }
-
- return type;
-}
-
/**
* camel_multipart_new:
*
diff --git a/camel/camel-news-address.c b/camel/camel-news-address.c
index 530a732..f48fca6 100644
--- a/camel/camel-news-address.c
+++ b/camel/camel-news-address.c
@@ -20,23 +20,7 @@
#include "camel-news-address.h"
-GType
-camel_news_address_get_type (void)
-{
- static guint type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_ADDRESS,
- "CamelNewsAddress",
- sizeof (CamelNewsAddressClass),
- (GClassInitFunc) NULL,
- sizeof (CamelNewsAddress),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
-}
+G_DEFINE_TYPE (CamelNewsAddress, camel_news_address, CAMEL_TYPE_ADDRESS)
/**
* camel_news_address_new:
diff --git a/camel/camel-nntp-address.c b/camel/camel-nntp-address.c
index 46e30c3..d583b5b 100644
--- a/camel/camel-nntp-address.c
+++ b/camel/camel-nntp-address.c
@@ -31,13 +31,13 @@ static gchar * nntp_address_encode (CamelAddress *);
static gint nntp_address_cat (CamelAddress *dest, CamelAddress *source);
static void nntp_address_remove (CamelAddress *, gint index);
-static gpointer parent_class;
-
struct _address {
gchar *name;
gchar *address;
};
+G_DEFINE_TYPE (CamelNNTPAddress, camel_nntp_address, CAMEL_TYPE_ADDRESS)
+
/* since newsgropus are 7bit ascii, decode/unformat are the same */
static gint
nntp_address_decode (CamelAddress *address,
@@ -111,12 +111,10 @@ nntp_address_remove (CamelAddress *address,
}
static void
-nntp_address_class_init(CamelNNTPAddressClass *class)
+camel_nntp_address_class_init (CamelNNTPAddressClass *class)
{
CamelAddressClass *address_class;
- parent_class = g_type_class_peek_parent (class);
-
address_class = CAMEL_ADDRESS_CLASS (class);
address_class->decode = nntp_address_decode;
address_class->encode = nntp_address_encode;
@@ -126,22 +124,9 @@ nntp_address_class_init(CamelNNTPAddressClass *class)
address_class->cat = nntp_address_cat;
}
-GType
-camel_nntp_address_get_type(void)
+static void
+camel_nntp_address_init (CamelNNTPAddress *nntp_address)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_ADDRESS,
- "CamelNNTPAddress",
- sizeof (CamelNNTPAddressClass),
- (GClassInitFunc) nntp_address_class_init,
- sizeof (CamelNNTPAddress),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
/**
diff --git a/camel/camel-object.c b/camel/camel-object.c
index 1b15dd5..965cfaf 100644
--- a/camel/camel-object.c
+++ b/camel/camel-object.c
@@ -38,7 +38,7 @@
#define b(x) /* object bag */
#define h(x) /* hooks */
-static gpointer parent_class;
+G_DEFINE_ABSTRACT_TYPE (CamelObject, camel_object, G_TYPE_OBJECT)
/* ** Quickie type system ************************************************* */
@@ -514,16 +514,14 @@ object_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_object_parent_class)->dispose (object);
}
static void
-object_class_init (CamelObjectClass *class)
+camel_object_class_init (CamelObjectClass *class)
{
GObjectClass *object_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->dispose = object_dispose;
@@ -541,22 +539,9 @@ object_class_init (CamelObjectClass *class)
camel_object_class_add_event (class, "finalize", NULL);
}
-GType
-camel_object_get_type(void)
+static void
+camel_object_init (CamelObject *object)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- G_TYPE_OBJECT,
- "CamelObject",
- sizeof (CamelObjectClass),
- (GClassInitFunc) object_class_init,
- sizeof (CamelObject),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
GQuark
diff --git a/camel/camel-offline-folder.c b/camel/camel-offline-folder.c
index e85772d..5daad5e 100644
--- a/camel/camel-offline-folder.c
+++ b/camel/camel-offline-folder.c
@@ -31,8 +31,6 @@
#include "camel-service.h"
#include "camel-session.h"
-static gpointer parent_class;
-
static GSList *offline_folder_props = NULL;
static CamelProperty offline_prop_list[] = {
@@ -46,6 +44,8 @@ struct _offline_downsync_msg {
CamelFolderChangeInfo *changes;
};
+G_DEFINE_TYPE (CamelOfflineFolder, camel_offline_folder, CAMEL_TYPE_FOLDER)
+
static void
offline_downsync_sync (CamelSession *session, CamelSessionThreadMsg *mm)
{
@@ -125,7 +125,7 @@ offline_folder_getv (CamelObject *object,
case CAMEL_FOLDER_ARG_PROPERTIES:
props.argc = 1;
props.argv[0] = *arg;
- ((CamelObjectClass *) parent_class)->getv (object, error, &props);
+ ((CamelObjectClass *) camel_offline_folder_parent_class)->getv (object, error, &props);
*arg->ca_ptr = g_slist_concat (*arg->ca_ptr, g_slist_copy (offline_folder_props));
break;
case CAMEL_OFFLINE_FOLDER_ARG_SYNC_OFFLINE:
@@ -140,7 +140,7 @@ offline_folder_getv (CamelObject *object,
}
if (count)
- return ((CamelObjectClass *) parent_class)->getv (object, error, args);
+ return ((CamelObjectClass *) camel_offline_folder_parent_class)->getv (object, error, args);
return 0;
}
@@ -177,7 +177,7 @@ offline_folder_setv (CamelObject *object,
if (save)
camel_object_state_write (object);
- return ((CamelObjectClass *) parent_class)->setv (object, error, args);
+ return ((CamelObjectClass *) camel_offline_folder_parent_class)->setv (object, error, args);
}
static void
@@ -223,13 +223,11 @@ done:
}
static void
-offline_folder_class_init (CamelOfflineFolderClass *class)
+camel_offline_folder_class_init (CamelOfflineFolderClass *class)
{
CamelObjectClass *camel_object_class;
gint ii;
- parent_class = g_type_class_peek_parent (class);
-
camel_object_class = CAMEL_OBJECT_CLASS (class);
camel_object_class->getv = offline_folder_getv;
camel_object_class->setv = offline_folder_setv;
@@ -246,31 +244,13 @@ offline_folder_class_init (CamelOfflineFolderClass *class)
}
static void
-offline_folder_init (CamelOfflineFolder *folder)
+camel_offline_folder_init (CamelOfflineFolder *folder)
{
camel_object_hook_event (
folder, "folder_changed",
(CamelObjectEventHookFunc) offline_folder_changed, NULL);
}
-GType
-camel_offline_folder_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_FOLDER,
- "CamelOfflineFolder",
- sizeof (CamelOfflineFolderClass),
- (GClassInitFunc) offline_folder_class_init,
- sizeof (CamelOfflineFolder),
- (GInstanceInitFunc) offline_folder_init,
- 0);
-
- return type;
-}
-
/**
* camel_offline_folder_downsync:
* @offline: a #CamelOfflineFolder object
diff --git a/camel/camel-offline-journal.c b/camel/camel-offline-journal.c
index 376715b..e65f190 100644
--- a/camel/camel-offline-journal.c
+++ b/camel/camel-offline-journal.c
@@ -45,7 +45,7 @@
#define d(x)
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelOfflineJournal, camel_offline_journal, CAMEL_TYPE_OBJECT)
static void
offline_journal_finalize (GObject *object)
@@ -59,46 +59,26 @@ offline_journal_finalize (GObject *object)
CAMEL_OFFLINE_JOURNAL_GET_CLASS (journal)->entry_free (journal, entry);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_offline_journal_parent_class)->finalize (object);
}
static void
-offline_journal_class_init (CamelOfflineJournalClass *class)
+camel_offline_journal_class_init (CamelOfflineJournalClass *class)
{
GObjectClass *object_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->finalize = offline_journal_finalize;
}
static void
-offline_journal_init (CamelOfflineJournal *journal)
+camel_offline_journal_init (CamelOfflineJournal *journal)
{
journal->folder = NULL;
journal->filename = NULL;
camel_dlist_init (&journal->queue);
}
-GType
-camel_offline_journal_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelOfflineJournal",
- sizeof (CamelOfflineJournalClass),
- (GClassInitFunc) offline_journal_class_init,
- sizeof (CamelOfflineJournal),
- (GInstanceInitFunc) offline_journal_init,
- 0);
-
- return type;
-}
-
/**
* camel_offline_journal_construct:
* @journal: a #CamelOfflineJournal object
diff --git a/camel/camel-offline-store.c b/camel/camel-offline-store.c
index 32a9920..80e7a09 100644
--- a/camel/camel-offline-store.c
+++ b/camel/camel-offline-store.c
@@ -31,7 +31,7 @@
#include "camel-offline-store.h"
#include "camel-session.h"
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelOfflineStore, camel_offline_store, CAMEL_TYPE_STORE)
static gboolean
offline_store_construct (CamelService *service,
@@ -44,7 +44,7 @@ offline_store_construct (CamelService *service,
CamelServiceClass *service_class;
/* Chain up to parent's construct() method. */
- service_class = CAMEL_SERVICE_CLASS (parent_class);
+ service_class = CAMEL_SERVICE_CLASS (camel_offline_store_parent_class);
if (!service_class->construct (service, session, provider, url, error))
return FALSE;
@@ -56,40 +56,20 @@ offline_store_construct (CamelService *service,
}
static void
-offline_store_class_init (CamelOfflineStoreClass *class)
+camel_offline_store_class_init (CamelOfflineStoreClass *class)
{
CamelServiceClass *service_class;
- parent_class = g_type_class_peek_parent (class);
-
service_class = CAMEL_SERVICE_CLASS (class);
service_class->construct = offline_store_construct;
}
static void
-offline_store_init (CamelOfflineStore *store)
+camel_offline_store_init (CamelOfflineStore *store)
{
store->state = CAMEL_OFFLINE_STORE_NETWORK_AVAIL;
}
-GType
-camel_offline_store_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_STORE,
- "CamelOfflineStore",
- sizeof (CamelOfflineStoreClass),
- (GClassInitFunc) offline_store_class_init,
- sizeof (CamelOfflineStore),
- (GInstanceInitFunc) offline_store_init,
- 0);
-
- return type;
-}
-
/**
* camel_offline_store_get_network_state:
* @store: a #CamelOfflineStore object
diff --git a/camel/camel-partition-table.c b/camel/camel-partition-table.c
index 1fcc787..adfe676 100644
--- a/camel/camel-partition-table.c
+++ b/camel/camel-partition-table.c
@@ -56,7 +56,7 @@ struct _CamelPartitionTablePrivate {
#define CAMEL_PARTITION_TABLE_LOCK(kf, lock) (pthread_mutex_lock (&(kf)->priv->lock))
#define CAMEL_PARTITION_TABLE_UNLOCK(kf, lock) (pthread_mutex_unlock (&(kf)->priv->lock))
-static gpointer partition_table_parent_class;
+G_DEFINE_TYPE (CamelPartitionTable, camel_partition_table, CAMEL_TYPE_OBJECT)
static void
partition_table_finalize (GObject *object)
@@ -77,15 +77,14 @@ partition_table_finalize (GObject *object)
pthread_mutex_destroy (&table->priv->lock);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (partition_table_parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_partition_table_parent_class)->finalize (object);
}
static void
-partition_table_class_init (CamelPartitionTableClass *class)
+camel_partition_table_class_init (CamelPartitionTableClass *class)
{
GObjectClass *object_class;
- partition_table_parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelPartitionTablePrivate));
object_class = G_OBJECT_CLASS (class);
@@ -93,7 +92,7 @@ partition_table_class_init (CamelPartitionTableClass *class)
}
static void
-partition_table_init (CamelPartitionTable *cpi)
+camel_partition_table_init (CamelPartitionTable *cpi)
{
cpi->priv = CAMEL_PARTITION_TABLE_GET_PRIVATE (cpi);
@@ -101,24 +100,6 @@ partition_table_init (CamelPartitionTable *cpi)
pthread_mutex_init (&cpi->priv->lock, NULL);
}
-GType
-camel_partition_table_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelPartitionTable",
- sizeof (CamelPartitionTableClass),
- (GClassInitFunc) partition_table_class_init,
- sizeof (CamelPartitionTable),
- (GInstanceInitFunc) partition_table_init,
- 0);
-
- return type;
-}
-
/* ********************************************************************** */
/*
@@ -625,7 +606,7 @@ struct _CamelKeyTablePrivate {
#define CAMEL_KEY_TABLE_LOCK(kf, lock) (pthread_mutex_lock (&(kf)->priv->lock))
#define CAMEL_KEY_TABLE_UNLOCK(kf, lock) (pthread_mutex_unlock (&(kf)->priv->lock))
-static gpointer key_table_parent_class;
+G_DEFINE_TYPE (CamelKeyTable, camel_key_table, CAMEL_TYPE_OBJECT)
static void
key_table_finalize (GObject *object)
@@ -644,15 +625,14 @@ key_table_finalize (GObject *object)
pthread_mutex_destroy (&table->priv->lock);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (key_table_parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_key_table_parent_class)->finalize (object);
}
static void
-key_table_class_init (CamelKeyTableClass *class)
+camel_key_table_class_init (CamelKeyTableClass *class)
{
GObjectClass *object_class;
- key_table_parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelKeyTablePrivate));
object_class = G_OBJECT_CLASS (class);
@@ -660,31 +640,12 @@ key_table_class_init (CamelKeyTableClass *class)
}
static void
-key_table_init (CamelKeyTable *table)
+camel_key_table_init (CamelKeyTable *table)
{
table->priv = CAMEL_KEY_TABLE_GET_PRIVATE (table);
pthread_mutex_init (&table->priv->lock, NULL);
}
-GType
-camel_key_table_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID)) {
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelKeyTable",
- sizeof (CamelKeyTableClass),
- (GClassInitFunc) key_table_class_init,
- sizeof (CamelKeyTable),
- (GInstanceInitFunc) key_table_init,
- 0);
- }
-
- return type;
-}
-
CamelKeyTable *
camel_key_table_new (CamelBlockFile *bs,
camel_block_t root,
diff --git a/camel/camel-sasl-anonymous.c b/camel/camel-sasl-anonymous.c
index 72b66c6..f197c13 100644
--- a/camel/camel-sasl-anonymous.c
+++ b/camel/camel-sasl-anonymous.c
@@ -40,7 +40,7 @@ CamelServiceAuthType camel_sasl_anonymous_authtype = {
FALSE
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelSaslAnonymous, camel_sasl_anonymous, CAMEL_TYPE_SASL)
static GByteArray *
sasl_anonymous_challenge (CamelSasl *sasl,
@@ -111,17 +111,15 @@ sasl_anonymous_finalize (GObject *object)
g_free (sasl->trace_info);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_sasl_anonymous_parent_class)->finalize (object);
}
static void
-sasl_anonymous_class_init (CamelSaslAnonymousClass *class)
+camel_sasl_anonymous_class_init (CamelSaslAnonymousClass *class)
{
GObjectClass *object_class;
CamelSaslClass *sasl_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->finalize = sasl_anonymous_finalize;
@@ -129,22 +127,9 @@ sasl_anonymous_class_init (CamelSaslAnonymousClass *class)
sasl_class->challenge = sasl_anonymous_challenge;
}
-GType
-camel_sasl_anonymous_get_type (void)
+static void
+camel_sasl_anonymous_init (CamelSaslAnonymous *sasl_anonymous)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_SASL,
- "CamelSaslAnonymous",
- sizeof (CamelSaslAnonymousClass),
- (GClassInitFunc) sasl_anonymous_class_init,
- sizeof (CamelSaslAnonymous),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
/**
diff --git a/camel/camel-sasl-cram-md5.c b/camel/camel-sasl-cram-md5.c
index 3f643e7..d8aad81 100644
--- a/camel/camel-sasl-cram-md5.c
+++ b/camel/camel-sasl-cram-md5.c
@@ -51,7 +51,7 @@ CamelServiceAuthType camel_sasl_cram_md5_authtype = {
TRUE
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelSaslCramMd5, camel_sasl_cram_md5, CAMEL_TYPE_SASL)
/* CRAM-MD5 algorithm:
* MD5 ((passwd XOR opad), MD5 ((passwd XOR ipad), timestamp))
@@ -132,11 +132,10 @@ sasl_cram_md5_challenge (CamelSasl *sasl,
}
static void
-sasl_cram_md5_class_init (CamelSaslCramMd5Class *class)
+camel_sasl_cram_md5_class_init (CamelSaslCramMd5Class *class)
{
CamelSaslClass *sasl_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelSaslCramMd5Private));
sasl_class = CAMEL_SASL_CLASS (class);
@@ -144,25 +143,8 @@ sasl_cram_md5_class_init (CamelSaslCramMd5Class *class)
}
static void
-sasl_cram_md5_init (CamelSaslCramMd5 *sasl)
+camel_sasl_cram_md5_init (CamelSaslCramMd5 *sasl)
{
sasl->priv = CAMEL_SASL_CRAM_MD5_GET_PRIVATE (sasl);
}
-GType
-camel_sasl_cram_md5_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_SASL,
- "CamelSaslCramMd5",
- sizeof (CamelSaslCramMd5Class),
- (GClassInitFunc) sasl_cram_md5_class_init,
- sizeof (CamelSaslCramMd5),
- (GInstanceInitFunc) sasl_cram_md5_init,
- 0);
-
- return type;
-}
diff --git a/camel/camel-sasl-digest-md5.c b/camel/camel-sasl-digest-md5.c
index 344fde1..96e9e8f 100644
--- a/camel/camel-sasl-digest-md5.c
+++ b/camel/camel-sasl-digest-md5.c
@@ -57,8 +57,6 @@ CamelServiceAuthType camel_sasl_digest_md5_authtype = {
TRUE
};
-static gpointer parent_class;
-
enum {
STATE_AUTH,
STATE_FINAL
@@ -166,6 +164,8 @@ struct _CamelSaslDigestMd5Private {
gint state;
};
+G_DEFINE_TYPE (CamelSaslDigestMd5, camel_sasl_digest_md5, CAMEL_TYPE_SASL)
+
static void
decode_lwsp (const gchar **in)
{
@@ -776,7 +776,7 @@ sasl_digest_md5_finalize (GObject *object)
}
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_sasl_digest_md5_parent_class)->finalize (object);
}
static GByteArray *
@@ -918,12 +918,11 @@ sasl_digest_md5_challenge (CamelSasl *sasl,
}
static void
-sasl_digest_md5_class_init (CamelSaslDigestMd5Class *class)
+camel_sasl_digest_md5_class_init (CamelSaslDigestMd5Class *class)
{
GObjectClass *object_class;
CamelSaslClass *sasl_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelSaslDigestMd5Private));
object_class = G_OBJECT_CLASS (class);
@@ -934,25 +933,8 @@ sasl_digest_md5_class_init (CamelSaslDigestMd5Class *class)
}
static void
-sasl_digest_md5_init (CamelSaslDigestMd5 *sasl)
+camel_sasl_digest_md5_init (CamelSaslDigestMd5 *sasl)
{
sasl->priv = CAMEL_SASL_DIGEST_MD5_GET_PRIVATE (sasl);
}
-GType
-camel_sasl_digest_md5_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_SASL,
- "CamelSaslDigestMd5",
- sizeof (CamelSaslDigestMd5Class),
- (GClassInitFunc) sasl_digest_md5_class_init,
- sizeof (CamelSaslDigestMd5),
- (GInstanceInitFunc) sasl_digest_md5_init,
- 0);
-
- return type;
-}
diff --git a/camel/camel-sasl-gssapi.c b/camel/camel-sasl-gssapi.c
index 306c714..b17f913 100644
--- a/camel/camel-sasl-gssapi.c
+++ b/camel/camel-sasl-gssapi.c
@@ -101,7 +101,7 @@ struct _CamelSaslGssapiPrivate {
gss_name_t target;
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelSaslGssapi, camel_sasl_gssapi, CAMEL_TYPE_SASL)
static void
gssapi_set_exception (OM_uint32 major,
@@ -176,7 +176,7 @@ sasl_gssapi_finalize (GObject *object)
gss_release_name (&status, &sasl->priv->target);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_sasl_gssapi_parent_class)->finalize (object);
}
/* DBUS Specific code */
@@ -411,12 +411,11 @@ sasl_gssapi_challenge (CamelSasl *sasl,
}
static void
-sasl_gssapi_class_init (CamelSaslGssapiClass *class)
+camel_sasl_gssapi_class_init (CamelSaslGssapiClass *class)
{
GObjectClass *object_class;
CamelSaslClass *sasl_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelSaslGssapiPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -427,7 +426,7 @@ sasl_gssapi_class_init (CamelSaslGssapiClass *class)
}
static void
-sasl_gssapi_init (CamelSaslGssapi *sasl)
+camel_sasl_gssapi_init (CamelSaslGssapi *sasl)
{
sasl->priv = CAMEL_SASL_GSSAPI_GET_PRIVATE (sasl);
@@ -436,22 +435,4 @@ sasl_gssapi_init (CamelSaslGssapi *sasl)
sasl->priv->target = GSS_C_NO_NAME;
}
-GType
-camel_sasl_gssapi_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_SASL,
- "CamelSaslGssapi",
- sizeof (CamelSaslGssapiClass),
- (GClassInitFunc) sasl_gssapi_class_init,
- sizeof (CamelSaslGssapi),
- (GInstanceInitFunc) sasl_gssapi_init,
- 0);
-
- return type;
-}
-
#endif /* HAVE_KRB5 */
diff --git a/camel/camel-sasl-login.c b/camel/camel-sasl-login.c
index fc26faf..ad5e349 100644
--- a/camel/camel-sasl-login.c
+++ b/camel/camel-sasl-login.c
@@ -54,7 +54,7 @@ struct _CamelSaslLoginPrivate {
gint state;
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelSaslLogin, camel_sasl_login, CAMEL_TYPE_SASL)
static GByteArray *
sasl_login_challenge (CamelSasl *sasl,
@@ -100,11 +100,10 @@ sasl_login_challenge (CamelSasl *sasl,
}
static void
-sasl_login_class_init (CamelSaslLoginClass *class)
+camel_sasl_login_class_init (CamelSaslLoginClass *class)
{
CamelSaslClass *sasl_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelSaslLoginPrivate));
sasl_class = CAMEL_SASL_CLASS (class);
@@ -112,25 +111,8 @@ sasl_login_class_init (CamelSaslLoginClass *class)
}
static void
-sasl_login_init (CamelSaslLogin *sasl)
+camel_sasl_login_init (CamelSaslLogin *sasl)
{
sasl->priv = CAMEL_SASL_LOGIN_GET_PRIVATE (sasl);
}
-GType
-camel_sasl_login_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_SASL,
- "CamelSaslLogin",
- sizeof (CamelSaslLoginClass),
- (GClassInitFunc) sasl_login_class_init,
- sizeof (CamelSaslLogin),
- (GInstanceInitFunc) sasl_login_init,
- 0);
-
- return type;
-}
diff --git a/camel/camel-sasl-ntlm.c b/camel/camel-sasl-ntlm.c
index 1d5829b..6aa427d 100644
--- a/camel/camel-sasl-ntlm.c
+++ b/camel/camel-sasl-ntlm.c
@@ -47,7 +47,7 @@ CamelServiceAuthType camel_sasl_ntlm_authtype = {
TRUE
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelSaslNTLM, camel_sasl_ntlm, CAMEL_TYPE_SASL)
#define NTLM_REQUEST "NTLMSSP\x00\x01\x00\x00\x00\x06\x82\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x00\x00\x00\x00\x00\x00\x30\x00\x00\x00"
@@ -722,11 +722,10 @@ exit:
}
static void
-sasl_ntlm_class_init (CamelSaslNTLMClass *class)
+camel_sasl_ntlm_class_init (CamelSaslNTLMClass *class)
{
CamelSaslClass *sasl_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelSaslNTLMPrivate));
sasl_class = CAMEL_SASL_CLASS (class);
@@ -734,26 +733,8 @@ sasl_ntlm_class_init (CamelSaslNTLMClass *class)
}
static void
-sasl_ntlm_init (CamelSaslNTLM *sasl)
+camel_sasl_ntlm_init (CamelSaslNTLM *sasl)
{
sasl->priv = CAMEL_SASL_NTLM_GET_PRIVATE (sasl);
}
-GType
-camel_sasl_ntlm_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_SASL,
- "CamelSaslNTLM",
- sizeof (CamelSaslNTLMClass),
- (GClassInitFunc) sasl_ntlm_class_init,
- sizeof (CamelSaslNTLM),
- (GInstanceInitFunc) sasl_ntlm_init,
- 0);
-
- return type;
-}
-
diff --git a/camel/camel-sasl-plain.c b/camel/camel-sasl-plain.c
index e282264..93232ed 100644
--- a/camel/camel-sasl-plain.c
+++ b/camel/camel-sasl-plain.c
@@ -49,7 +49,7 @@ CamelServiceAuthType camel_sasl_plain_authtype = {
TRUE
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelSaslPlain, camel_sasl_plain, CAMEL_TYPE_SASL)
static GByteArray *
sasl_plain_challenge (CamelSasl *sasl,
@@ -77,11 +77,10 @@ sasl_plain_challenge (CamelSasl *sasl,
}
static void
-sasl_plain_class_init (CamelSaslPlainClass *class)
+camel_sasl_plain_class_init (CamelSaslPlainClass *class)
{
CamelSaslClass *sasl_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelSaslPlainPrivate));
sasl_class = CAMEL_SASL_CLASS (class);
@@ -89,25 +88,8 @@ sasl_plain_class_init (CamelSaslPlainClass *class)
}
static void
-sasl_plain_init (CamelSaslPlain *sasl)
+camel_sasl_plain_init (CamelSaslPlain *sasl)
{
sasl->priv = CAMEL_SASL_PLAIN_GET_PRIVATE (sasl);
}
-GType
-camel_sasl_plain_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_SASL,
- "CamelSaslPlain",
- sizeof (CamelSaslPlainClass),
- (GClassInitFunc) sasl_plain_class_init,
- sizeof (CamelSaslPlain),
- (GInstanceInitFunc) sasl_plain_init,
- 0);
-
- return type;
-}
diff --git a/camel/camel-sasl-popb4smtp.c b/camel/camel-sasl-popb4smtp.c
index 2bff5ce..931f323 100644
--- a/camel/camel-sasl-popb4smtp.c
+++ b/camel/camel-sasl-popb4smtp.c
@@ -62,7 +62,7 @@ static pthread_mutex_t lock = PTHREAD_MUTEX_INITIALIZER;
#define POPB4SMTP_LOCK(l) pthread_mutex_lock(&l)
#define POPB4SMTP_UNLOCK(l) pthread_mutex_unlock(&l)
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelSaslPOPB4SMTP, camel_sasl_popb4smtp, CAMEL_TYPE_SASL)
static GByteArray *
sasl_popb4smtp_challenge (CamelSasl *sasl,
@@ -137,11 +137,10 @@ sasl_popb4smtp_challenge (CamelSasl *sasl,
}
static void
-sasl_popb4smtp_class_init (CamelSaslPOPB4SMTPClass *class)
+camel_sasl_popb4smtp_class_init (CamelSaslPOPB4SMTPClass *class)
{
CamelSaslClass *sasl_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelSaslPOPB4SMTPPrivate));
sasl_class = CAMEL_SASL_CLASS (class);
@@ -151,26 +150,8 @@ sasl_popb4smtp_class_init (CamelSaslPOPB4SMTPClass *class)
}
static void
-sasl_popb4smtp_init (CamelSaslPOPB4SMTP *sasl)
+camel_sasl_popb4smtp_init (CamelSaslPOPB4SMTP *sasl)
{
sasl->priv = CAMEL_SASL_POPB4SMTP_GET_PRIVATE (sasl);
}
-GType
-camel_sasl_popb4smtp_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_SASL,
- "CamelSaslPOPB4SMTP",
- sizeof (CamelSaslPOPB4SMTPClass),
- (GClassInitFunc) sasl_popb4smtp_class_init,
- sizeof (CamelSaslPOPB4SMTP),
- (GInstanceInitFunc) sasl_popb4smtp_init,
- 0);
-
- return type;
-}
-
diff --git a/camel/camel-sasl.c b/camel/camel-sasl.c
index 224496f..bf1089c 100644
--- a/camel/camel-sasl.c
+++ b/camel/camel-sasl.c
@@ -58,7 +58,7 @@ enum {
PROP_SERVICE_NAME
};
-static gpointer parent_class;
+G_DEFINE_ABSTRACT_TYPE (CamelSasl, camel_sasl, CAMEL_TYPE_OBJECT)
static void
sasl_set_mechanism (CamelSasl *sasl,
@@ -173,7 +173,7 @@ sasl_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_sasl_parent_class)->dispose (object);
}
static void
@@ -187,15 +187,14 @@ sasl_finalize (GObject *object)
g_free (priv->service_name);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_sasl_parent_class)->finalize (object);
}
static void
-sasl_class_init (CamelSaslClass *class)
+camel_sasl_class_init (CamelSaslClass *class)
{
GObjectClass *object_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelSaslPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -249,29 +248,11 @@ sasl_class_init (CamelSaslClass *class)
}
static void
-sasl_init (CamelSasl *sasl)
+camel_sasl_init (CamelSasl *sasl)
{
sasl->priv = CAMEL_SASL_GET_PRIVATE (sasl);
}
-GType
-camel_sasl_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelSasl",
- sizeof (CamelSaslClass),
- (GClassInitFunc) sasl_class_init,
- sizeof (CamelSasl),
- (GInstanceInitFunc) sasl_init,
- 0);
-
- return type;
-}
-
/**
* camel_sasl_challenge:
* @sasl: a #CamelSasl object
diff --git a/camel/camel-seekable-stream.c b/camel/camel-seekable-stream.c
index d956d1b..0ab658c 100644
--- a/camel/camel-seekable-stream.c
+++ b/camel/camel-seekable-stream.c
@@ -27,7 +27,7 @@
#include "camel-seekable-stream.h"
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelSeekableStream, camel_seekable_stream, CAMEL_TYPE_STREAM)
static gint
seekable_stream_reset (CamelStream *stream,
@@ -66,12 +66,10 @@ seekable_stream_set_bounds (CamelSeekableStream *stream,
}
static void
-seekable_stream_class_init (CamelSeekableStreamClass *class)
+camel_seekable_stream_class_init (CamelSeekableStreamClass *class)
{
CamelStreamClass *stream_class;
- parent_class = g_type_class_peek_parent (class);
-
stream_class = CAMEL_STREAM_CLASS (class);
stream_class->reset = seekable_stream_reset;
@@ -80,30 +78,12 @@ seekable_stream_class_init (CamelSeekableStreamClass *class)
}
static void
-seekable_stream_init (CamelSeekableStream *stream)
+camel_seekable_stream_init (CamelSeekableStream *stream)
{
stream->bound_start = 0;
stream->bound_end = CAMEL_STREAM_UNBOUND;
}
-GType
-camel_seekable_stream_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_STREAM,
- "CamelSeekableStream",
- sizeof (CamelSeekableStreamClass),
- (GClassInitFunc) seekable_stream_class_init,
- sizeof (CamelSeekableStream),
- (GInstanceInitFunc) seekable_stream_init,
- 0);
-
- return type;
-}
-
/**
* camel_seekable_stream_seek:
* @stream: a #CamelStream object
diff --git a/camel/camel-seekable-substream.c b/camel/camel-seekable-substream.c
index a6ec79c..0007ff4 100644
--- a/camel/camel-seekable-substream.c
+++ b/camel/camel-seekable-substream.c
@@ -27,7 +27,7 @@
#include "camel-seekable-substream.h"
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelSeekableSubstream, camel_seekable_substream, CAMEL_TYPE_SEEKABLE_STREAM)
static gboolean
seekable_substream_parent_reset (CamelSeekableSubstream *seekable_substream,
@@ -56,7 +56,7 @@ seekable_substream_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_seekable_substream_parent_class)->dispose (object);
}
static gssize
@@ -233,14 +233,12 @@ seekable_substream_seek (CamelSeekableStream *seekable_stream,
}
static void
-seekable_substream_class_init (CamelSeekableSubstreamClass *class)
+camel_seekable_substream_class_init (CamelSeekableSubstreamClass *class)
{
GObjectClass *object_class;
CamelStreamClass *stream_class;
CamelSeekableStreamClass *seekable_stream_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->dispose = seekable_substream_dispose;
@@ -253,25 +251,11 @@ seekable_substream_class_init (CamelSeekableSubstreamClass *class)
seekable_stream_class = CAMEL_SEEKABLE_STREAM_CLASS (class);
seekable_stream_class->seek = seekable_substream_seek;
-
}
-GType
-camel_seekable_substream_get_type (void)
+static void
+camel_seekable_substream_init (CamelSeekableSubstream *seekable_substream)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_SEEKABLE_STREAM,
- "CamelSeekableSubstream",
- sizeof (CamelSeekableSubstreamClass),
- (GClassInitFunc) seekable_substream_class_init,
- sizeof (CamelSeekableSubstream),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
/**
diff --git a/camel/camel-service.c b/camel/camel-service.c
index 5686dc8..743a757 100644
--- a/camel/camel-service.c
+++ b/camel/camel-service.c
@@ -47,7 +47,7 @@
(G_TYPE_INSTANCE_GET_PRIVATE \
((obj), CAMEL_TYPE_SERVICE, CamelServicePrivate))
-static gpointer parent_class;
+G_DEFINE_ABSTRACT_TYPE (CamelService, camel_service, CAMEL_TYPE_OBJECT)
static void
service_finalize (GObject *object)
@@ -67,7 +67,7 @@ service_finalize (GObject *object)
g_static_mutex_free (&service->priv->connect_op_lock);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_service_parent_class)->finalize (object);
}
static gint
@@ -136,7 +136,7 @@ service_setv (CamelObject *object,
}
/* Chain up to parent's setv() method. */
- return CAMEL_OBJECT_CLASS (parent_class)->setv (object, error, args);
+ return CAMEL_OBJECT_CLASS (camel_service_parent_class)->setv (object, error, args);
}
static gint
@@ -185,7 +185,7 @@ service_getv (CamelObject *object,
}
/* Chain up to parent's getv() method. */
- return CAMEL_OBJECT_CLASS (parent_class)->getv (object, error, args);
+ return CAMEL_OBJECT_CLASS (camel_service_parent_class)->getv (object, error, args);
}
static gboolean
@@ -318,12 +318,11 @@ service_get_path (CamelService *service)
}
static void
-service_class_init (CamelServiceClass *class)
+camel_service_class_init (CamelServiceClass *class)
{
GObjectClass *object_class;
CamelObjectClass *camel_object_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelServicePrivate));
object_class = G_OBJECT_CLASS (class);
@@ -343,7 +342,7 @@ service_class_init (CamelServiceClass *class)
}
static void
-service_init (CamelService *service)
+camel_service_init (CamelService *service)
{
service->priv = CAMEL_SERVICE_GET_PRIVATE (service);
@@ -351,24 +350,6 @@ service_init (CamelService *service)
g_static_mutex_init (&service->priv->connect_op_lock);
}
-GType
-camel_service_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelService",
- sizeof (CamelServiceClass),
- (GClassInitFunc) service_class_init,
- sizeof (CamelService),
- (GInstanceInitFunc) service_init,
- 0);
-
- return type;
-}
-
GQuark
camel_service_error_quark (void)
{
diff --git a/camel/camel-session.c b/camel/camel-session.c
index ca20dc9..2c5139b 100644
--- a/camel/camel-session.c
+++ b/camel/camel-session.c
@@ -55,7 +55,7 @@
(G_TYPE_INSTANCE_GET_PRIVATE \
((obj), CAMEL_TYPE_SESSION, CamelSessionPrivate))
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelSession, camel_session, CAMEL_TYPE_OBJECT)
static void
cs_thread_status (CamelOperation *op,
@@ -97,7 +97,7 @@ session_finalize (GObject *object)
}
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_session_parent_class)->finalize (object);
}
static CamelService *
@@ -295,12 +295,11 @@ session_thread_status (CamelSession *session,
}
static void
-session_class_init (CamelSessionClass *class)
+camel_session_class_init (CamelSessionClass *class)
{
GObjectClass *object_class;
CamelObjectClass *camel_object_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelSessionPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -319,7 +318,7 @@ session_class_init (CamelSessionClass *class)
}
static void
-session_init (CamelSession *session)
+camel_session_init (CamelSession *session)
{
session->priv = CAMEL_SESSION_GET_PRIVATE (session);
@@ -334,24 +333,6 @@ session_init (CamelSession *session)
session->priv->junk_headers = NULL;
}
-GType
-camel_session_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelSession",
- sizeof (CamelSessionClass),
- (GClassInitFunc) session_class_init,
- sizeof (CamelSession),
- (GInstanceInitFunc) session_init,
- 0);
-
- return type;
-}
-
/**
* camel_session_construct:
* @session: a #CamelSession object to construct
diff --git a/camel/camel-smime-context.c b/camel/camel-smime-context.c
index f24361e..f5fef01 100644
--- a/camel/camel-smime-context.c
+++ b/camel/camel-smime-context.c
@@ -75,7 +75,7 @@ struct _CamelSMIMEContextPrivate {
guint send_encrypt_key_prefs:1;
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelSMIMEContext, camel_smime_context, CAMEL_TYPE_CIPHER_CONTEXT)
/* used for decode content callback, for streaming decode */
static void
@@ -1164,11 +1164,10 @@ fail:
}
static void
-smime_context_class_init (CamelSMIMEContextClass *class)
+camel_smime_context_class_init (CamelSMIMEContextClass *class)
{
CamelCipherContextClass *cipher_context_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelSMIMEContextPrivate));
cipher_context_class = CAMEL_CIPHER_CONTEXT_CLASS (class);
@@ -1184,7 +1183,7 @@ smime_context_class_init (CamelSMIMEContextClass *class)
}
static void
-smime_context_init (CamelSMIMEContext *smime_context)
+camel_smime_context_init (CamelSMIMEContext *smime_context)
{
smime_context->priv = CAMEL_SMIME_CONTEXT_GET_PRIVATE (smime_context);
@@ -1193,24 +1192,6 @@ smime_context_init (CamelSMIMEContext *smime_context)
smime_context->priv->password_tries = 0;
}
-GType
-camel_smime_context_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_CIPHER_CONTEXT,
- "CamelSMIMEContext",
- sizeof (CamelSMIMEContextClass),
- (GClassInitFunc) smime_context_class_init,
- sizeof (CamelSMIMEContext),
- (GInstanceInitFunc) smime_context_init,
- 0);
-
- return type;
-}
-
/**
* camel_smime_context_new:
* @session: session
diff --git a/camel/camel-store-summary.c b/camel/camel-store-summary.c
index 5a5b0a6..ccea39a 100644
--- a/camel/camel-store-summary.c
+++ b/camel/camel-store-summary.c
@@ -55,7 +55,7 @@
(G_TYPE_INSTANCE_GET_PRIVATE \
((obj), CAMEL_TYPE_STORE_SUMMARY, CamelStoreSummaryPrivate))
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelStoreSummary, camel_store_summary, CAMEL_TYPE_OBJECT)
static void
store_summary_finalize (GObject *object)
@@ -77,7 +77,7 @@ store_summary_finalize (GObject *object)
g_mutex_free (summary->priv->ref_lock);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_store_summary_parent_class)->finalize (object);
}
static gint
@@ -290,11 +290,10 @@ store_summary_store_info_set_string (CamelStoreSummary *summary,
}
static void
-store_summary_class_init (CamelStoreSummaryClass *class)
+camel_store_summary_class_init (CamelStoreSummaryClass *class)
{
GObjectClass *object_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelStoreSummaryPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -311,7 +310,7 @@ store_summary_class_init (CamelStoreSummaryClass *class)
}
static void
-store_summary_init (CamelStoreSummary *summary)
+camel_store_summary_init (CamelStoreSummary *summary)
{
summary->priv = CAMEL_STORE_SUMMARY_GET_PRIVATE (summary);
@@ -333,24 +332,6 @@ store_summary_init (CamelStoreSummary *summary)
summary->priv->ref_lock = g_mutex_new ();
}
-GType
-camel_store_summary_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelStoreSummary",
- sizeof (CamelStoreSummaryClass),
- (GClassInitFunc) store_summary_class_init,
- sizeof (CamelStoreSummary),
- (GInstanceInitFunc) store_summary_init,
- 0);
-
- return type;
-}
-
/**
* camel_store_summary_new:
*
diff --git a/camel/camel-store.c b/camel/camel-store.c
index c90a76e..b75fd32 100644
--- a/camel/camel-store.c
+++ b/camel/camel-store.c
@@ -48,7 +48,7 @@
(G_TYPE_INSTANCE_GET_PRIVATE \
((obj), CAMEL_TYPE_STORE, CamelStorePrivate))
-static gpointer parent_class;
+G_DEFINE_ABSTRACT_TYPE (CamelStore, camel_store, CAMEL_TYPE_SERVICE)
/**
* ignore_no_such_table_exception:
@@ -105,7 +105,25 @@ store_finalize (GObject *object)
}
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_store_parent_class)->finalize (object);
+}
+
+static void
+store_constructed (GObject *object)
+{
+ CamelStore *store;
+ CamelStoreClass *class;
+
+ store = CAMEL_STORE (object);
+ class = CAMEL_STORE_GET_CLASS (store);
+
+ if (class->hash_folder_name != NULL)
+ store->folders = camel_object_bag_new (
+ class->hash_folder_name,
+ class->compare_folder_name,
+ (CamelCopyFunc) g_strdup, g_free);
+ else
+ store->folders = NULL;
}
static gboolean
@@ -120,7 +138,7 @@ store_construct (CamelService *service,
gchar *store_db_path, *store_path = NULL;
/* Chain up to parent's construct() method. */
- service_class = CAMEL_SERVICE_CLASS (parent_class);
+ service_class = CAMEL_SERVICE_CLASS (camel_store_parent_class);
if (!service_class->construct (service, session, provider, url, error))
return FALSE;
@@ -258,17 +276,17 @@ store_can_refresh_folder (CamelStore *store,
}
static void
-store_class_init (CamelStoreClass *class)
+camel_store_class_init (CamelStoreClass *class)
{
GObjectClass *object_class;
CamelObjectClass *camel_object_class;
CamelServiceClass *service_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelStorePrivate));
object_class = G_OBJECT_CLASS (class);
object_class->finalize = store_finalize;
+ object_class->constructed = store_constructed;
service_class = CAMEL_SERVICE_CLASS (class);
service_class->construct = store_construct;
@@ -292,18 +310,10 @@ store_class_init (CamelStoreClass *class)
}
static void
-store_init (CamelStore *store,
- CamelStoreClass *store_class)
+camel_store_init (CamelStore *store)
{
store->priv = CAMEL_STORE_GET_PRIVATE (store);
- if (store_class->hash_folder_name) {
- store->folders = camel_object_bag_new(store_class->hash_folder_name,
- store_class->compare_folder_name,
- (CamelCopyFunc)g_strdup, g_free);
- } else
- store->folders = NULL;
-
/* set vtrash and vjunk on by default */
store->flags = CAMEL_STORE_VTRASH | CAMEL_STORE_VJUNK;
store->mode = CAMEL_STORE_READ | CAMEL_STORE_WRITE;
@@ -311,24 +321,6 @@ store_init (CamelStore *store,
g_static_rec_mutex_init (&store->priv->folder_lock);
}
-GType
-camel_store_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_SERVICE,
- "CamelStore",
- sizeof (CamelStoreClass),
- (GClassInitFunc) store_class_init,
- sizeof (CamelStore),
- (GInstanceInitFunc) store_init,
- 0);
-
- return type;
-}
-
GQuark
camel_store_error_quark (void)
{
diff --git a/camel/camel-stream-buffer.c b/camel/camel-stream-buffer.c
index 3752a32..56ce5ec 100644
--- a/camel/camel-stream-buffer.c
+++ b/camel/camel-stream-buffer.c
@@ -51,7 +51,7 @@ struct _CamelStreamBufferPrivate {
guint flags;
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelStreamBuffer, camel_stream_buffer, CAMEL_TYPE_STREAM)
enum {
BUF_USER = 1<<0 /* user-supplied buffer, do not free */
@@ -119,7 +119,7 @@ stream_buffer_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_stream_buffer_parent_class)->dispose (object);
}
static void
@@ -135,7 +135,7 @@ stream_buffer_finalize (GObject *object)
g_free (priv->linebuf);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_stream_buffer_parent_class)->finalize (object);
}
static gssize
@@ -322,12 +322,11 @@ stream_buffer_init_method (CamelStreamBuffer *stream,
}
static void
-stream_buffer_class_init (CamelStreamBufferClass *class)
+camel_stream_buffer_class_init (CamelStreamBufferClass *class)
{
GObjectClass *object_class;
CamelStreamClass *stream_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelStreamBufferPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -346,7 +345,7 @@ stream_buffer_class_init (CamelStreamBufferClass *class)
}
static void
-stream_buffer_init (CamelStreamBuffer *stream)
+camel_stream_buffer_init (CamelStreamBuffer *stream)
{
stream->priv = CAMEL_STREAM_BUFFER_GET_PRIVATE (stream);
@@ -363,24 +362,6 @@ stream_buffer_init (CamelStreamBuffer *stream)
stream->priv->linebuf = g_malloc (stream->priv->linesize);
}
-GType
-camel_stream_buffer_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_STREAM,
- "CamelStreamBuffer",
- sizeof (CamelStreamBufferClass),
- (GClassInitFunc) stream_buffer_class_init,
- sizeof (CamelStreamBuffer),
- (GInstanceInitFunc) stream_buffer_init,
- 0);
-
- return type;
-}
-
/**
* camel_stream_buffer_new:
* @stream: a #CamelStream object to buffer
diff --git a/camel/camel-stream-filter.c b/camel/camel-stream-filter.c
index d5b6cec..aee3d71 100644
--- a/camel/camel-stream-filter.c
+++ b/camel/camel-stream-filter.c
@@ -64,7 +64,7 @@ struct _CamelStreamFilterPrivate {
#define READ_PAD (128) /* bytes padded before buffer */
#define READ_SIZE (4096)
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelStreamFilter, camel_stream_filter, CAMEL_TYPE_STREAM)
static void
stream_filter_finalize (GObject *object)
@@ -84,7 +84,7 @@ stream_filter_finalize (GObject *object)
g_object_unref (stream->priv->source);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_stream_filter_parent_class)->finalize (object);
}
static gssize
@@ -306,12 +306,11 @@ stream_filter_reset (CamelStream *stream,
}
static void
-stream_filter_class_init (CamelStreamFilterClass *class)
+camel_stream_filter_class_init (CamelStreamFilterClass *class)
{
GObjectClass *object_class;
CamelStreamClass *stream_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelStreamFilterPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -328,7 +327,7 @@ stream_filter_class_init (CamelStreamFilterClass *class)
}
static void
-stream_filter_init (CamelStreamFilter *stream)
+camel_stream_filter_init (CamelStreamFilter *stream)
{
stream->priv = CAMEL_STREAM_FILTER_GET_PRIVATE (stream);
@@ -338,24 +337,6 @@ stream_filter_init (CamelStreamFilter *stream)
stream->priv->flushed = FALSE;
}
-GType
-camel_stream_filter_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_STREAM,
- "CamelStreamFilter",
- sizeof (CamelStreamFilterClass),
- (GClassInitFunc) stream_filter_class_init,
- sizeof (CamelStreamFilter),
- (GInstanceInitFunc) stream_filter_init,
- 0);
-
- return type;
-}
-
/**
* camel_stream_filter_new:
*
diff --git a/camel/camel-stream-fs.c b/camel/camel-stream-fs.c
index efb5cd1..cacf5a4 100644
--- a/camel/camel-stream-fs.c
+++ b/camel/camel-stream-fs.c
@@ -48,7 +48,7 @@ struct _CamelStreamFsPrivate {
gint fd; /* file descriptor on the underlying file */
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelStreamFs, camel_stream_fs, CAMEL_TYPE_SEEKABLE_STREAM)
static void
stream_fs_finalize (GObject *object)
@@ -61,7 +61,7 @@ stream_fs_finalize (GObject *object)
close (priv->fd);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_stream_fs_parent_class)->finalize (object);
}
static gssize
@@ -209,13 +209,12 @@ stream_fs_seek (CamelSeekableStream *stream,
}
static void
-stream_fs_class_init (CamelStreamFsClass *class)
+camel_stream_fs_class_init (CamelStreamFsClass *class)
{
GObjectClass *object_class;
CamelStreamClass *stream_class;
CamelSeekableStreamClass *seekable_stream_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelStreamFsPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -232,7 +231,7 @@ stream_fs_class_init (CamelStreamFsClass *class)
}
static void
-stream_fs_init (CamelStreamFs *stream)
+camel_stream_fs_init (CamelStreamFs *stream)
{
stream->priv = CAMEL_STREAM_FS_GET_PRIVATE (stream);
stream->priv->fd = -1;
@@ -240,24 +239,6 @@ stream_fs_init (CamelStreamFs *stream)
CAMEL_SEEKABLE_STREAM (stream)->bound_end = CAMEL_STREAM_UNBOUND;
}
-GType
-camel_stream_fs_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_SEEKABLE_STREAM,
- "CamelStreamFs",
- sizeof (CamelStreamFsClass),
- (GClassInitFunc) stream_fs_class_init,
- sizeof (CamelStreamFs),
- (GInstanceInitFunc) stream_fs_init,
- 0);
-
- return type;
-}
-
/**
* camel_stream_fs_new_with_fd:
* @fd: a file descriptor
diff --git a/camel/camel-stream-mem.c b/camel/camel-stream-mem.c
index c98ada5..607ee91 100644
--- a/camel/camel-stream-mem.c
+++ b/camel/camel-stream-mem.c
@@ -46,7 +46,7 @@ struct _CamelStreamMemPrivate {
GByteArray *buffer;
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelStreamMem, camel_stream_mem, CAMEL_TYPE_SEEKABLE_STREAM)
/* could probably be a util method */
static void
@@ -82,7 +82,7 @@ stream_mem_finalize (GObject *object)
}
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_stream_mem_parent_class)->finalize (object);
}
static gssize
@@ -194,13 +194,12 @@ stream_mem_seek (CamelSeekableStream *stream,
}
static void
-stream_mem_class_init (CamelStreamMemClass *class)
+camel_stream_mem_class_init (CamelStreamMemClass *class)
{
GObjectClass *object_class;
CamelStreamClass *stream_class;
CamelSeekableStreamClass *seekable_stream_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelStreamMemPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -216,29 +215,11 @@ stream_mem_class_init (CamelStreamMemClass *class)
}
static void
-stream_mem_init (CamelStreamMem *stream)
+camel_stream_mem_init (CamelStreamMem *stream)
{
stream->priv = CAMEL_STREAM_MEM_GET_PRIVATE (stream);
}
-GType
-camel_stream_mem_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_SEEKABLE_STREAM,
- "CamelStreamMem",
- sizeof (CamelStreamMemClass),
- (GClassInitFunc) stream_mem_class_init,
- sizeof (CamelStreamMem),
- (GInstanceInitFunc) stream_mem_init,
- 0);
-
- return type;
-}
-
/**
* camel_stream_mem_new:
*
diff --git a/camel/camel-stream-null.c b/camel/camel-stream-null.c
index e495fea..d94f921 100644
--- a/camel/camel-stream-null.c
+++ b/camel/camel-stream-null.c
@@ -28,7 +28,7 @@
#include "camel-stream-null.h"
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelStreamNull, camel_stream_null, CAMEL_TYPE_STREAM)
static gssize
stream_null_write (CamelStream *stream,
@@ -57,34 +57,19 @@ stream_null_reset (CamelStream *stream,
}
static void
-stream_null_class_init (CamelStreamClass *class)
+camel_stream_null_class_init (CamelStreamNullClass *class)
{
CamelStreamClass *stream_class;
- parent_class = g_type_class_peek_parent (class);
-
stream_class = CAMEL_STREAM_CLASS (class);
stream_class->write = stream_null_write;
stream_class->eos = stream_null_eos;
stream_class->reset = stream_null_reset;
}
-GType
-camel_stream_null_get_type (void)
+static void
+camel_stream_null_init (CamelStreamNull *stream_null)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_STREAM,
- "CamelStreamNull",
- sizeof (CamelStreamNullClass),
- (GClassInitFunc) stream_null_class_init,
- sizeof (CamelStreamNull),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
/**
diff --git a/camel/camel-stream-process.c b/camel/camel-stream-process.c
index 9a54210..c88c2f8 100644
--- a/camel/camel-stream-process.c
+++ b/camel/camel-stream-process.c
@@ -44,7 +44,7 @@
extern gint camel_verbose_debug;
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelStreamProcess, camel_stream_process, CAMEL_TYPE_STREAM)
static void
stream_process_finalize (GObject *object)
@@ -54,7 +54,7 @@ stream_process_finalize (GObject *object)
camel_stream_close (CAMEL_STREAM (object), NULL);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_stream_process_parent_class)->finalize (object);
}
static gssize
@@ -137,13 +137,11 @@ stream_process_flush (CamelStream *stream,
}
static void
-stream_process_class_init (CamelStreamProcessClass *class)
+camel_stream_process_class_init (CamelStreamProcessClass *class)
{
GObjectClass *object_class;
CamelStreamClass *stream_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->finalize = stream_process_finalize;
@@ -155,30 +153,12 @@ stream_process_class_init (CamelStreamProcessClass *class)
}
static void
-stream_process_init (CamelStreamProcess *stream)
+camel_stream_process_init (CamelStreamProcess *stream)
{
stream->sockfd = -1;
stream->childpid = 0;
}
-GType
-camel_stream_process_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_STREAM,
- "CamelStreamProcess",
- sizeof (CamelStreamProcessClass),
- (GClassInitFunc) stream_process_class_init,
- sizeof (CamelStreamProcess),
- (GInstanceInitFunc) stream_process_init,
- 0);
-
- return type;
-}
-
/**
* camel_stream_process_new:
*
diff --git a/camel/camel-stream-vfs.c b/camel/camel-stream-vfs.c
index 483b575..cdebe05 100644
--- a/camel/camel-stream-vfs.c
+++ b/camel/camel-stream-vfs.c
@@ -35,7 +35,7 @@
#include "camel-private.h"
#include "camel-stream-vfs.h"
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelStreamVFS, camel_stream_vfs, CAMEL_TYPE_STREAM)
static void
stream_vfs_dispose (GObject *object)
@@ -48,7 +48,7 @@ stream_vfs_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_stream_vfs_parent_class)->dispose (object);
}
static gssize
@@ -123,13 +123,11 @@ stream_vfs_close (CamelStream *stream,
}
static void
-stream_vfs_class_init (CamelStreamVFSClass *class)
+camel_stream_vfs_class_init (CamelStreamVFSClass *class)
{
GObjectClass *object_class;
CamelStreamClass *stream_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->dispose = stream_vfs_dispose;
@@ -141,29 +139,11 @@ stream_vfs_class_init (CamelStreamVFSClass *class)
}
static void
-stream_vfs_init (CamelStreamVFS *stream)
+camel_stream_vfs_init (CamelStreamVFS *stream)
{
stream->stream = NULL;
}
-GType
-camel_stream_vfs_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_STREAM,
- "CamelStreamVFS",
- sizeof (CamelStreamVFSClass),
- (GClassInitFunc) stream_vfs_class_init,
- sizeof (CamelStreamVFS),
- (GInstanceInitFunc) stream_vfs_init,
- 0);
-
- return type;
-}
-
/**
* camel_stream_vfs_new_with_stream:
* @stream: a GInputStream or GOutputStream instance
diff --git a/camel/camel-stream.c b/camel/camel-stream.c
index 14b2a21..a422956 100644
--- a/camel/camel-stream.c
+++ b/camel/camel-stream.c
@@ -30,7 +30,7 @@
#include "camel-stream.h"
-static gpointer parent_class;
+G_DEFINE_ABSTRACT_TYPE (CamelStream, camel_stream, CAMEL_TYPE_OBJECT)
static gssize
stream_read (CamelStream *stream,
@@ -78,10 +78,8 @@ stream_reset (CamelStream *stream,
}
static void
-stream_class_init (CamelStreamClass *class)
+camel_stream_class_init (CamelStreamClass *class)
{
- parent_class = g_type_class_peek_parent (class);
-
class->read = stream_read;
class->write = stream_write;
class->close = stream_close;
@@ -90,22 +88,9 @@ stream_class_init (CamelStreamClass *class)
class->reset = stream_reset;
}
-GType
-camel_stream_get_type (void)
+static void
+camel_stream_init (CamelStream *stream)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelStream",
- sizeof (CamelStreamClass),
- (GClassInitFunc) stream_class_init,
- sizeof (CamelStream),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
/**
diff --git a/camel/camel-tcp-stream-raw.c b/camel/camel-tcp-stream-raw.c
index 29e4472..abda3a7 100644
--- a/camel/camel-tcp-stream-raw.c
+++ b/camel/camel-tcp-stream-raw.c
@@ -52,7 +52,7 @@
#define ETIMEDOUT EAGAIN
#endif
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelTcpStreamRaw, camel_tcp_stream_raw, CAMEL_TYPE_TCP_STREAM)
#ifdef SIMULATE_FLAKY_NETWORK
static gssize
@@ -330,7 +330,7 @@ tcp_stream_raw_finalize (GObject *object)
SOCKET_CLOSE (stream->sockfd);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_tcp_stream_raw_parent_class)->finalize (object);
}
static gssize
@@ -509,14 +509,12 @@ tcp_stream_raw_get_remote_address (CamelTcpStream *stream, socklen_t *len)
}
static void
-tcp_stream_raw_class_init (CamelTcpStreamRawClass *class)
+camel_tcp_stream_raw_class_init (CamelTcpStreamRawClass *class)
{
GObjectClass *object_class;
CamelStreamClass *stream_class;
CamelTcpStreamClass *tcp_stream_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->finalize = tcp_stream_raw_finalize;
@@ -535,29 +533,11 @@ tcp_stream_raw_class_init (CamelTcpStreamRawClass *class)
}
static void
-tcp_stream_raw_init (CamelTcpStreamRaw *stream)
+camel_tcp_stream_raw_init (CamelTcpStreamRaw *stream)
{
stream->sockfd = -1;
}
-GType
-camel_tcp_stream_raw_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_TCP_STREAM,
- "CamelTcpStreamRaw",
- sizeof (CamelTcpStreamRawClass),
- (GClassInitFunc) tcp_stream_raw_class_init,
- sizeof (CamelTcpStreamRaw),
- (GInstanceInitFunc) tcp_stream_raw_init,
- 0);
-
- return type;
-}
-
/**
* camel_tcp_stream_raw_new:
*
diff --git a/camel/camel-tcp-stream-ssl.c b/camel/camel-tcp-stream-ssl.c
index 92bfcc2..e8b80e2 100644
--- a/camel/camel-tcp-stream-ssl.c
+++ b/camel/camel-tcp-stream-ssl.c
@@ -68,8 +68,6 @@
(G_TYPE_INSTANCE_GET_PRIVATE \
((obj), CAMEL_TYPE_TCP_STREAM_SSL, CamelTcpStreamSSLPrivate))
-static gpointer parent_class;
-
static gssize stream_read (CamelStream *stream, gchar *buffer, gsize n, GError **error);
static gssize stream_write (CamelStream *stream, const gchar *buffer, gsize n, GError **error);
static gint stream_flush (CamelStream *stream, GError **error);
@@ -92,6 +90,8 @@ struct _CamelTcpStreamSSLPrivate {
guint32 flags;
};
+G_DEFINE_TYPE (CamelTcpStreamSSL, camel_tcp_stream_ssl, CAMEL_TYPE_TCP_STREAM)
+
static void
tcp_stream_ssl_dispose (GObject *object)
{
@@ -105,7 +105,7 @@ tcp_stream_ssl_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_tcp_stream_ssl_parent_class)->dispose (object);
}
static void
@@ -123,17 +123,16 @@ tcp_stream_ssl_finalize (GObject *object)
g_free (priv->expected_host);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_tcp_stream_ssl_parent_class)->finalize (object);
}
static void
-tcp_stream_ssl_class_init (CamelTcpStreamSSLClass *class)
+camel_tcp_stream_ssl_class_init (CamelTcpStreamSSLClass *class)
{
GObjectClass *object_class;
CamelStreamClass *stream_class;
CamelTcpStreamClass *tcp_stream_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelTcpStreamSSLPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -155,29 +154,11 @@ tcp_stream_ssl_class_init (CamelTcpStreamSSLClass *class)
}
static void
-tcp_stream_ssl_init (CamelTcpStreamSSL *stream)
+camel_tcp_stream_ssl_init (CamelTcpStreamSSL *stream)
{
stream->priv = CAMEL_TCP_STREAM_SSL_GET_PRIVATE (stream);
}
-GType
-camel_tcp_stream_ssl_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_TCP_STREAM,
- "CamelTcpStreamSSL",
- sizeof (CamelTcpStreamSSLClass),
- (GClassInitFunc) tcp_stream_ssl_class_init,
- sizeof (CamelTcpStreamSSL),
- (GInstanceInitFunc) tcp_stream_ssl_init,
- 0);
-
- return type;
-}
-
/**
* camel_tcp_stream_ssl_new:
* @session: an active #CamelSession object
diff --git a/camel/camel-tcp-stream.c b/camel/camel-tcp-stream.c
index 2943f69..9f93999 100644
--- a/camel/camel-tcp-stream.c
+++ b/camel/camel-tcp-stream.c
@@ -30,30 +30,16 @@
#define w(x)
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelTcpStream, camel_tcp_stream, CAMEL_TYPE_STREAM)
static void
-tcp_stream_class_init (CamelTcpStreamClass *class)
+camel_tcp_stream_class_init (CamelTcpStreamClass *class)
{
- parent_class = g_type_class_peek_parent (class);
}
-GType
-camel_tcp_stream_get_type (void)
+static void
+camel_tcp_stream_init (CamelTcpStream *tcp_stream)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_STREAM,
- "CamelTcpStream",
- sizeof (CamelTcpStreamClass),
- (GClassInitFunc) tcp_stream_class_init,
- sizeof (CamelTcpStream),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
/**
diff --git a/camel/camel-text-index.c b/camel/camel-text-index.c
index a23505e..94569e3 100644
--- a/camel/camel-text-index.c
+++ b/camel/camel-text-index.c
@@ -171,7 +171,7 @@ struct _CamelTextIndexWord {
/* CamelTextIndex */
/* ********************************************************************** */
-static gpointer text_index_parent_class;
+G_DEFINE_TYPE (CamelTextIndex, camel_text_index, CAMEL_TYPE_INDEX)
static void
text_index_dispose (GObject *object)
@@ -215,7 +215,7 @@ text_index_dispose (GObject *object)
}
/* Chain up to parent's dispose () method. */
- G_OBJECT_CLASS (text_index_parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_text_index_parent_class)->dispose (object);
}
static void
@@ -233,7 +233,7 @@ text_index_finalize (GObject *object)
g_static_rec_mutex_free (&priv->lock);
/* Chain up to parent's finalize () method. */
- G_OBJECT_CLASS (text_index_parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_text_index_parent_class)->finalize (object);
}
/* call locked */
@@ -822,12 +822,11 @@ text_index_names (CamelIndex *idx)
}
static void
-text_index_class_init (CamelTextIndexClass *class)
+camel_text_index_class_init (CamelTextIndexClass *class)
{
GObjectClass *object_class;
CamelIndexClass *index_class;
- text_index_parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelTextIndexPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -850,7 +849,7 @@ text_index_class_init (CamelTextIndexClass *class)
}
static void
-text_index_init (CamelTextIndex *text_index)
+camel_text_index_init (CamelTextIndex *text_index)
{
text_index->priv = CAMEL_TEXT_INDEX_GET_PRIVATE (text_index);
@@ -866,24 +865,6 @@ text_index_init (CamelTextIndex *text_index)
g_static_rec_mutex_init (&text_index->priv->lock);
}
-GType
-camel_text_index_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_INDEX,
- "CamelTextIndex",
- sizeof (CamelTextIndexClass),
- (GClassInitFunc) text_index_class_init,
- sizeof (CamelTextIndex),
- (GInstanceInitFunc) text_index_init,
- 0);
-
- return type;
-}
-
static gchar *
text_index_normalise (CamelIndex *idx, const gchar *in, gpointer data)
{
@@ -1465,7 +1446,7 @@ camel_text_index_validate (CamelTextIndex *idx)
/* CamelTextIndexName */
/* ********************************************************************** */
-static gpointer text_index_name_parent_class;
+G_DEFINE_TYPE (CamelTextIndexName, camel_text_index_name, CAMEL_TYPE_INDEX_NAME)
static void
text_index_name_finalize (GObject *object)
@@ -1480,7 +1461,7 @@ text_index_name_finalize (GObject *object)
e_mempool_destroy (priv->pool);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (text_index_name_parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_text_index_name_parent_class)->finalize (object);
}
static void
@@ -1598,12 +1579,11 @@ text_index_name_add_buffer (CamelIndexName *idn, const gchar *buffer, gsize len)
}
static void
-text_index_name_class_init (CamelTextIndexNameClass *class)
+camel_text_index_name_class_init (CamelTextIndexNameClass *class)
{
GObjectClass *object_class;
CamelIndexNameClass *index_name_class;
- text_index_name_parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelTextIndexNamePrivate));
object_class = G_OBJECT_CLASS (class);
@@ -1615,7 +1595,7 @@ text_index_name_class_init (CamelTextIndexNameClass *class)
}
static void
-text_index_name_init (CamelTextIndexName *text_index_name)
+camel_text_index_name_init (CamelTextIndexName *text_index_name)
{
text_index_name->priv =
CAMEL_TEXT_INDEX_NAME_GET_PRIVATE (text_index_name);
@@ -1628,25 +1608,6 @@ text_index_name_init (CamelTextIndexName *text_index_name)
e_mempool_new (256, 128, E_MEMPOOL_ALIGN_BYTE);
}
-GType
-camel_text_index_name_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID)) {
- type = g_type_register_static_simple (
- CAMEL_TYPE_INDEX_NAME,
- "CamelTextIndexName",
- sizeof (CamelTextIndexNameClass),
- (GClassInitFunc) text_index_name_class_init,
- sizeof (CamelTextIndexName),
- (GInstanceInitFunc) text_index_name_init,
- 0);
- }
-
- return type;
-}
-
CamelTextIndexName *
camel_text_index_name_new (CamelTextIndex *idx, const gchar *name, camel_key_t nameid)
{
@@ -1666,7 +1627,7 @@ camel_text_index_name_new (CamelTextIndex *idx, const gchar *name, camel_key_t n
/* CamelTextIndexCursor */
/* ********************************************************************** */
-static gpointer text_index_cursor_parent_class;
+G_DEFINE_TYPE (CamelTextIndexCursor, camel_text_index_cursor, CAMEL_TYPE_INDEX_CURSOR)
static void
text_index_cursor_finalize (GObject *object)
@@ -1679,7 +1640,7 @@ text_index_cursor_finalize (GObject *object)
g_free (priv->current);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (text_index_cursor_parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_text_index_cursor_parent_class)->finalize (object);
}
static const gchar *
@@ -1732,12 +1693,11 @@ text_index_cursor_reset (CamelIndexCursor *idc)
}
static void
-text_index_cursor_class_init (CamelTextIndexCursorClass *class)
+camel_text_index_cursor_class_init (CamelTextIndexCursorClass *class)
{
GObjectClass *object_class;
CamelIndexCursorClass *index_cursor_class;
- text_index_cursor_parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelTextIndexCursorPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -1749,31 +1709,12 @@ text_index_cursor_class_init (CamelTextIndexCursorClass *class)
}
static void
-text_index_cursor_init (CamelTextIndexCursor *text_index_cursor)
+camel_text_index_cursor_init (CamelTextIndexCursor *text_index_cursor)
{
text_index_cursor->priv =
CAMEL_TEXT_INDEX_CURSOR_GET_PRIVATE (text_index_cursor);
}
-GType
-camel_text_index_cursor_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID)) {
- type = g_type_register_static_simple (
- CAMEL_TYPE_INDEX_CURSOR,
- "CamelTextIndexCursor",
- sizeof (CamelTextIndexCursorClass),
- (GClassInitFunc) text_index_cursor_class_init,
- sizeof (CamelTextIndexCursor),
- (GInstanceInitFunc) text_index_cursor_init,
- 0);
- }
-
- return type;
-}
-
CamelTextIndexCursor *
camel_text_index_cursor_new (CamelTextIndex *idx, camel_block_t data)
{
@@ -1795,7 +1736,7 @@ camel_text_index_cursor_new (CamelTextIndex *idx, camel_block_t data)
/* CamelTextIndexKeyCursor */
/* ********************************************************************** */
-static gpointer text_index_key_cursor_parent_class;
+G_DEFINE_TYPE (CamelTextIndexKeyCursor, camel_text_index_key_cursor, CAMEL_TYPE_INDEX_CURSOR)
static void
text_index_key_cursor_dispose (GObject *object)
@@ -1810,7 +1751,7 @@ text_index_key_cursor_dispose (GObject *object)
}
/* Chain up parent's dispose() method. */
- G_OBJECT_CLASS (text_index_key_cursor_parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_text_index_key_cursor_parent_class)->dispose (object);
}
static void
@@ -1823,7 +1764,7 @@ text_index_key_cursor_finalize (GObject *object)
g_free (priv->current);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (text_index_key_cursor_parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_text_index_key_cursor_parent_class)->finalize (object);
}
static const gchar *
@@ -1861,12 +1802,11 @@ text_index_key_cursor_reset (CamelIndexCursor *idc)
}
static void
-text_index_key_cursor_class_init (CamelTextIndexKeyCursorClass *class)
+camel_text_index_key_cursor_class_init (CamelTextIndexKeyCursorClass *class)
{
GObjectClass *object_class;
CamelIndexCursorClass *index_cursor_class;
- text_index_key_cursor_parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelTextIndexKeyCursorPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -1879,7 +1819,7 @@ text_index_key_cursor_class_init (CamelTextIndexKeyCursorClass *class)
}
static void
-text_index_key_cursor_init (CamelTextIndexKeyCursor *text_index_key_cursor)
+camel_text_index_key_cursor_init (CamelTextIndexKeyCursor *text_index_key_cursor)
{
text_index_key_cursor->priv =
CAMEL_TEXT_INDEX_KEY_CURSOR_GET_PRIVATE (text_index_key_cursor);
@@ -1890,25 +1830,6 @@ text_index_key_cursor_init (CamelTextIndexKeyCursor *text_index_key_cursor)
text_index_key_cursor->priv->current = NULL;
}
-GType
-camel_text_index_key_cursor_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID)) {
- type = g_type_register_static_simple (
- CAMEL_TYPE_INDEX_CURSOR,
- "CamelTextIndexKeyCursor",
- sizeof (CamelTextIndexKeyCursorClass),
- (GClassInitFunc) text_index_key_cursor_class_init,
- sizeof (CamelTextIndexKeyCursor),
- (GInstanceInitFunc) text_index_key_cursor_init,
- 0);
- }
-
- return type;
-}
-
CamelTextIndexKeyCursor *
camel_text_index_key_cursor_new (CamelTextIndex *idx, CamelKeyTable *table)
{
diff --git a/camel/camel-transport.c b/camel/camel-transport.c
index 2a6c4b6..cdbd6ac 100644
--- a/camel/camel-transport.c
+++ b/camel/camel-transport.c
@@ -36,7 +36,7 @@
(G_TYPE_INSTANCE_GET_PRIVATE \
((obj), CAMEL_TYPE_TRANSPORT, CamelTransportPrivate))
-static gpointer parent_class;
+G_DEFINE_ABSTRACT_TYPE (CamelTransport, camel_transport, CAMEL_TYPE_SERVICE)
static void
transport_finalize (GObject *object)
@@ -48,15 +48,14 @@ transport_finalize (GObject *object)
g_mutex_free (priv->send_lock);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_transport_parent_class)->finalize (object);
}
static void
-transport_class_init (CamelTransportClass *class)
+camel_transport_class_init (CamelTransportClass *class)
{
GObjectClass *object_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelTransportPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -64,31 +63,13 @@ transport_class_init (CamelTransportClass *class)
}
static void
-transport_init (CamelTransport *transport)
+camel_transport_init (CamelTransport *transport)
{
transport->priv = CAMEL_TRANSPORT_GET_PRIVATE (transport);
transport->priv->send_lock = g_mutex_new ();
}
-GType
-camel_transport_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_SERVICE,
- "CamelTransport",
- sizeof (CamelTransportClass),
- (GClassInitFunc) transport_class_init,
- sizeof (CamelTransport),
- (GInstanceInitFunc) transport_init,
- 0);
-
- return type;
-}
-
/**
* camel_transport_send_to:
* @transport: a #CamelTransport object
diff --git a/camel/camel-vee-folder.c b/camel/camel-vee-folder.c
index d04c015..94a5dcf 100644
--- a/camel/camel-vee-folder.c
+++ b/camel/camel-vee-folder.c
@@ -58,8 +58,6 @@ struct _update_data {
gboolean rebuilt, correlating;
};
-static gpointer parent_class;
-
struct _folder_changed_msg {
CamelSessionThreadMsg msg;
CamelFolderChangeInfo *changes;
@@ -67,6 +65,8 @@ struct _folder_changed_msg {
CamelVeeFolder *vee_folder;
};
+G_DEFINE_TYPE (CamelVeeFolder, camel_vee_folder, CAMEL_TYPE_FOLDER)
+
/* must be called with summary_lock held */
static CamelVeeMessageInfo *
vee_folder_add_uid (CamelVeeFolder *vf,
@@ -1034,7 +1034,7 @@ vee_folder_finalize (GObject *object)
g_hash_table_destroy (vf->hashes);
/* Chain up to parent's finalize () method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_vee_folder_parent_class)->finalize (object);
}
/* This entire code will be useless, since we sync the counts always. */
@@ -1135,7 +1135,7 @@ vee_folder_getv (CamelObject *object,
arg->tag = (tag & CAMEL_ARG_TYPE) | CAMEL_ARG_IGNORE;
}
- return ((CamelObjectClass *)parent_class)->getv (object, error, args);
+ return ((CamelObjectClass *)camel_vee_folder_parent_class)->getv (object, error, args);
}
static gboolean
@@ -1490,7 +1490,7 @@ vee_folder_delete (CamelFolder *folder)
}
CAMEL_VEE_FOLDER_UNLOCK (folder, subfolder_lock);
- ((CamelFolderClass *)parent_class)->delete (folder);
+ ((CamelFolderClass *)camel_vee_folder_parent_class)->delete (folder);
((CamelVeeFolder *)folder)->deleted = TRUE;
}
@@ -1514,7 +1514,7 @@ vee_folder_freeze (CamelFolder *folder)
CAMEL_VEE_FOLDER_UNLOCK (vfolder, subfolder_lock);
/* call parent implementation */
- CAMEL_FOLDER_CLASS (parent_class)->freeze (folder);
+ CAMEL_FOLDER_CLASS (camel_vee_folder_parent_class)->freeze (folder);
}
static void
@@ -1537,7 +1537,7 @@ vee_folder_thaw (CamelFolder *folder)
CAMEL_VEE_FOLDER_UNLOCK (vfolder, subfolder_lock);
/* call parent implementation */
- CAMEL_FOLDER_CLASS (parent_class)->thaw (folder);
+ CAMEL_FOLDER_CLASS (camel_vee_folder_parent_class)->thaw (folder);
}
static void
@@ -1895,13 +1895,12 @@ vee_folder_folder_renamed (CamelVeeFolder *vee_folder,
}
static void
-vee_folder_class_init (CamelVeeFolderClass *class)
+camel_vee_folder_class_init (CamelVeeFolderClass *class)
{
GObjectClass *object_class;
CamelObjectClass *camel_object_class;
CamelFolderClass *folder_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelVeeFolderPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -1933,7 +1932,7 @@ vee_folder_class_init (CamelVeeFolderClass *class)
}
static void
-vee_folder_init (CamelVeeFolder *vee_folder)
+camel_vee_folder_init (CamelVeeFolder *vee_folder)
{
CamelFolder *folder = CAMEL_FOLDER (vee_folder);
@@ -1963,24 +1962,6 @@ vee_folder_init (CamelVeeFolder *vee_folder)
vee_folder->priv->unread_vfolder = -1;
}
-GType
-camel_vee_folder_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_FOLDER,
- "CamelVeeFolder",
- sizeof (CamelVeeFolderClass),
- (GClassInitFunc) vee_folder_class_init,
- sizeof (CamelVeeFolder),
- (GInstanceInitFunc) vee_folder_init,
- 0);
-
- return type;
-}
-
void
camel_vee_folder_construct (CamelVeeFolder *vf, CamelStore *parent_store, const gchar *full, const gchar *name, guint32 flags)
{
diff --git a/camel/camel-vee-store.c b/camel/camel-vee-store.c
index 81a66ce..48d6bcb 100644
--- a/camel/camel-vee-store.c
+++ b/camel/camel-vee-store.c
@@ -43,7 +43,7 @@
#define CHANGE_DELETE (1)
#define CHANGE_NOSELECT (2)
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelVeeStore, camel_vee_store, CAMEL_TYPE_STORE)
static gint
vee_folder_cmp (gconstpointer ap,
@@ -102,7 +102,7 @@ vee_store_finalize (GObject *object)
g_object_unref (vee_store->folder_unmatched);
/* Chain up to parent's finalize () method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_vee_store_parent_class)->finalize (object);
}
static gboolean
@@ -120,7 +120,7 @@ vee_store_construct (CamelService *service,
vee_store = CAMEL_VEE_STORE (service);
/* Chain up to parent's construct() method. */
- service_class = CAMEL_SERVICE_CLASS (parent_class);
+ service_class = CAMEL_SERVICE_CLASS (camel_vee_store_parent_class);
if (!service_class->construct (service, session, provider, url, error))
return FALSE;
@@ -420,14 +420,12 @@ vee_store_get_junk (CamelStore *store,
}
static void
-vee_store_class_init (CamelVeeStoreClass *class)
+camel_vee_store_class_init (CamelVeeStoreClass *class)
{
GObjectClass *object_class;
CamelServiceClass *service_class;
CamelStoreClass *store_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->finalize = vee_store_finalize;
@@ -445,7 +443,7 @@ vee_store_class_init (CamelVeeStoreClass *class)
}
static void
-vee_store_init (CamelVeeStore *vee_store)
+camel_vee_store_init (CamelVeeStore *vee_store)
{
CamelStore *store = CAMEL_STORE (vee_store);
@@ -453,24 +451,6 @@ vee_store_init (CamelVeeStore *vee_store)
store->flags &= ~(CAMEL_STORE_VTRASH | CAMEL_STORE_VJUNK);
}
-GType
-camel_vee_store_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_STORE,
- "CamelVeeStore",
- sizeof (CamelVeeStoreClass),
- (GClassInitFunc) vee_store_class_init,
- sizeof (CamelVeeStore),
- (GInstanceInitFunc) vee_store_init,
- 0);
-
- return type;
-}
-
/**
* camel_vee_store_new:
*
diff --git a/camel/camel-vee-summary.c b/camel/camel-vee-summary.c
index d3c909d..1c9c2a0 100644
--- a/camel/camel-vee-summary.c
+++ b/camel/camel-vee-summary.c
@@ -41,10 +41,10 @@
#define d(x)
-static gpointer parent_class;
-
static const gchar *unread_str = " (and\n \n (match-all (not (system-flag \"Seen\")))\n \n )\n; (or\n \n (match-all (not (system-flag \"Seen\")))\n \n )\n; (match-threads \"all\" (and\n \n (match-all (not (system-flag \"Seen\")))\n \n )\n)\n; (match-threads \"all\" (or\n \n (match-all (not (system-flag \"Seen\")))\n \n )\n)\n;";
+G_DEFINE_TYPE (CamelVeeSummary, camel_vee_summary, CAMEL_TYPE_FOLDER_SUMMARY)
+
static void
vee_message_info_free(CamelFolderSummary *s, CamelMessageInfo *info)
{
@@ -381,12 +381,10 @@ message_info_from_uid (CamelFolderSummary *s, const gchar *uid)
}
static void
-vee_summary_class_init (CamelVeeSummaryClass *class)
+camel_vee_summary_class_init (CamelVeeSummaryClass *class)
{
CamelFolderSummaryClass *folder_summary_class;
- parent_class = g_type_class_peek_parent (class);
-
folder_summary_class = CAMEL_FOLDER_SUMMARY_CLASS (class);
folder_summary_class->message_info_size = sizeof (CamelVeeMessageInfo);
folder_summary_class->content_info_size = 0;
@@ -403,22 +401,9 @@ vee_summary_class_init (CamelVeeSummaryClass *class)
folder_summary_class->message_info_from_uid = message_info_from_uid;
}
-GType
-camel_vee_summary_get_type (void)
+static void
+camel_vee_summary_init (CamelVeeSummary *vee_summary)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_FOLDER_SUMMARY,
- "CamelVeeSummary",
- sizeof (CamelVeeSummaryClass),
- (GClassInitFunc) vee_summary_class_init,
- sizeof (CamelVeeSummary),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
/**
diff --git a/camel/camel-vtrash-folder.c b/camel/camel-vtrash-folder.c
index 631ec5d..b3113e8 100644
--- a/camel/camel-vtrash-folder.c
+++ b/camel/camel-vtrash-folder.c
@@ -37,9 +37,6 @@
#include "camel-vtrash-folder.h"
#include "camel-string-utils.h"
-/* Returns the class for a CamelFolder */
-#define CF_CLASS(so) ((CamelFolderClass *)((CamelObject *)(so))->class)
-
static struct {
const gchar *full_name;
const gchar *name;
@@ -62,7 +59,7 @@ struct _transfer_data {
gboolean delete;
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelVTrashFolder, camel_vtrash_folder, CAMEL_TYPE_VEE_FOLDER)
static void
transfer_messages (CamelFolder *folder,
@@ -168,7 +165,7 @@ vtrash_folder_getv (CamelObject *object,
arg->tag = (tag & CAMEL_ARG_TYPE) | CAMEL_ARG_IGNORE;
}
- return CAMEL_OBJECT_CLASS (parent_class)->getv (object, error, args);
+ return CAMEL_OBJECT_CLASS (camel_vtrash_folder_parent_class)->getv (object, error, args);
}
static gboolean
@@ -269,13 +266,11 @@ vtrash_folder_transfer_messages_to (CamelFolder *source,
}
static void
-vtrash_folder_class_init (CamelVTrashFolderClass *class)
+camel_vtrash_folder_class_init (CamelVTrashFolderClass *class)
{
CamelObjectClass *camel_object_class;
CamelFolderClass *folder_class;
- parent_class = g_type_class_peek_parent (class);
-
/* Not required from here on. We don't count */
camel_object_class = CAMEL_OBJECT_CLASS (class);
camel_object_class->getv = vtrash_folder_getv;
@@ -285,22 +280,9 @@ vtrash_folder_class_init (CamelVTrashFolderClass *class)
folder_class->transfer_messages_to = vtrash_folder_transfer_messages_to;
}
-GType
-camel_vtrash_folder_get_type (void)
+static void
+camel_vtrash_folder_init (CamelVTrashFolder *vtrash_folder)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_VEE_FOLDER,
- "CamelVTrashFolder",
- sizeof (CamelVTrashFolderClass),
- (GClassInitFunc) vtrash_folder_class_init,
- sizeof (CamelVTrashFolder),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
/**
diff --git a/camel/providers/groupwise/camel-groupwise-folder.c b/camel/providers/groupwise/camel-groupwise-folder.c
index 73cd4d8..3a45561 100644
--- a/camel/providers/groupwise/camel-groupwise-folder.c
+++ b/camel/providers/groupwise/camel-groupwise-folder.c
@@ -69,8 +69,6 @@ which needs to be better organized via functions */
(G_TYPE_INSTANCE_GET_PRIVATE \
((obj), CAMEL_TYPE_GROUPWISE_FOLDER, CamelGroupwiseFolderPrivate))
-static gpointer parent_class;
-
struct _CamelGroupwiseFolderPrivate {
#ifdef ENABLE_THREADS
@@ -104,6 +102,8 @@ static gboolean groupwise_sync (CamelFolder *folder, gboolean expunge, CamelMess
static const gchar * GET_ITEM_VIEW_WITH_CACHE = "peek default recipient threading attachments subject status priority startDate created delivered size recurrenceKey message notification";
static const gchar * GET_ITEM_VIEW_WITHOUT_CACHE = "peek default recipient threading hasAttachment subject status priority startDate created delivered size recurrenceKey";
+G_DEFINE_TYPE (CamelGroupwiseFolder, camel_groupwise_folder, CAMEL_TYPE_OFFLINE_FOLDER)
+
static gchar *
groupwise_get_filename (CamelFolder *folder, const gchar *uid, GError **error)
{
@@ -481,7 +481,7 @@ groupwise_folder_rename (CamelFolder *folder, const gchar *new)
camel_data_cache_set_path (gw_folder->cache, folder_dir);
CAMEL_GROUPWISE_FOLDER_REC_UNLOCK (folder, cache_lock);
- ((CamelFolderClass *)parent_class)->rename(folder, new);
+ ((CamelFolderClass *)camel_groupwise_folder_parent_class)->rename(folder, new);
camel_folder_summary_set_filename (folder->summary, summary_path);
state_file = g_strdup_printf ("%s/cmeta", folder_dir);
@@ -2810,17 +2810,16 @@ groupwise_folder_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_groupwise_folder_parent_class)->dispose (object);
}
static void
-groupwise_folder_class_init (CamelGroupwiseFolderClass *class)
+camel_groupwise_folder_class_init (CamelGroupwiseFolderClass *class)
{
GObjectClass *object_class;
CamelObjectClass *camel_object_class;
CamelFolderClass *folder_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelGroupwiseFolderPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -2847,7 +2846,7 @@ groupwise_folder_class_init (CamelGroupwiseFolderClass *class)
}
static void
-groupwise_folder_init (CamelGroupwiseFolder *gw_folder)
+camel_groupwise_folder_init (CamelGroupwiseFolder *gw_folder)
{
CamelFolder *folder = CAMEL_FOLDER (gw_folder);
@@ -2866,24 +2865,6 @@ groupwise_folder_init (CamelGroupwiseFolder *gw_folder)
gw_folder->need_rescan = TRUE;
}
-GType
-camel_groupwise_folder_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (type == G_TYPE_INVALID)
- type = g_type_register_static_simple (
- CAMEL_TYPE_OFFLINE_FOLDER,
- "CamelGroupwiseFolder",
- sizeof (CamelGroupwiseFolderClass),
- (GClassInitFunc) groupwise_folder_class_init,
- sizeof (CamelGroupwiseFolder),
- (GInstanceInitFunc) groupwise_folder_init,
- 0);
-
- return type;
-}
-
static gint
gw_getv (CamelObject *object, GError **error, CamelArgGetV *args)
{
@@ -2915,7 +2896,7 @@ gw_getv (CamelObject *object, GError **error, CamelArgGetV *args)
}
if (count)
- return ((CamelObjectClass *)parent_class)->getv(object, error, args);
+ return ((CamelObjectClass *)camel_groupwise_folder_parent_class)->getv(object, error, args);
return 0;
diff --git a/camel/providers/groupwise/camel-groupwise-journal.c b/camel/providers/groupwise/camel-groupwise-journal.c
index 29520db..4ac9594 100644
--- a/camel/providers/groupwise/camel-groupwise-journal.c
+++ b/camel/providers/groupwise/camel-groupwise-journal.c
@@ -46,15 +46,13 @@ static CamelDListNode *groupwise_entry_load (CamelOfflineJournal *journal, FILE
static gint groupwise_entry_write (CamelOfflineJournal *journal, CamelDListNode *entry, FILE *out);
static gint groupwise_entry_play (CamelOfflineJournal *journal, CamelDListNode *entry, GError **error);
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelGroupwiseJournal, camel_groupwise_journal, CAMEL_TYPE_OFFLINE_JOURNAL)
static void
-groupwise_journal_class_init (CamelGroupwiseJournalClass *class)
+camel_groupwise_journal_class_init (CamelGroupwiseJournalClass *class)
{
CamelOfflineJournalClass *offline_journal_class;
- parent_class = g_type_class_peek_parent (class);
-
offline_journal_class = CAMEL_OFFLINE_JOURNAL_CLASS (class);
offline_journal_class->entry_free = groupwise_entry_free;
offline_journal_class->entry_load = groupwise_entry_load;
@@ -62,22 +60,9 @@ groupwise_journal_class_init (CamelGroupwiseJournalClass *class)
offline_journal_class->entry_play = groupwise_entry_play;
}
-GType
-camel_groupwise_journal_get_type (void)
+static void
+camel_groupwise_journal_init (CamelGroupwiseJournal *groupwise_journal)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OFFLINE_JOURNAL,
- "CamelGroupwiseJournal",
- sizeof (CamelGroupwiseJournalClass),
- (GClassInitFunc) groupwise_journal_class_init,
- sizeof (CamelGroupwiseJournal),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
static void
diff --git a/camel/providers/groupwise/camel-groupwise-store-summary.c b/camel/providers/groupwise/camel-groupwise-store-summary.c
index 2314879..06bd872 100644
--- a/camel/providers/groupwise/camel-groupwise-store-summary.c
+++ b/camel/providers/groupwise/camel-groupwise-store-summary.c
@@ -52,15 +52,13 @@ static void store_info_set_string(CamelStoreSummary *s, CamelStoreInfo *mi, gint
static const gchar *store_info_string(CamelStoreSummary *s, const CamelStoreInfo *mi, gint type);
CamelGroupwiseStoreNamespace *camel_groupwise_store_summary_namespace_find_full(CamelGroupwiseStoreSummary *s, const gchar *full);
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelGroupwiseStoreSummary, camel_groupwise_store_summary, CAMEL_TYPE_STORE_SUMMARY)
static void
-groupwise_store_summary_class_init (CamelGroupwiseStoreSummaryClass *class)
+camel_groupwise_store_summary_class_init (CamelGroupwiseStoreSummaryClass *class)
{
CamelStoreSummaryClass *store_summary_class;
- parent_class = g_type_class_peek_parent (class);
-
store_summary_class = CAMEL_STORE_SUMMARY_CLASS (class);
store_summary_class->summary_header_load = summary_header_load;
store_summary_class->summary_header_save = summary_header_save;
@@ -72,7 +70,7 @@ groupwise_store_summary_class_init (CamelGroupwiseStoreSummaryClass *class)
}
static void
-groupwise_store_summary_init (CamelGroupwiseStoreSummary *gw_summary)
+camel_groupwise_store_summary_init (CamelGroupwiseStoreSummary *gw_summary)
{
CamelStoreSummary *summary = CAMEL_STORE_SUMMARY (gw_summary);
@@ -80,24 +78,6 @@ groupwise_store_summary_init (CamelGroupwiseStoreSummary *gw_summary)
gw_summary->version = CAMEL_GW_STORE_SUMMARY_VERSION;
}
-GType
-camel_groupwise_store_summary_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_STORE_SUMMARY,
- "CamelGroupwiseStoreSummary",
- sizeof (CamelGroupwiseStoreSummaryClass),
- (GClassInitFunc) groupwise_store_summary_class_init,
- sizeof (CamelGroupwiseStoreSummary),
- (GInstanceInitFunc) groupwise_store_summary_init,
- 0);
-
- return type;
-}
-
CamelGroupwiseStoreSummary *
camel_groupwise_store_summary_new (void)
{
@@ -445,7 +425,7 @@ summary_header_load(CamelStoreSummary *s, FILE *in)
namespace_clear (s);
- if (CAMEL_STORE_SUMMARY_CLASS (parent_class)->summary_header_load ((CamelStoreSummary *)s, in) == -1
+ if (CAMEL_STORE_SUMMARY_CLASS (camel_groupwise_store_summary_parent_class)->summary_header_load ((CamelStoreSummary *)s, in) == -1
|| camel_file_util_decode_fixed_int32(in, &version) == -1)
return -1;
@@ -471,7 +451,7 @@ summary_header_save(CamelStoreSummary *s, FILE *out)
guint32 count;
count = summary->namespace?1:0;
- if (CAMEL_STORE_SUMMARY_CLASS (parent_class)->summary_header_save((CamelStoreSummary *)s, out) == -1
+ if (CAMEL_STORE_SUMMARY_CLASS (camel_groupwise_store_summary_parent_class)->summary_header_save((CamelStoreSummary *)s, out) == -1
|| camel_file_util_encode_fixed_int32(out, 0) == -1
|| camel_file_util_encode_fixed_int32(out, summary->capabilities) == -1
|| camel_file_util_encode_fixed_int32(out, count) == -1)
@@ -488,7 +468,7 @@ store_info_load(CamelStoreSummary *s, FILE *in)
{
CamelGroupwiseStoreInfo *si;
- si = (CamelGroupwiseStoreInfo *)CAMEL_STORE_SUMMARY_CLASS (parent_class)->store_info_load(s, in);
+ si = (CamelGroupwiseStoreInfo *)CAMEL_STORE_SUMMARY_CLASS (camel_groupwise_store_summary_parent_class)->store_info_load(s, in);
if (si) {
if (camel_file_util_decode_string(in, &si->full_name) == -1) {
camel_store_summary_info_free(s, (CamelStoreInfo *)si);
@@ -504,7 +484,7 @@ store_info_save(CamelStoreSummary *s, FILE *out, CamelStoreInfo *mi)
{
CamelGroupwiseStoreInfo *summary = (CamelGroupwiseStoreInfo *)mi;
- if (CAMEL_STORE_SUMMARY_CLASS (parent_class)->store_info_save(s, out, mi) == -1
+ if (CAMEL_STORE_SUMMARY_CLASS (camel_groupwise_store_summary_parent_class)->store_info_save(s, out, mi) == -1
|| camel_file_util_encode_string(out, summary->full_name) == -1)
return -1;
@@ -517,7 +497,7 @@ store_info_free(CamelStoreSummary *s, CamelStoreInfo *mi)
CamelGroupwiseStoreInfo *si = (CamelGroupwiseStoreInfo *)mi;
g_free(si->full_name);
- CAMEL_STORE_SUMMARY_CLASS (parent_class)->store_info_free(s, mi);
+ CAMEL_STORE_SUMMARY_CLASS (camel_groupwise_store_summary_parent_class)->store_info_free(s, mi);
}
static const gchar *
@@ -533,7 +513,7 @@ store_info_string(CamelStoreSummary *s, const CamelStoreInfo *mi, gint type)
case CAMEL_STORE_INFO_LAST:
return isi->full_name;
default:
- return CAMEL_STORE_SUMMARY_CLASS (parent_class)->store_info_string(s, mi, type);
+ return CAMEL_STORE_SUMMARY_CLASS (camel_groupwise_store_summary_parent_class)->store_info_string(s, mi, type);
}
}
@@ -553,7 +533,7 @@ store_info_set_string(CamelStoreSummary *s, CamelStoreInfo *mi, gint type, const
CAMEL_STORE_SUMMARY_UNLOCK(s, summary_lock);
break;
default:
- CAMEL_STORE_SUMMARY_CLASS (parent_class)->store_info_set_string(s, mi, type, str);
+ CAMEL_STORE_SUMMARY_CLASS (camel_groupwise_store_summary_parent_class)->store_info_set_string(s, mi, type, str);
break;
}
}
diff --git a/camel/providers/groupwise/camel-groupwise-store.c b/camel/providers/groupwise/camel-groupwise-store.c
index 420ad4b..9fdc748 100644
--- a/camel/providers/groupwise/camel-groupwise-store.c
+++ b/camel/providers/groupwise/camel-groupwise-store.c
@@ -71,13 +71,13 @@ struct _CamelGroupwiseStorePrivate {
EGwConnection *cnc;
};
-static gpointer parent_class;
-
extern CamelServiceAuthType camel_groupwise_password_authtype; /*for the query_auth_types function*/
static CamelFolderInfo *convert_to_folder_info (CamelGroupwiseStore *store, EGwContainer *container, const gchar *url, GError **error);
static gboolean groupwise_folders_sync (CamelGroupwiseStore *store, GError **error);
static gint match_path(const gchar *path, const gchar *name);
+G_DEFINE_TYPE (CamelGroupwiseStore, camel_groupwise_store, CAMEL_TYPE_OFFLINE_STORE)
+
static gboolean
groupwise_store_construct (CamelService *service, CamelSession *session,
CamelProvider *provider, CamelURL *url,
@@ -93,7 +93,7 @@ groupwise_store_construct (CamelService *service, CamelSession *session,
d(printf ("\nin groupwise store constrcut\n"));
/* Chain up to parent's construct() method. */
- service_class = CAMEL_SERVICE_CLASS (parent_class);
+ service_class = CAMEL_SERVICE_CLASS (camel_groupwise_store_parent_class);
if (!service_class->construct (service, session, provider, url, error))
return FALSE;
@@ -1452,7 +1452,7 @@ groupwise_can_refresh_folder (CamelStore *store, CamelFolderInfo *info, GError *
{
gboolean res;
- res = CAMEL_STORE_CLASS(parent_class)->can_refresh_folder (store, info, error) ||
+ res = CAMEL_STORE_CLASS(camel_groupwise_store_parent_class)->can_refresh_folder (store, info, error) ||
(camel_url_get_param (((CamelService *)store)->url, "check_all") != NULL);
return res;
@@ -1519,7 +1519,7 @@ groupwise_store_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_groupwise_store_parent_class)->dispose (object);
}
static void
@@ -1547,17 +1547,16 @@ groupwise_store_finalize (GObject *object)
g_hash_table_destroy (groupwise_store->priv->parent_hash);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_groupwise_store_parent_class)->finalize (object);
}
static void
-groupwise_store_class_init (CamelGroupwiseStoreClass *class)
+camel_groupwise_store_class_init (CamelGroupwiseStoreClass *class)
{
GObjectClass *object_class;
CamelServiceClass *service_class;
CamelStoreClass *store_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelGroupwiseStorePrivate));
object_class = G_OBJECT_CLASS (class);
@@ -1585,7 +1584,7 @@ groupwise_store_class_init (CamelGroupwiseStoreClass *class)
}
static void
-groupwise_store_init (CamelGroupwiseStore *groupwise_store)
+camel_groupwise_store_init (CamelGroupwiseStore *groupwise_store)
{
groupwise_store->priv =
CAMEL_GROUPWISE_STORE_GET_PRIVATE (groupwise_store);
@@ -1599,21 +1598,3 @@ groupwise_store_init (CamelGroupwiseStore *groupwise_store)
groupwise_store->current_folder = NULL;
}
-GType
-camel_groupwise_store_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (type == G_TYPE_INVALID)
- type = g_type_register_static_simple (
- CAMEL_TYPE_OFFLINE_STORE,
- "CamelGroupwiseStore",
- sizeof (CamelGroupwiseStoreClass),
- (GClassInitFunc) groupwise_store_class_init,
- sizeof (CamelGroupwiseStore),
- (GInstanceInitFunc) groupwise_store_init,
- 0);
-
- return type;
-}
-
diff --git a/camel/providers/groupwise/camel-groupwise-summary.c b/camel/providers/groupwise/camel-groupwise-summary.c
index 72fa651..c07b2f1 100644
--- a/camel/providers/groupwise/camel-groupwise-summary.c
+++ b/camel/providers/groupwise/camel-groupwise-summary.c
@@ -63,7 +63,7 @@ static CamelMessageContentInfo * content_info_from_db (CamelFolderSummary *s, Ca
/*End of Prototypes*/
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelGroupwiseSummary, camel_groupwise_summary, CAMEL_TYPE_FOLDER_SUMMARY)
static CamelMessageInfo *
gw_message_info_clone(CamelFolderSummary *s, const CamelMessageInfo *mi)
@@ -71,7 +71,7 @@ gw_message_info_clone(CamelFolderSummary *s, const CamelMessageInfo *mi)
CamelGroupwiseMessageInfo *to;
const CamelGroupwiseMessageInfo *from = (const CamelGroupwiseMessageInfo *)mi;
- to = (CamelGroupwiseMessageInfo *)CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->message_info_clone(s, mi);
+ to = (CamelGroupwiseMessageInfo *)CAMEL_FOLDER_SUMMARY_CLASS (camel_groupwise_summary_parent_class)->message_info_clone(s, mi);
to->server_flags = from->server_flags;
/* FIXME: parent clone should do this */
@@ -81,12 +81,10 @@ gw_message_info_clone(CamelFolderSummary *s, const CamelMessageInfo *mi)
}
static void
-groupwise_summary_class_init (CamelGroupwiseSummaryClass *class)
+camel_groupwise_summary_class_init (CamelGroupwiseSummaryClass *class)
{
CamelFolderSummaryClass *folder_summary_class;
- parent_class = g_type_class_peek_parent (class);
-
folder_summary_class = CAMEL_FOLDER_SUMMARY_CLASS (class);
folder_summary_class->message_info_size = sizeof (CamelGroupwiseMessageInfo);
folder_summary_class->content_info_size = sizeof (CamelGroupwiseMessageContentInfo);
@@ -107,7 +105,7 @@ groupwise_summary_class_init (CamelGroupwiseSummaryClass *class)
}
static void
-groupwise_summary_init (CamelGroupwiseSummary *gw_summary)
+camel_groupwise_summary_init (CamelGroupwiseSummary *gw_summary)
{
CamelFolderSummary *summary = CAMEL_FOLDER_SUMMARY (gw_summary);
@@ -115,24 +113,6 @@ groupwise_summary_init (CamelGroupwiseSummary *gw_summary)
summary->meta_summary->uid_len = 2048;
}
-GType
-camel_groupwise_summary_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_FOLDER_SUMMARY,
- "CamelGroupwiseSummary",
- sizeof (CamelGroupwiseSummaryClass),
- (GClassInitFunc) groupwise_summary_class_init,
- sizeof (CamelGroupwiseSummary),
- (GInstanceInitFunc) groupwise_summary_init,
- 0);
-
- return type;
-}
-
/**
* camel_groupwise_summary_new:
* @filename: the file to store the summary in.
@@ -165,7 +145,7 @@ summary_header_from_db (CamelFolderSummary *s, CamelFIRecord *mir)
CamelGroupwiseSummary *gms = CAMEL_GROUPWISE_SUMMARY (s);
gchar *part;
- if (CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->summary_header_from_db (s, mir) == -1)
+ if (CAMEL_FOLDER_SUMMARY_CLASS (camel_groupwise_summary_parent_class)->summary_header_from_db (s, mir) == -1)
return -1;
part = mir->bdata;
@@ -188,7 +168,7 @@ gw_summary_header_load (CamelFolderSummary *s, FILE *in)
{
CamelGroupwiseSummary *gms = CAMEL_GROUPWISE_SUMMARY (s);
- if (CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->summary_header_load (s, in) == -1)
+ if (CAMEL_FOLDER_SUMMARY_CLASS (camel_groupwise_summary_parent_class)->summary_header_load (s, in) == -1)
return -1;
if (camel_file_util_decode_fixed_int32(in, &gms->version) == -1
@@ -206,7 +186,7 @@ summary_header_to_db (CamelFolderSummary *s, GError **error)
CamelGroupwiseSummary *ims = CAMEL_GROUPWISE_SUMMARY(s);
struct _CamelFIRecord *fir;
- fir = CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->summary_header_to_db (s, error);
+ fir = CAMEL_FOLDER_SUMMARY_CLASS (camel_groupwise_summary_parent_class)->summary_header_to_db (s, error);
if (!fir)
return NULL;
@@ -221,7 +201,7 @@ gw_summary_header_save (CamelFolderSummary *s, FILE *out)
{
CamelGroupwiseSummary *gms = CAMEL_GROUPWISE_SUMMARY(s);
- if (CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->summary_header_save (s, out) == -1)
+ if (CAMEL_FOLDER_SUMMARY_CLASS (camel_groupwise_summary_parent_class)->summary_header_save (s, out) == -1)
return -1;
camel_file_util_encode_fixed_int32(out, CAMEL_GW_SUMMARY_VERSION);
@@ -235,7 +215,7 @@ message_info_from_db (CamelFolderSummary *s, CamelMIRecord *mir)
CamelMessageInfo *info;
CamelGroupwiseMessageInfo *iinfo;
- info = CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->message_info_from_db (s, mir);
+ info = CAMEL_FOLDER_SUMMARY_CLASS (camel_groupwise_summary_parent_class)->message_info_from_db (s, mir);
if (info) {
gchar *part = mir->bdata;
iinfo = (CamelGroupwiseMessageInfo *)info;
@@ -250,7 +230,7 @@ gw_message_info_load (CamelFolderSummary *s, FILE *in)
CamelMessageInfo *info;
CamelGroupwiseMessageInfo *gw_info;
- info = CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->message_info_load(s,in);
+ info = CAMEL_FOLDER_SUMMARY_CLASS (camel_groupwise_summary_parent_class)->message_info_load(s,in);
if (info) {
gw_info = (CamelGroupwiseMessageInfo*) info;
if (camel_file_util_decode_uint32 (in, &gw_info->server_flags) == -1)
@@ -269,7 +249,7 @@ message_info_to_db (CamelFolderSummary *s, CamelMessageInfo *info)
CamelGroupwiseMessageInfo *iinfo = (CamelGroupwiseMessageInfo *)info;
struct _CamelMIRecord *mir;
- mir = CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->message_info_to_db (s, info);
+ mir = CAMEL_FOLDER_SUMMARY_CLASS (camel_groupwise_summary_parent_class)->message_info_to_db (s, info);
if (mir)
mir->bdata = g_strdup_printf ("%u", iinfo->server_flags);
@@ -281,7 +261,7 @@ gw_message_info_save (CamelFolderSummary *s, FILE *out, CamelMessageInfo *info)
{
CamelGroupwiseMessageInfo *gw_info = (CamelGroupwiseMessageInfo *)info;
- if (CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->message_info_save (s, out, info) == -1)
+ if (CAMEL_FOLDER_SUMMARY_CLASS (camel_groupwise_summary_parent_class)->message_info_save (s, out, info) == -1)
return -1;
return camel_file_util_encode_uint32 (out, gw_info->server_flags);
@@ -302,7 +282,7 @@ content_info_from_db (CamelFolderSummary *s, CamelMIRecord *mir)
}
mir->cinfo = part;
if (type)
- return CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->content_info_from_db (s, mir);
+ return CAMEL_FOLDER_SUMMARY_CLASS (camel_groupwise_summary_parent_class)->content_info_from_db (s, mir);
else
return camel_folder_summary_content_info_new (s);
}
@@ -311,7 +291,7 @@ static CamelMessageContentInfo *
gw_content_info_load (CamelFolderSummary *s, FILE *in)
{
if (fgetc (in))
- return CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->content_info_load (s, in);
+ return CAMEL_FOLDER_SUMMARY_CLASS (camel_groupwise_summary_parent_class)->content_info_load (s, in);
else
return camel_folder_summary_content_info_new (s);
}
@@ -322,7 +302,7 @@ content_info_to_db (CamelFolderSummary *s, CamelMessageContentInfo *info, CamelM
if (info->type) {
mir->cinfo = g_strdup ("1");
- return CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->content_info_to_db (s, info, mir);
+ return CAMEL_FOLDER_SUMMARY_CLASS (camel_groupwise_summary_parent_class)->content_info_to_db (s, info, mir);
} else {
mir->cinfo = g_strdup ("0");
return 0;
@@ -335,7 +315,7 @@ gw_content_info_save (CamelFolderSummary *s, FILE *out,
{
if (info->type) {
fputc (1, out);
- return CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->content_info_save (s, out, info);
+ return CAMEL_FOLDER_SUMMARY_CLASS (camel_groupwise_summary_parent_class)->content_info_save (s, out, info);
} else
return fputc (0, out);
}
diff --git a/camel/providers/groupwise/camel-groupwise-transport.c b/camel/providers/groupwise/camel-groupwise-transport.c
index 42cdb23..5c76ddd 100644
--- a/camel/providers/groupwise/camel-groupwise-transport.c
+++ b/camel/providers/groupwise/camel-groupwise-transport.c
@@ -42,7 +42,7 @@ static gboolean groupwise_send_to (CamelTransport *transport,
CamelAddress *recipients,
GError **error);
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelGroupwiseTransport, camel_groupwise_transport, CAMEL_TYPE_TRANSPORT)
static gboolean
groupwise_transport_connect (CamelService *service,
@@ -179,13 +179,11 @@ groupwise_send_to (CamelTransport *transport,
}
static void
-groupwise_transport_class_init (CamelGroupwiseTransportClass *class)
+camel_groupwise_transport_class_init (CamelGroupwiseTransportClass *class)
{
CamelServiceClass *service_class;
CamelTransportClass *transport_class;
- parent_class = g_type_class_peek_parent (class);
-
service_class = CAMEL_SERVICE_CLASS (class);
service_class->connect = groupwise_transport_connect;
service_class->get_name = groupwise_transport_get_name;
@@ -194,20 +192,8 @@ groupwise_transport_class_init (CamelGroupwiseTransportClass *class)
transport_class->send_to = groupwise_send_to;
}
-GType
-camel_groupwise_transport_get_type (void)
+static void
+camel_groupwise_transport_init (CamelGroupwiseTransport *groupwise_transport)
{
- static GType type = G_TYPE_INVALID;
-
- if (type == G_TYPE_INVALID)
- type = g_type_register_static_simple (
- CAMEL_TYPE_TRANSPORT,
- "CamelGroupwiseTransport",
- sizeof (CamelGroupwiseTransportClass),
- (GClassInitFunc) groupwise_transport_class_init,
- sizeof (CamelGroupwiseTransport),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
+
diff --git a/camel/providers/imap/camel-imap-folder.c b/camel/providers/imap/camel-imap-folder.c
index a1a7fb3..ee07f6e 100644
--- a/camel/providers/imap/camel-imap-folder.c
+++ b/camel/providers/imap/camel-imap-folder.c
@@ -115,8 +115,6 @@ static void imap_search_free (CamelFolder *folder, GPtrArray *uid
static void imap_thaw (CamelFolder *folder);
static CamelFolderQuotaInfo *imap_get_quota_info (CamelFolder *folder);
-static gpointer parent_class;
-
static GData *parse_fetch_response (CamelImapFolder *imap_folder, gchar *msg_att);
/* internal helpers */
@@ -133,6 +131,8 @@ static CamelImapMessageInfo * imap_folder_summary_uid_or_error(
#define strtok_r(s,sep,lasts) (*(lasts)=strtok((s),(sep)))
#endif
+G_DEFINE_TYPE (CamelImapFolder, camel_imap_folder, CAMEL_TYPE_OFFLINE_FOLDER)
+
static void
imap_folder_dispose (GObject *object)
{
@@ -162,7 +162,7 @@ imap_folder_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_imap_folder_parent_class)->dispose (object);
}
static void
@@ -178,18 +178,17 @@ imap_folder_finalize (GObject *object)
#endif
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_imap_folder_parent_class)->finalize (object);
}
static void
-imap_folder_class_init (CamelImapFolderClass *class)
+camel_imap_folder_class_init (CamelImapFolderClass *class)
{
GObjectClass *object_class;
CamelObjectClass *camel_object_class;
CamelFolderClass *folder_class;
gint i;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelImapFolderPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -224,7 +223,7 @@ imap_folder_class_init (CamelImapFolderClass *class)
}
static void
-imap_folder_init (CamelImapFolder *imap_folder)
+camel_imap_folder_init (CamelImapFolder *imap_folder)
{
CamelFolder *folder = CAMEL_FOLDER (imap_folder);
@@ -246,24 +245,6 @@ imap_folder_init (CamelImapFolder *imap_folder)
imap_folder->need_rescan = TRUE;
}
-GType
-camel_imap_folder_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (type == G_TYPE_INVALID)
- type = g_type_register_static_simple (
- CAMEL_TYPE_OFFLINE_FOLDER,
- "CamelImapFolder",
- sizeof (CamelImapFolderClass),
- (GClassInitFunc) imap_folder_class_init,
- sizeof (CamelImapFolder),
- (GInstanceInitFunc) imap_folder_init,
- 0);
-
- return type;
-}
-
static void
replay_offline_journal (CamelImapStore *imap_store, CamelImapFolder *imap_folder, GError **error)
{
@@ -531,7 +512,7 @@ imap_getv(CamelObject *object, GError **error, CamelArgGetV *args)
props.argc = 1;
props.argv[0] = *arg;
- ((CamelObjectClass *)parent_class)->getv(object, error, &props);
+ ((CamelObjectClass *)camel_imap_folder_parent_class)->getv(object, error, &props);
for (i = 0; i < G_N_ELEMENTS (imap_property_list); i++)
*arg->ca_ptr = g_slist_append (*arg->ca_ptr, &imap_property_list[i]);
@@ -560,7 +541,7 @@ imap_getv(CamelObject *object, GError **error, CamelArgGetV *args)
}
if (count)
- return ((CamelObjectClass *)parent_class)->getv(object, error, args);
+ return ((CamelObjectClass *)camel_imap_folder_parent_class)->getv(object, error, args);
return 0;
}
@@ -613,7 +594,7 @@ imap_setv (CamelObject *object, GError **error, CamelArgV *args)
if (save)
camel_object_state_write (object);
- return ((CamelObjectClass *)parent_class)->setv (object, error, args);
+ return ((CamelObjectClass *)camel_imap_folder_parent_class)->setv (object, error, args);
}
static void
@@ -642,7 +623,7 @@ imap_rename (CamelFolder *folder, const gchar *new)
g_free(summary_path);
g_free(folder_dir);
- CAMEL_FOLDER_CLASS (parent_class)->rename (folder, new);
+ CAMEL_FOLDER_CLASS (camel_imap_folder_parent_class)->rename (folder, new);
}
/* called with connect_lock locked */
@@ -3905,7 +3886,7 @@ imap_thaw (CamelFolder *folder)
{
CamelImapFolder *imap_folder;
- CAMEL_FOLDER_CLASS (parent_class)->thaw (folder);
+ CAMEL_FOLDER_CLASS (camel_imap_folder_parent_class)->thaw (folder);
if (camel_folder_is_frozen (folder))
return;
diff --git a/camel/providers/imap/camel-imap-journal.c b/camel/providers/imap/camel-imap-journal.c
index 38d21c0..030bd57 100644
--- a/camel/providers/imap/camel-imap-journal.c
+++ b/camel/providers/imap/camel-imap-journal.c
@@ -49,7 +49,7 @@ static void unref_folder (gpointer key, gpointer value, gpointer data);
static void free_uids (GPtrArray *array);
static void close_folder (gpointer name, gpointer folder, gpointer data);
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelIMAPJournal, camel_imap_journal, CAMEL_TYPE_OFFLINE_JOURNAL)
static void
free_uid (gpointer key, gpointer value, gpointer data)
@@ -75,17 +75,15 @@ imap_journal_finalize (GObject *object)
}
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_imap_journal_parent_class)->finalize (object);
}
static void
-imap_journal_class_init (CamelIMAPJournalClass *class)
+camel_imap_journal_class_init (CamelIMAPJournalClass *class)
{
GObjectClass *object_class;
CamelOfflineJournalClass *offline_journal_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->finalize = imap_journal_finalize;
@@ -97,30 +95,12 @@ imap_journal_class_init (CamelIMAPJournalClass *class)
}
static void
-imap_journal_init (CamelIMAPJournal *journal)
+camel_imap_journal_init (CamelIMAPJournal *journal)
{
journal->folders = g_hash_table_new (g_str_hash, g_str_equal);
journal->uidmap = g_hash_table_new (g_str_hash, g_str_equal);
}
-GType
-camel_imap_journal_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OFFLINE_JOURNAL,
- "CamelIMAPJournal",
- sizeof (CamelIMAPJournalClass),
- (GClassInitFunc) imap_journal_class_init,
- sizeof (CamelIMAPJournal),
- (GInstanceInitFunc) imap_journal_init,
- 0);
-
- return type;
-}
-
static void
unref_folder (gpointer key, gpointer value, gpointer data)
{
diff --git a/camel/providers/imap/camel-imap-message-cache.c b/camel/providers/imap/camel-imap-message-cache.c
index f200ec3..0f2abd2 100644
--- a/camel/providers/imap/camel-imap-message-cache.c
+++ b/camel/providers/imap/camel-imap-message-cache.c
@@ -47,8 +47,6 @@
#define BASE_PART_SUFFIX "."
#endif
-static gpointer parent_class;
-
static void stream_finalize (CamelObject *stream, gpointer event_data, gpointer user_data);
struct _part_find {
@@ -60,6 +58,8 @@ struct _part_find {
gint found;
};
+G_DEFINE_TYPE (CamelImapMessageCache, camel_imap_message_cache, CAMEL_TYPE_OBJECT)
+
static void
free_part (gpointer key, gpointer value, gpointer data)
{
@@ -92,36 +92,21 @@ imap_message_cache_finalize (GObject *object)
g_hash_table_destroy (cache->cached);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_imap_message_cache_parent_class)->finalize (object);
}
static void
-imap_message_cache_class_init (CamelImapMessageCacheClass *class)
+camel_imap_message_cache_class_init (CamelImapMessageCacheClass *class)
{
GObjectClass *object_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->finalize = imap_message_cache_finalize;
}
-GType
-camel_imap_message_cache_get_type (void)
+static void
+camel_imap_message_cache_init (CamelImapMessageCache *imap_message_cache)
{
- static GType type = G_TYPE_INVALID;
-
- if (type == G_TYPE_INVALID)
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelImapMessageCache",
- sizeof (CamelImapMessageCacheClass),
- (GClassInitFunc) imap_message_cache_class_init,
- sizeof (CamelImapMessageCache),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
static void
diff --git a/camel/providers/imap/camel-imap-search.c b/camel/providers/imap/camel-imap-search.c
index b49f2ab..1ea7ef9 100644
--- a/camel/providers/imap/camel-imap-search.c
+++ b/camel/providers/imap/camel-imap-search.c
@@ -93,7 +93,7 @@ struct _match_record {
static ESExpResult *imap_body_contains (struct _ESExp *f, gint argc, struct _ESExpResult **argv, CamelFolderSearch *s);
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelImapSearch, camel_imap_search, CAMEL_TYPE_FOLDER_SEARCH)
static void
free_match(CamelImapSearch *is, struct _match_record *mr)
@@ -120,7 +120,7 @@ imap_search_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_imap_search_parent_class)->dispose (object);
}
static void
@@ -137,17 +137,15 @@ imap_search_finalize (GObject *object)
g_hash_table_destroy (search->matches_hash);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_imap_search_parent_class)->finalize (object);
}
static void
-imap_search_class_init (CamelImapSearchClass *class)
+camel_imap_search_class_init (CamelImapSearchClass *class)
{
GObjectClass *object_class;
CamelFolderSearchClass *folder_search_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->dispose = imap_search_dispose;
object_class->finalize = imap_search_finalize;
@@ -157,7 +155,7 @@ imap_search_class_init (CamelImapSearchClass *class)
}
static void
-imap_search_init (CamelImapSearch *is)
+camel_imap_search_init (CamelImapSearch *is)
{
camel_dlist_init(&is->matches);
is->matches_hash = g_hash_table_new(g_str_hash, g_str_equal);
@@ -165,24 +163,6 @@ imap_search_init (CamelImapSearch *is)
is->lastuid = 0;
}
-GType
-camel_imap_search_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (type == G_TYPE_INVALID)
- type = g_type_register_static_simple (
- CAMEL_TYPE_FOLDER_SEARCH,
- "CamelImapSearch",
- sizeof (CamelImapSearchClass),
- (GClassInitFunc) imap_search_class_init,
- sizeof (CamelImapSearch),
- (GInstanceInitFunc) imap_search_init,
- 0);
-
- return type;
-}
-
/**
* camel_imap_search_new:
*
@@ -459,7 +439,7 @@ imap_body_contains (struct _ESExp *f, gint argc, struct _ESExpResult **argv, Cam
/* If offline, search using the parent class, which can handle this manually */
if (CAMEL_OFFLINE_STORE (store)->state == CAMEL_OFFLINE_STORE_NETWORK_UNAVAIL)
- return CAMEL_FOLDER_SEARCH_CLASS (parent_class)->body_contains(f, argc, argv, s);
+ return CAMEL_FOLDER_SEARCH_CLASS (camel_imap_search_parent_class)->body_contains(f, argc, argv, s);
/* optimise the match "" case - match everything */
if (argc == 1 && argv[0]->value.string[0] == '\0') {
diff --git a/camel/providers/imap/camel-imap-store-summary.c b/camel/providers/imap/camel-imap-store-summary.c
index 0f871ca..c61a310 100644
--- a/camel/providers/imap/camel-imap-store-summary.c
+++ b/camel/providers/imap/camel-imap-store-summary.c
@@ -51,15 +51,13 @@ static void store_info_free(CamelStoreSummary *, CamelStoreInfo *);
static const gchar *store_info_string(CamelStoreSummary *, const CamelStoreInfo *, gint);
static void store_info_set_string(CamelStoreSummary *, CamelStoreInfo *, int, const gchar *);
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelImapStoreSummary, camel_imap_store_summary, CAMEL_TYPE_STORE_SUMMARY)
static void
-imap_store_summary_class_init (CamelImapStoreSummaryClass *class)
+camel_imap_store_summary_class_init (CamelImapStoreSummaryClass *class)
{
CamelStoreSummaryClass *store_summary_class;
- parent_class = g_type_class_peek_parent (class);
-
store_summary_class = CAMEL_STORE_SUMMARY_CLASS (class);
store_summary_class->summary_header_load = summary_header_load;
store_summary_class->summary_header_save = summary_header_save;
@@ -72,7 +70,7 @@ imap_store_summary_class_init (CamelImapStoreSummaryClass *class)
}
static void
-imap_store_summary_init (CamelImapStoreSummary *imap_store_summary)
+camel_imap_store_summary_init (CamelImapStoreSummary *imap_store_summary)
{
CamelStoreSummary *store_summary;
@@ -82,24 +80,6 @@ imap_store_summary_init (CamelImapStoreSummary *imap_store_summary)
imap_store_summary->version = CAMEL_IMAP_STORE_SUMMARY_VERSION;
}
-GType
-camel_imap_store_summary_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_STORE_SUMMARY,
- "CamelImapStoreSummary",
- sizeof (CamelImapStoreSummaryClass),
- (GClassInitFunc) imap_store_summary_class_init,
- sizeof (CamelImapStoreSummary),
- (GInstanceInitFunc) imap_store_summary_init,
- 0);
-
- return type;
-}
-
/**
* camel_imap_store_summary_new:
*
@@ -572,7 +552,7 @@ summary_header_load(CamelStoreSummary *s, FILE *in)
namespace_clear (is);
- if (CAMEL_STORE_SUMMARY_CLASS (parent_class)->summary_header_load((CamelStoreSummary *)s, in) == -1
+ if (CAMEL_STORE_SUMMARY_CLASS (camel_imap_store_summary_parent_class)->summary_header_load((CamelStoreSummary *)s, in) == -1
|| camel_file_util_decode_fixed_int32(in, &version) == -1)
return -1;
@@ -608,7 +588,7 @@ summary_header_save(CamelStoreSummary *s, FILE *out)
}
/* always write as latest version */
- if (CAMEL_STORE_SUMMARY_CLASS (parent_class)->summary_header_save((CamelStoreSummary *)s, out) == -1
+ if (CAMEL_STORE_SUMMARY_CLASS (camel_imap_store_summary_parent_class)->summary_header_save((CamelStoreSummary *)s, out) == -1
|| camel_file_util_encode_fixed_int32(out, CAMEL_IMAP_STORE_SUMMARY_VERSION) == -1
|| camel_file_util_encode_fixed_int32(out, is->capabilities) == -1
|| camel_file_util_encode_fixed_int32(out, count) == -1)
@@ -625,7 +605,7 @@ store_info_load(CamelStoreSummary *s, FILE *in)
{
CamelImapStoreInfo *mi;
- mi = (CamelImapStoreInfo *) CAMEL_STORE_SUMMARY_CLASS (parent_class)->store_info_load(s, in);
+ mi = (CamelImapStoreInfo *) CAMEL_STORE_SUMMARY_CLASS (camel_imap_store_summary_parent_class)->store_info_load(s, in);
if (mi) {
if (camel_file_util_decode_string(in, &mi->full_name) == -1) {
camel_store_summary_info_free(s, (CamelStoreInfo *)mi);
@@ -645,7 +625,7 @@ store_info_save(CamelStoreSummary *s, FILE *out, CamelStoreInfo *mi)
{
CamelImapStoreInfo *isi = (CamelImapStoreInfo *)mi;
- if (CAMEL_STORE_SUMMARY_CLASS (parent_class)->store_info_save(s, out, mi) == -1
+ if (CAMEL_STORE_SUMMARY_CLASS (camel_imap_store_summary_parent_class)->store_info_save(s, out, mi) == -1
|| camel_file_util_encode_string(out, isi->full_name) == -1)
return -1;
@@ -658,7 +638,7 @@ store_info_free(CamelStoreSummary *s, CamelStoreInfo *mi)
CamelImapStoreInfo *isi = (CamelImapStoreInfo *)mi;
g_free(isi->full_name);
- CAMEL_STORE_SUMMARY_CLASS (parent_class)->store_info_free(s, mi);
+ CAMEL_STORE_SUMMARY_CLASS (camel_imap_store_summary_parent_class)->store_info_free(s, mi);
}
static const gchar *
@@ -674,7 +654,7 @@ store_info_string(CamelStoreSummary *s, const CamelStoreInfo *mi, gint type)
case CAMEL_IMAP_STORE_INFO_FULL_NAME:
return isi->full_name;
default:
- return CAMEL_STORE_SUMMARY_CLASS (parent_class)->store_info_string(s, mi, type);
+ return CAMEL_STORE_SUMMARY_CLASS (camel_imap_store_summary_parent_class)->store_info_string(s, mi, type);
}
}
@@ -694,7 +674,7 @@ store_info_set_string(CamelStoreSummary *s, CamelStoreInfo *mi, gint type, const
CAMEL_STORE_SUMMARY_UNLOCK(s, summary_lock);
break;
default:
- CAMEL_STORE_SUMMARY_CLASS (parent_class)->store_info_set_string(s, mi, type, str);
+ CAMEL_STORE_SUMMARY_CLASS (camel_imap_store_summary_parent_class)->store_info_set_string(s, mi, type, str);
break;
}
}
diff --git a/camel/providers/imap/camel-imap-store.c b/camel/providers/imap/camel-imap-store.c
index 6b1da66..5abfb54 100644
--- a/camel/providers/imap/camel-imap-store.c
+++ b/camel/providers/imap/camel-imap-store.c
@@ -59,8 +59,6 @@
#define strtok_r(s,sep,lasts) (*(lasts)=strtok((s),(sep)))
#endif
-static gpointer parent_class;
-
static gchar imap_tag_prefix = 'A';
static gboolean construct (CamelService *service, CamelSession *session,
@@ -103,6 +101,8 @@ static CamelFolderInfo * get_folder_info (CamelStore *store, const gchar *top, g
static CamelFolder * get_folder_offline (CamelStore *store, const gchar *folder_name, guint32 flags, GError **error);
static CamelFolderInfo * get_folder_info_offline (CamelStore *store, const gchar *top, guint32 flags, GError **error);
+G_DEFINE_TYPE (CamelImapStore, camel_imap_store, CAMEL_TYPE_OFFLINE_STORE)
+
static gboolean
free_key (gpointer key, gpointer value, gpointer user_data)
{
@@ -123,7 +123,7 @@ imap_store_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_imap_store_parent_class)->dispose (object);
}
static void
@@ -140,19 +140,17 @@ imap_store_finalize (GObject *object)
g_free (imap_store->custom_headers);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_imap_store_parent_class)->finalize (object);
}
static void
-imap_store_class_init (CamelImapStoreClass *class)
+camel_imap_store_class_init (CamelImapStoreClass *class)
{
GObjectClass *object_class;
CamelObjectClass *camel_object_class;
CamelServiceClass *service_class;
CamelStoreClass *store_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->dispose = imap_store_dispose;
object_class->finalize = imap_store_finalize;
@@ -187,7 +185,7 @@ imap_store_class_init (CamelImapStoreClass *class)
}
static void
-imap_store_init (CamelImapStore *imap_store)
+camel_imap_store_init (CamelImapStore *imap_store)
{
imap_store->istream = NULL;
imap_store->ostream = NULL;
@@ -204,24 +202,6 @@ imap_store_init (CamelImapStore *imap_store)
imap_tag_prefix = 'A';
}
-GType
-camel_imap_store_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (type == G_TYPE_INVALID)
- type = g_type_register_static_simple (
- CAMEL_TYPE_OFFLINE_STORE,
- "CamelImapStore",
- sizeof (CamelImapStoreClass),
- (GClassInitFunc) imap_store_class_init,
- sizeof (CamelImapStore),
- (GInstanceInitFunc) imap_store_init,
- 0);
-
- return type;
-}
-
static gboolean
construct (CamelService *service, CamelSession *session,
CamelProvider *provider, CamelURL *url,
@@ -234,7 +214,7 @@ construct (CamelService *service, CamelSession *session,
CamelURL *summary_url;
/* Chain up to parent's construct() method. */
- service_class = CAMEL_SERVICE_CLASS (parent_class);
+ service_class = CAMEL_SERVICE_CLASS (camel_imap_store_parent_class);
if (!service_class->construct (service, session, provider, url, error))
return FALSE;
@@ -374,7 +354,7 @@ imap_setv (CamelObject *object, GError **error, CamelArgV *args)
we need to do it here... or, better yet, somehow chain it
up to CamelService's setv implementation. */
- return CAMEL_OBJECT_CLASS (parent_class)->setv (object, error, args);
+ return CAMEL_OBJECT_CLASS (camel_imap_store_parent_class)->setv (object, error, args);
}
static gint
@@ -420,7 +400,7 @@ imap_getv (CamelObject *object, GError **error, CamelArgGetV *args)
}
}
- return CAMEL_OBJECT_CLASS (parent_class)->getv (object, error, args);
+ return CAMEL_OBJECT_CLASS (camel_imap_store_parent_class)->getv (object, error, args);
}
static gchar *
@@ -1685,7 +1665,7 @@ done:
static CamelFolder *
imap_get_trash(CamelStore *store, GError **error)
{
- CamelFolder *folder = CAMEL_STORE_CLASS(parent_class)->get_trash(store, error);
+ CamelFolder *folder = CAMEL_STORE_CLASS(camel_imap_store_parent_class)->get_trash(store, error);
if (folder) {
gchar *state = g_build_filename(((CamelImapStore *)store)->storage_path, "system", "Trash.cmeta", NULL);
@@ -1702,7 +1682,7 @@ imap_get_trash(CamelStore *store, GError **error)
static CamelFolder *
imap_get_junk(CamelStore *store, GError **error)
{
- CamelFolder *folder = CAMEL_STORE_CLASS(parent_class)->get_junk(store, error);
+ CamelFolder *folder = CAMEL_STORE_CLASS(camel_imap_store_parent_class)->get_junk(store, error);
if (folder) {
gchar *state = g_build_filename(((CamelImapStore *)store)->storage_path, "system", "Junk.cmeta", NULL);
@@ -3223,7 +3203,7 @@ imap_can_refresh_folder (CamelStore *store,
GError *local_error = NULL;
gboolean res;
- res = CAMEL_STORE_CLASS(parent_class)->can_refresh_folder (store, info, &local_error) ||
+ res = CAMEL_STORE_CLASS(camel_imap_store_parent_class)->can_refresh_folder (store, info, &local_error) ||
(camel_url_get_param (((CamelService *)store)->url, "check_all") != NULL) ||
(camel_url_get_param (((CamelService *)store)->url, "check_lsub") != NULL && (info->flags & CAMEL_FOLDER_SUBSCRIBED) != 0);
diff --git a/camel/providers/imap/camel-imap-summary.c b/camel/providers/imap/camel-imap-summary.c
index 9ee535c..e298cc0 100644
--- a/camel/providers/imap/camel-imap-summary.c
+++ b/camel/providers/imap/camel-imap-summary.c
@@ -57,7 +57,7 @@ static CamelMessageInfo * message_info_from_db (CamelFolderSummary *s, CamelMIRe
static gint content_info_to_db (CamelFolderSummary *s, CamelMessageContentInfo *info, CamelMIRecord *mir);
static CamelMessageContentInfo * content_info_from_db (CamelFolderSummary *s, CamelMIRecord *mir);
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelImapSummary, camel_imap_summary, CAMEL_TYPE_FOLDER_SUMMARY)
static CamelMessageInfo *
imap_message_info_clone(CamelFolderSummary *s, const CamelMessageInfo *mi)
@@ -65,7 +65,7 @@ imap_message_info_clone(CamelFolderSummary *s, const CamelMessageInfo *mi)
CamelImapMessageInfo *to;
const CamelImapMessageInfo *from = (const CamelImapMessageInfo *)mi;
- to = (CamelImapMessageInfo *) CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->message_info_clone(s, mi);
+ to = (CamelImapMessageInfo *) CAMEL_FOLDER_SUMMARY_CLASS (camel_imap_summary_parent_class)->message_info_clone(s, mi);
to->server_flags = from->server_flags;
/* FIXME: parent clone should do this */
@@ -75,12 +75,10 @@ imap_message_info_clone(CamelFolderSummary *s, const CamelMessageInfo *mi)
}
static void
-imap_summary_class_init (CamelImapSummaryClass *class)
+camel_imap_summary_class_init (CamelImapSummaryClass *class)
{
CamelFolderSummaryClass *folder_summary_class;
- parent_class = g_type_class_peek_parent (class);
-
folder_summary_class = CAMEL_FOLDER_SUMMARY_CLASS (class);
folder_summary_class->message_info_size = sizeof (CamelImapMessageInfo);
folder_summary_class->content_info_size = sizeof (CamelImapMessageContentInfo);
@@ -100,22 +98,9 @@ imap_summary_class_init (CamelImapSummaryClass *class)
folder_summary_class->info_set_user_flag = info_set_user_flag;
}
-GType
-camel_imap_summary_get_type (void)
+static void
+camel_imap_summary_init (CamelImapSummary *imap_summary)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_FOLDER_SUMMARY,
- "CamelImapSummary",
- sizeof (CamelImapSummaryClass),
- (GClassInitFunc) imap_summary_class_init,
- sizeof (CamelImapSummary),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
static gint
@@ -206,7 +191,7 @@ summary_header_from_db (CamelFolderSummary *s, CamelFIRecord *mir)
CamelImapSummary *ims = CAMEL_IMAP_SUMMARY (s);
gchar *part;
- if (CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->summary_header_from_db (s, mir) == -1)
+ if (CAMEL_FOLDER_SUMMARY_CLASS (camel_imap_summary_parent_class)->summary_header_from_db (s, mir) == -1)
return -1;
part = mir->bdata;
@@ -233,7 +218,7 @@ summary_header_load (CamelFolderSummary *s, FILE *in)
{
CamelImapSummary *ims = CAMEL_IMAP_SUMMARY (s);
- if (CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->summary_header_load (s, in) == -1)
+ if (CAMEL_FOLDER_SUMMARY_CLASS (camel_imap_summary_parent_class)->summary_header_load (s, in) == -1)
return -1;
/* Legacy version */
@@ -270,7 +255,7 @@ summary_header_to_db (CamelFolderSummary *s, GError **error)
CamelImapSummary *ims = CAMEL_IMAP_SUMMARY(s);
struct _CamelFIRecord *fir;
- fir = CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->summary_header_to_db (s, error);
+ fir = CAMEL_FOLDER_SUMMARY_CLASS (camel_imap_summary_parent_class)->summary_header_to_db (s, error);
if (!fir)
return NULL;
fir->bdata = g_strdup_printf ("%d %u", CAMEL_IMAP_SUMMARY_VERSION, ims->validity);
@@ -283,7 +268,7 @@ summary_header_save (CamelFolderSummary *s, FILE *out)
{
CamelImapSummary *ims = CAMEL_IMAP_SUMMARY(s);
- if (CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->summary_header_save (s, out) == -1)
+ if (CAMEL_FOLDER_SUMMARY_CLASS (camel_imap_summary_parent_class)->summary_header_save (s, out) == -1)
return -1;
camel_file_util_encode_fixed_int32(out, CAMEL_IMAP_SUMMARY_VERSION);
@@ -297,7 +282,7 @@ message_info_from_db (CamelFolderSummary *s, CamelMIRecord *mir)
CamelMessageInfo *info;
CamelImapMessageInfo *iinfo;
- info = CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->message_info_from_db (s, mir);
+ info = CAMEL_FOLDER_SUMMARY_CLASS (camel_imap_summary_parent_class)->message_info_from_db (s, mir);
if (info) {
gchar *part = g_strdup (mir->bdata), *tmp;
tmp = part;
@@ -315,7 +300,7 @@ message_info_load (CamelFolderSummary *s, FILE *in)
CamelMessageInfo *info;
CamelImapMessageInfo *iinfo;
- info = CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->message_info_load (s, in);
+ info = CAMEL_FOLDER_SUMMARY_CLASS (camel_imap_summary_parent_class)->message_info_load (s, in);
if (info) {
iinfo = (CamelImapMessageInfo *)info;
@@ -335,7 +320,7 @@ message_info_to_db (CamelFolderSummary *s, CamelMessageInfo *info)
CamelImapMessageInfo *iinfo = (CamelImapMessageInfo *)info;
struct _CamelMIRecord *mir;
- mir = CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->message_info_to_db (s, info);
+ mir = CAMEL_FOLDER_SUMMARY_CLASS (camel_imap_summary_parent_class)->message_info_to_db (s, info);
if (mir)
mir->bdata = g_strdup_printf ("%u", iinfo->server_flags);
@@ -347,7 +332,7 @@ message_info_save (CamelFolderSummary *s, FILE *out, CamelMessageInfo *info)
{
CamelImapMessageInfo *iinfo = (CamelImapMessageInfo *)info;
- if (CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->message_info_save (s, out, info) == -1)
+ if (CAMEL_FOLDER_SUMMARY_CLASS (camel_imap_summary_parent_class)->message_info_save (s, out, info) == -1)
return -1;
return camel_file_util_encode_uint32 (out, iinfo->server_flags);
@@ -358,7 +343,7 @@ info_set_user_flag (CamelMessageInfo *info, const gchar *id, gboolean state)
{
gboolean res;
- res = CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->info_set_user_flag (info, id, state);
+ res = CAMEL_FOLDER_SUMMARY_CLASS (camel_imap_summary_parent_class)->info_set_user_flag (info, id, state);
/* there was a change, so do not forget to store it to server */
if (res)
@@ -382,7 +367,7 @@ content_info_from_db (CamelFolderSummary *s, CamelMIRecord *mir)
}
mir->cinfo = part;
if (type)
- return CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->content_info_from_db (s, mir);
+ return CAMEL_FOLDER_SUMMARY_CLASS (camel_imap_summary_parent_class)->content_info_from_db (s, mir);
else
return camel_folder_summary_content_info_new (s);
}
@@ -391,7 +376,7 @@ static CamelMessageContentInfo *
content_info_load (CamelFolderSummary *s, FILE *in)
{
if (fgetc (in))
- return CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->content_info_load (s, in);
+ return CAMEL_FOLDER_SUMMARY_CLASS (camel_imap_summary_parent_class)->content_info_load (s, in);
else
return camel_folder_summary_content_info_new (s);
}
@@ -404,7 +389,7 @@ content_info_to_db (CamelFolderSummary *s, CamelMessageContentInfo *info, CamelM
oldr = mir->cinfo;
mir->cinfo = oldr ? g_strdup_printf("%s 1", oldr) : g_strdup ("1");
g_free(oldr);
- return CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->content_info_to_db (s, info, mir);
+ return CAMEL_FOLDER_SUMMARY_CLASS (camel_imap_summary_parent_class)->content_info_to_db (s, info, mir);
} else {
oldr = mir->cinfo;
mir->cinfo = oldr ? g_strdup_printf("%s 0", oldr) : g_strdup ("0");
@@ -419,7 +404,7 @@ content_info_save (CamelFolderSummary *s, FILE *out,
{
if (info->type) {
fputc (1, out);
- return CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->content_info_save (s, out, info);
+ return CAMEL_FOLDER_SUMMARY_CLASS (camel_imap_summary_parent_class)->content_info_save (s, out, info);
} else
return fputc (0, out);
}
diff --git a/camel/providers/imap/camel-imap-wrapper.c b/camel/providers/imap/camel-imap-wrapper.c
index 5143c7c..6b87bb4 100644
--- a/camel/providers/imap/camel-imap-wrapper.c
+++ b/camel/providers/imap/camel-imap-wrapper.c
@@ -42,7 +42,7 @@ struct _CamelImapWrapperPrivate {
#define CAMEL_IMAP_WRAPPER_LOCK(f, l) (g_mutex_lock(((CamelImapWrapper *)f)->priv->l))
#define CAMEL_IMAP_WRAPPER_UNLOCK(f, l) (g_mutex_unlock(((CamelImapWrapper *)f)->priv->l))
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelImapWrapper, camel_imap_wrapper, CAMEL_TYPE_DATA_WRAPPER)
static void
imap_wrapper_hydrate (CamelImapWrapper *imap_wrapper,
@@ -73,7 +73,7 @@ imap_wrapper_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_imap_wrapper_parent_class)->dispose (object);
}
static void
@@ -87,7 +87,7 @@ imap_wrapper_finalize (GObject *object)
g_mutex_free (imap_wrapper->priv->lock);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_imap_wrapper_parent_class)->finalize (object);
}
static gssize
@@ -121,17 +121,16 @@ imap_wrapper_write_to_stream (CamelDataWrapper *data_wrapper,
}
CAMEL_IMAP_WRAPPER_UNLOCK (imap_wrapper, lock);
- return CAMEL_DATA_WRAPPER_CLASS (parent_class)->
+ return CAMEL_DATA_WRAPPER_CLASS (camel_imap_wrapper_parent_class)->
write_to_stream (data_wrapper, stream, error);
}
static void
-imap_wrapper_class_init (CamelImapWrapperClass *class)
+camel_imap_wrapper_class_init (CamelImapWrapperClass *class)
{
GObjectClass *object_class;
CamelDataWrapperClass *data_wrapper_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelImapWrapperPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -143,30 +142,12 @@ imap_wrapper_class_init (CamelImapWrapperClass *class)
}
static void
-imap_wrapper_init (CamelImapWrapper *imap_wrapper)
+camel_imap_wrapper_init (CamelImapWrapper *imap_wrapper)
{
imap_wrapper->priv = CAMEL_IMAP_WRAPPER_GET_PRIVATE (imap_wrapper);
imap_wrapper->priv->lock = g_mutex_new ();
}
-GType
-camel_imap_wrapper_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_DATA_WRAPPER,
- "CamelImapWrapper",
- sizeof (CamelImapWrapperClass),
- (GClassInitFunc) imap_wrapper_class_init,
- sizeof (CamelImapWrapper),
- (GInstanceInitFunc) imap_wrapper_init,
- 0);
-
- return type;
-}
-
CamelDataWrapper *
camel_imap_wrapper_new (CamelImapFolder *imap_folder,
CamelContentType *type, CamelTransferEncoding encoding,
diff --git a/camel/providers/imap4/camel-imap4-engine.c b/camel/providers/imap4/camel-imap4-engine.c
index dfb818b..87c438e 100644
--- a/camel/providers/imap4/camel-imap4-engine.c
+++ b/camel/providers/imap4/camel-imap4-engine.c
@@ -45,8 +45,6 @@ static void imap4_engine_finalize (CamelObject *object);
static gint parse_xgwextensions (CamelIMAP4Engine *engine, CamelIMAP4Command *ic, guint32 index,
camel_imap4_token_t *token, GError **error);
-static gpointer parent_class;
-
GType
camel_imap4_engine_get_type (void)
{
@@ -69,8 +67,6 @@ camel_imap4_engine_get_type (void)
static void
camel_imap4_engine_class_init (CamelIMAP4EngineClass *class)
{
- parent_class = g_type_class_peek_parent (class);
-
class->tagprefix = 'A';
}
diff --git a/camel/providers/imap4/camel-imap4-folder.c b/camel/providers/imap4/camel-imap4-folder.c
index 48362a9..3c974ae 100644
--- a/camel/providers/imap4/camel-imap4-folder.c
+++ b/camel/providers/imap4/camel-imap4-folder.c
@@ -70,8 +70,6 @@ static GPtrArray *imap4_search_by_uids (CamelFolder *folder, const gchar *expr,
static void imap4_search_free (CamelFolder *folder, GPtrArray *uids);
static gchar * imap4_get_filename (CamelFolder *folder, const gchar *uid, GError **error);
-static gpointer parent_class;
-
static GSList *imap4_folder_props = NULL;
static CamelProperty imap4_prop_list[] = {
@@ -106,8 +104,6 @@ camel_imap4_folder_class_init (CamelIMAP4FolderClass *class)
CamelObjectClass *object_class = (CamelObjectClass *) class;
gint i;
- parent_class = g_type_class_peek_parent (class);
-
if (imap4_folder_props == NULL) {
for (i = 0; i < G_N_ELEMENTS (imap4_prop_list); i++) {
imap4_prop_list[i].description = _(imap4_prop_list[i].description);
@@ -185,7 +181,7 @@ imap4_getv (CamelObject *object, GError **error, CamelArgGetV *args)
case CAMEL_FOLDER_ARG_PROPERTIES:
props.argc = 1;
props.argv[0] = *arg;
- ((CamelObjectClass *) parent_class)->getv (object, ex, &props);
+ ((CamelObjectClass *) camel_imap4_folder_parent_class)->getv (object, ex, &props);
*arg->ca_ptr = g_slist_concat (*arg->ca_ptr, g_slist_copy (imap4_folder_props));
break;
case CAMEL_IMAP4_FOLDER_ARG_ENABLE_MLIST:
@@ -206,7 +202,7 @@ imap4_getv (CamelObject *object, GError **error, CamelArgGetV *args)
}
if (count)
- return ((CamelObjectClass *) parent_class)->getv (object, ex, args);
+ return ((CamelObjectClass *) camel_imap4_folder_parent_class)->getv (object, ex, args);
return 0;
}
@@ -254,7 +250,7 @@ imap4_setv (CamelObject *object, GError **error, CamelArgV *args)
if (save)
camel_object_state_write (object);
- return ((CamelObjectClass *) parent_class)->setv (object, ex, args);
+ return ((CamelObjectClass *) camel_imap4_folder_parent_class)->setv (object, ex, args);
}
static gchar *
diff --git a/camel/providers/imap4/camel-imap4-journal.c b/camel/providers/imap4/camel-imap4-journal.c
index 79bfc08..18189dd 100644
--- a/camel/providers/imap4/camel-imap4-journal.c
+++ b/camel/providers/imap4/camel-imap4-journal.c
@@ -48,8 +48,6 @@ static CamelDListNode *imap4_entry_load (CamelOfflineJournal *journal, FILE *in)
static gint imap4_entry_write (CamelOfflineJournal *journal, CamelDListNode *entry, FILE *out);
static gint imap4_entry_play (CamelOfflineJournal *journal, CamelDListNode *entry, GError **error);
-static gpointer parent_class;
-
GType
camel_imap4_journal_get_type (void)
{
@@ -74,8 +72,6 @@ camel_imap4_journal_class_init (CamelIMAP4JournalClass *class)
{
CamelOfflineJournalClass *journal_class = (CamelOfflineJournalClass *) class;
- parent_class = g_type_class_peek_parent (class);
-
journal_class->entry_free = imap4_entry_free;
journal_class->entry_load = imap4_entry_load;
journal_class->entry_write = imap4_entry_write;
diff --git a/camel/providers/imap4/camel-imap4-search.c b/camel/providers/imap4/camel-imap4-search.c
index 9504afc..803ffa8 100644
--- a/camel/providers/imap4/camel-imap4-search.c
+++ b/camel/providers/imap4/camel-imap4-search.c
@@ -39,8 +39,6 @@ static void imap4_search_finalize (CamelObject *object);
static ESExpResult *imap4_body_contains (struct _ESExp *f, gint argc, struct _ESExpResult **argv, CamelFolderSearch *search);
-static gpointer parent_class;
-
GType
camel_imap4_search_get_type (void)
{
@@ -65,8 +63,6 @@ camel_imap4_search_class_init (CamelIMAP4SearchClass *class)
{
CamelFolderSearchClass *search_class = (CamelFolderSearchClass *) class;
- parent_class = g_type_class_peek_parent (class);
-
search_class->body_contains = imap4_body_contains;
}
@@ -146,7 +142,7 @@ imap4_body_contains (struct _ESExp *f, gint argc, struct _ESExpResult **argv, Ca
gchar *set;
if (((CamelOfflineStore *) engine->service)->state == CAMEL_OFFLINE_STORE_NETWORK_UNAVAIL)
- return parent_class->body_contains (f, argc, argv, search);
+ return camel_imap4_search_parent_class->body_contains (f, argc, argv, search);
summary_set = search->summary_set ? search->summary_set : search->summary;
diff --git a/camel/providers/imap4/camel-imap4-store-summary.c b/camel/providers/imap4/camel-imap4-store-summary.c
index d87c197..cb6df5d 100644
--- a/camel/providers/imap4/camel-imap4-store-summary.c
+++ b/camel/providers/imap4/camel-imap4-store-summary.c
@@ -48,8 +48,6 @@ static CamelStoreInfo *store_info_load (CamelStoreSummary *s, FILE *in);
static gint store_info_save (CamelStoreSummary *s, FILE *out, CamelStoreInfo *info);
static void store_info_free (CamelStoreSummary *s, CamelStoreInfo *info);
-static gpointer parent_class;
-
GType
camel_imap4_store_summary_get_type (void)
{
@@ -74,8 +72,6 @@ camel_imap4_store_summary_class_init (CamelIMAP4StoreSummaryClass *class)
{
CamelStoreSummaryClass *ssclass = (CamelStoreSummaryClass *) class;
- parent_class = g_type_class_peek_parent (class);
-
ssclass->summary_header_load = summary_header_load;
ssclass->summary_header_save = summary_header_save;
@@ -164,7 +160,7 @@ summary_header_load (CamelStoreSummary *s, FILE *in)
CamelIMAP4StoreSummary *is = (CamelIMAP4StoreSummary *) s;
guint32 version, capa;
- if (parent_class->summary_header_load (s, in) == -1)
+ if (camel_imap4_store_summary_parent_class->summary_header_load (s, in) == -1)
return -1;
if (camel_file_util_decode_fixed_int32 (in, &version) == -1)
@@ -233,7 +229,7 @@ summary_header_save (CamelStoreSummary *s, FILE *out)
{
CamelIMAP4StoreSummary *is = (CamelIMAP4StoreSummary *) s;
- if (parent_class->summary_header_save (s, out) == -1)
+ if (camel_imap4_store_summary_parent_class->summary_header_save (s, out) == -1)
return -1;
if (camel_file_util_encode_fixed_int32 (out, is->version) == -1)
@@ -251,19 +247,19 @@ summary_header_save (CamelStoreSummary *s, FILE *out)
static CamelStoreInfo *
store_info_load (CamelStoreSummary *s, FILE *in)
{
- return parent_class->store_info_load (s, in);
+ return camel_imap4_store_summary_parent_class->store_info_load (s, in);
}
static gint
store_info_save (CamelStoreSummary *s, FILE *out, CamelStoreInfo *info)
{
- return parent_class->store_info_save (s, out, info);
+ return camel_imap4_store_summary_parent_class->store_info_save (s, out, info);
}
static void
store_info_free (CamelStoreSummary *s, CamelStoreInfo *info)
{
- parent_class->store_info_free (s, info);
+ camel_imap4_store_summary_parent_class->store_info_free (s, info);
}
/**
diff --git a/camel/providers/imap4/camel-imap4-store.c b/camel/providers/imap4/camel-imap4-store.c
index f2ee621..c85494c 100644
--- a/camel/providers/imap4/camel-imap4-store.c
+++ b/camel/providers/imap4/camel-imap4-store.c
@@ -67,8 +67,6 @@ static void imap4_unsubscribe_folder (CamelStore *store, const gchar *folder_nam
static gboolean imap4_folder_subscribed (CamelStore *store, const gchar *folder_name);
static void imap4_noop (CamelStore *store, GError **error);
-static gpointer parent_class;
-
GType
camel_imap4_store_get_type (void)
{
@@ -116,8 +114,6 @@ camel_imap4_store_class_init (CamelIMAP4StoreClass *class)
CamelServiceClass *service_class = (CamelServiceClass *) class;
CamelStoreClass *store_class = (CamelStoreClass *) class;
- parent_class = g_type_class_peek_parent (class);
-
service_class->construct = imap4_construct;
service_class->get_name = imap4_get_name;
service_class->connect = imap4_connect;
@@ -168,7 +164,7 @@ imap4_construct (CamelService *service, CamelSession *session, CamelProvider *pr
CamelIMAP4Store *store = (CamelIMAP4Store *) service;
gchar *buf;
- CAMEL_SERVICE_CLASS (parent_class)->construct (service, session, provider, url, ex);
+ CAMEL_SERVICE_CLASS (camel_imap4_store_parent_class)->construct (service, session, provider, url, ex);
if (camel_exception_is_set (ex))
return;
diff --git a/camel/providers/imap4/camel-imap4-stream.c b/camel/providers/imap4/camel-imap4-stream.c
index 713ec7e..02600de 100644
--- a/camel/providers/imap4/camel-imap4-stream.c
+++ b/camel/providers/imap4/camel-imap4-stream.c
@@ -46,8 +46,6 @@ static gint stream_flush (CamelStream *stream);
static gint stream_close (CamelStream *stream);
static gboolean stream_eos (CamelStream *stream);
-static gpointer parent_class;
-
GType
camel_imap4_stream_get_type (void)
{
@@ -72,8 +70,6 @@ camel_imap4_stream_class_init (CamelIMAP4StreamClass *class)
{
CamelStreamClass *stream_class = (CamelStreamClass *) class;
- parent_class = g_type_class_peek_parent (class);
-
stream_class->read = stream_read;
stream_class->write = stream_write;
stream_class->flush = stream_flush;
diff --git a/camel/providers/imap4/camel-imap4-summary.c b/camel/providers/imap4/camel-imap4-summary.c
index 51e6e45..d113b43 100644
--- a/camel/providers/imap4/camel-imap4-summary.c
+++ b/camel/providers/imap4/camel-imap4-summary.c
@@ -66,8 +66,6 @@ static CamelMessageInfo *imap4_message_info_clone (CamelFolderSummary *summary,
static CamelMessageContentInfo *imap4_content_info_load (CamelFolderSummary *summary, FILE *in);
static gint imap4_content_info_save (CamelFolderSummary *summary, FILE *out, CamelMessageContentInfo *info);
-static gpointer parent_class;
-
GType
camel_imap4_summary_get_type (void)
{
@@ -92,8 +90,6 @@ camel_imap4_summary_class_init (CamelIMAP4SummaryClass *class)
{
CamelFolderSummaryClass *summary_class = (CamelFolderSummaryClass *) class;
- parent_class = g_type_class_peek_parent (class);
-
summary_class->summary_header_load = imap4_header_load;
summary_class->summary_header_save = imap4_header_save;
summary_class->message_info_new_from_header = imap4_message_info_new_from_header;
@@ -140,7 +136,7 @@ imap4_header_load (CamelFolderSummary *summary, FILE *fin)
{
CamelIMAP4Summary *imap4_summary = (CamelIMAP4Summary *) summary;
- if (CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->summary_header_load (summary, fin) == -1)
+ if (CAMEL_FOLDER_SUMMARY_CLASS (camel_imap4_summary_parent_class)->summary_header_load (summary, fin) == -1)
return -1;
if (camel_file_util_decode_fixed_int32 (fin, &imap4_summary->version) == -1)
@@ -176,7 +172,7 @@ imap4_header_save (CamelFolderSummary *summary, FILE *fout)
{
CamelIMAP4Summary *imap4_summary = (CamelIMAP4Summary *) summary;
- if (CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->summary_header_save (summary, fout) == -1)
+ if (CAMEL_FOLDER_SUMMARY_CLASS (camel_imap4_summary_parent_class)->summary_header_save (summary, fout) == -1)
return -1;
if (camel_file_util_encode_fixed_int32 (fout, CAMEL_IMAP4_SUMMARY_VERSION) == -1)
@@ -1336,7 +1332,7 @@ imap4_message_info_new_from_header (CamelFolderSummary *summary, struct _camel_h
{
CamelMessageInfo *info;
- info = CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->message_info_new_from_header (summary, header);
+ info = CAMEL_FOLDER_SUMMARY_CLASS (camel_imap4_summary_parent_class)->message_info_new_from_header (summary, header);
((CamelIMAP4MessageInfo *) info)->server_flags = 0;
return info;
@@ -1348,7 +1344,7 @@ imap4_message_info_load (CamelFolderSummary *summary, FILE *fin)
CamelIMAP4MessageInfo *minfo;
CamelMessageInfo *info;
- if (!(info = CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->message_info_load (summary, fin)))
+ if (!(info = CAMEL_FOLDER_SUMMARY_CLASS (camel_imap4_summary_parent_class)->message_info_load (summary, fin)))
return NULL;
minfo = (CamelIMAP4MessageInfo *) info;
@@ -1370,7 +1366,7 @@ imap4_message_info_save (CamelFolderSummary *summary, FILE *fout, CamelMessageIn
{
CamelIMAP4MessageInfo *minfo = (CamelIMAP4MessageInfo *) info;
- if (CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->message_info_save (summary, fout, info) == -1)
+ if (CAMEL_FOLDER_SUMMARY_CLASS (camel_imap4_summary_parent_class)->message_info_save (summary, fout, info) == -1)
return -1;
if (camel_file_util_encode_uint32 (fout, minfo->server_flags) == -1)
@@ -1385,7 +1381,7 @@ imap4_message_info_clone (CamelFolderSummary *summary, const CamelMessageInfo *m
const CamelIMAP4MessageInfo *src = (const CamelIMAP4MessageInfo *) mi;
CamelIMAP4MessageInfo *dest;
- dest = (CamelIMAP4MessageInfo *) CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->message_info_clone (summary, mi);
+ dest = (CamelIMAP4MessageInfo *) CAMEL_FOLDER_SUMMARY_CLASS (camel_imap4_summary_parent_class)->message_info_clone (summary, mi);
dest->server_flags = src->server_flags;
/* FIXME: parent clone should do this */
@@ -1398,7 +1394,7 @@ static CamelMessageContentInfo *
imap4_content_info_load (CamelFolderSummary *summary, FILE *in)
{
if (fgetc (in))
- return CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->content_info_load (summary, in);
+ return CAMEL_FOLDER_SUMMARY_CLASS (camel_imap4_summary_parent_class)->content_info_load (summary, in);
else
return camel_folder_summary_content_info_new (summary);
}
@@ -1408,7 +1404,7 @@ imap4_content_info_save (CamelFolderSummary *summary, FILE *out, CamelMessageCon
{
if (info->type) {
fputc (1, out);
- return CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->content_info_save (summary, out, info);
+ return CAMEL_FOLDER_SUMMARY_CLASS (camel_imap4_summary_parent_class)->content_info_save (summary, out, info);
} else
return fputc (0, out);
}
diff --git a/camel/providers/imapx/camel-imapx-stream.c b/camel/providers/imapx/camel-imapx-stream.c
index dbc8c1b..2a796a0 100644
--- a/camel/providers/imapx/camel-imapx-stream.c
+++ b/camel/providers/imapx/camel-imapx-stream.c
@@ -40,8 +40,6 @@
#define t(x)
#define io(x)
-static CamelObjectClass *parent_class = NULL;
-
/* Returns the class for a CamelStream */
#define CS_CLASS(so) CAMEL_IMAPX_STREAM_CLASS(CAMEL_OBJECT_GET_CLASS(so))
@@ -147,8 +145,6 @@ camel_imapx_stream_class_init (CamelStreamClass *camel_imapx_stream_class)
{
CamelStreamClass *camel_stream_class = (CamelStreamClass *)camel_imapx_stream_class;
- parent_class = g_type_class_peek_parent (class);
-
camel_stream_class->read = stream_read;
camel_stream_class->write = stream_write;
camel_stream_class->close = stream_close;
diff --git a/camel/providers/local/camel-local-folder.c b/camel/providers/local/camel-local-folder.c
index 54b10c5..3cae514 100644
--- a/camel/providers/local/camel-local-folder.c
+++ b/camel/providers/local/camel-local-folder.c
@@ -57,7 +57,6 @@
(G_TYPE_INSTANCE_GET_PRIVATE \
((obj), CAMEL_TYPE_LOCAL_FOLDER, CamelLocalFolderPrivate))
-static gpointer parent_class;
static GSList *local_folder_properties;
static gint local_getv(CamelObject *object, GError **error, CamelArgGetV *args);
@@ -84,6 +83,8 @@ static CamelProperty local_property_list[] = {
{ CAMEL_LOCAL_FOLDER_INDEX_BODY, "index_body", N_("Index message body data") },
};
+G_DEFINE_TYPE (CamelLocalFolder, camel_local_folder, CAMEL_TYPE_FOLDER)
+
static void
local_folder_dispose (GObject *object)
{
@@ -112,7 +113,7 @@ local_folder_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_local_folder_parent_class)->dispose (object);
}
static void
@@ -135,18 +136,17 @@ local_folder_finalize (GObject *object)
g_mutex_free (local_folder->priv->search_lock);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_local_folder_parent_class)->finalize (object);
}
static void
-local_folder_class_init (CamelLocalFolderClass *class)
+camel_local_folder_class_init (CamelLocalFolderClass *class)
{
GObjectClass *object_class;
CamelObjectClass *camel_object_class;
CamelFolderClass *folder_class;
gint ii;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelLocalFolderPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -181,7 +181,7 @@ local_folder_class_init (CamelLocalFolderClass *class)
}
static void
-local_folder_init (CamelLocalFolder *local_folder)
+camel_local_folder_init (CamelLocalFolder *local_folder)
{
CamelFolder *folder = CAMEL_FOLDER (local_folder);
@@ -200,24 +200,6 @@ local_folder_init (CamelLocalFolder *local_folder)
local_folder->search = NULL;
}
-GType
-camel_local_folder_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_FOLDER,
- "CamelLocalFolder",
- sizeof (CamelLocalFolderClass),
- (GClassInitFunc) local_folder_class_init,
- sizeof (CamelLocalFolder),
- (GInstanceInitFunc) local_folder_init,
- 0);
-
- return type;
-}
-
CamelLocalFolder *
camel_local_folder_construct(CamelLocalFolder *lf, CamelStore *parent_store, const gchar *full_name, guint32 flags, GError **error)
{
@@ -429,7 +411,7 @@ local_getv(CamelObject *object, GError **error, CamelArgGetV *args)
props.argc = 1;
props.argv[0] = *arg;
- ((CamelObjectClass *)parent_class)->getv(object, error, &props);
+ ((CamelObjectClass *)camel_local_folder_parent_class)->getv(object, error, &props);
*arg->ca_ptr = g_slist_concat(*arg->ca_ptr, g_slist_copy(local_folder_properties));
break; }
@@ -446,7 +428,7 @@ local_getv(CamelObject *object, GError **error, CamelArgGetV *args)
arg->tag = (tag & CAMEL_ARG_TYPE) | CAMEL_ARG_IGNORE;
}
- return ((CamelObjectClass *)parent_class)->getv(object, error, args);
+ return ((CamelObjectClass *)camel_local_folder_parent_class)->getv(object, error, args);
}
static gint
@@ -477,7 +459,7 @@ local_setv(CamelObject *object, GError **error, CamelArgV *args)
arg->tag = (tag & CAMEL_ARG_TYPE) | CAMEL_ARG_IGNORE;
}
- return ((CamelObjectClass *)parent_class)->setv(object, error, args);
+ return ((CamelObjectClass *)camel_local_folder_parent_class)->setv(object, error, args);
}
static gint
@@ -562,7 +544,7 @@ local_delete(CamelFolder *folder)
if (lf->index)
camel_index_delete(lf->index);
- CAMEL_FOLDER_CLASS (parent_class)->delete (folder);
+ CAMEL_FOLDER_CLASS (camel_local_folder_parent_class)->delete (folder);
}
static void
@@ -592,7 +574,7 @@ local_rename(CamelFolder *folder, const gchar *newname)
g_free(((CamelLocalSummary *)folder->summary)->folder_path);
((CamelLocalSummary *)folder->summary)->folder_path = g_strdup(lf->folder_path);
- CAMEL_FOLDER_CLASS (parent_class)->rename (folder, newname);
+ CAMEL_FOLDER_CLASS (camel_local_folder_parent_class)->rename (folder, newname);
}
static GPtrArray *
diff --git a/camel/providers/local/camel-local-store.c b/camel/providers/local/camel-local-store.c
index 1f44efd..72bb522 100644
--- a/camel/providers/local/camel-local-store.c
+++ b/camel/providers/local/camel-local-store.c
@@ -54,7 +54,7 @@ static gboolean local_can_refresh_folder (CamelStore *store, CamelFolderInfo *in
static gchar *local_get_full_path(CamelLocalStore *lf, const gchar *full_name);
static gchar *local_get_meta_path(CamelLocalStore *lf, const gchar *full_name, const gchar *ext);
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelLocalStore, camel_local_store, CAMEL_TYPE_STORE)
static void
local_store_finalize (GObject *object)
@@ -64,18 +64,16 @@ local_store_finalize (GObject *object)
g_free (local_store->toplevel_dir);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_local_store_parent_class)->finalize (object);
}
static void
-local_store_class_init (CamelLocalStoreClass *class)
+camel_local_store_class_init (CamelLocalStoreClass *class)
{
GObjectClass *object_class;
CamelServiceClass *service_class;
CamelStoreClass *store_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->finalize = local_store_finalize;
@@ -99,22 +97,9 @@ local_store_class_init (CamelLocalStoreClass *class)
class->get_meta_path = local_get_meta_path;
}
-GType
-camel_local_store_get_type (void)
+static void
+camel_local_store_init (CamelLocalStore *local_store)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_STORE,
- "CamelLocalStore",
- sizeof (CamelLocalStoreClass),
- (GClassInitFunc) local_store_class_init,
- sizeof (CamelLocalStore),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
static gboolean
@@ -129,7 +114,7 @@ construct (CamelService *service,
gint len;
/* Chain up to parent's construct() method. */
- service_class = CAMEL_SERVICE_CLASS (parent_class);
+ service_class = CAMEL_SERVICE_CLASS (camel_local_store_parent_class);
if (!service_class->construct (service, session, provider, url, error))
return FALSE;
@@ -219,7 +204,7 @@ local_get_trash (CamelStore *store,
CamelFolder *folder;
/* Chain up to parent's get_trash() method. */
- folder = CAMEL_STORE_CLASS (parent_class)->get_trash (store, error);
+ folder = CAMEL_STORE_CLASS (camel_local_store_parent_class)->get_trash (store, error);
if (folder) {
gchar *state = camel_local_store_get_meta_path(store, CAMEL_VTRASH_NAME, ".cmeta");
@@ -240,7 +225,7 @@ local_get_junk (CamelStore *store,
CamelFolder *folder;
/* Chain up to parent's get_junk() method. */
- folder = CAMEL_STORE_CLASS (parent_class)->get_junk (store, error);
+ folder = CAMEL_STORE_CLASS (camel_local_store_parent_class)->get_junk (store, error);
if (folder) {
gchar *state = camel_local_store_get_meta_path(store, CAMEL_VJUNK_NAME, ".cmeta");
diff --git a/camel/providers/local/camel-local-summary.c b/camel/providers/local/camel-local-summary.c
index 88ae044..c48577b 100644
--- a/camel/providers/local/camel-local-summary.c
+++ b/camel/providers/local/camel-local-summary.c
@@ -60,7 +60,7 @@ static gint local_summary_sync(CamelLocalSummary *cls, gboolean expunge, CamelFo
static CamelMessageInfo *local_summary_add(CamelLocalSummary *cls, CamelMimeMessage *msg, const CamelMessageInfo *info, CamelFolderChangeInfo *, GError **error);
static gint local_summary_need_index(void);
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelLocalSummary, camel_local_summary, CAMEL_TYPE_FOLDER_SUMMARY)
static void
local_summary_dispose (GObject *object)
@@ -75,7 +75,7 @@ local_summary_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_local_summary_parent_class)->dispose (object);
}
static void
@@ -88,17 +88,15 @@ local_summary_finalize (GObject *object)
g_free (local_summary->folder_path);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_local_summary_parent_class)->finalize (object);
}
static void
-local_summary_class_init (CamelLocalSummaryClass *class)
+camel_local_summary_class_init (CamelLocalSummaryClass *class)
{
GObjectClass *object_class;
CamelFolderSummaryClass *folder_summary_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->dispose = local_summary_dispose;
object_class->finalize = local_summary_finalize;
@@ -122,7 +120,7 @@ local_summary_class_init (CamelLocalSummaryClass *class)
}
static void
-local_summary_init (CamelLocalSummary *local_summary)
+camel_local_summary_init (CamelLocalSummary *local_summary)
{
CamelFolderSummary *folder_summary;
@@ -132,24 +130,6 @@ local_summary_init (CamelLocalSummary *local_summary)
folder_summary->version += CAMEL_LOCAL_SUMMARY_VERSION;
}
-GType
-camel_local_summary_get_type(void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_FOLDER_SUMMARY,
- "CamelLocalSummary",
- sizeof (CamelLocalSummaryClass),
- (GClassInitFunc) local_summary_class_init,
- sizeof (CamelLocalSummary),
- (GInstanceInitFunc) local_summary_init,
- 0);
-
- return type;
-}
-
void
camel_local_summary_construct(CamelLocalSummary *new, const gchar *filename, const gchar *local_name, CamelIndex *index)
{
@@ -700,7 +680,7 @@ summary_header_from_db (CamelFolderSummary *s, CamelFIRecord *fir)
/* We dont actually add our own headers, but version that we don't anyway */
- if (CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->summary_header_from_db(s, fir) == -1)
+ if (CAMEL_FOLDER_SUMMARY_CLASS (camel_local_summary_parent_class)->summary_header_from_db(s, fir) == -1)
return -1;
part = fir->bdata;
@@ -723,7 +703,7 @@ summary_header_load(CamelFolderSummary *s, FILE *in)
/* We dont actually add our own headers, but version that we don't anyway */
- if (CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->summary_header_load(s, in) == -1)
+ if (CAMEL_FOLDER_SUMMARY_CLASS (camel_local_summary_parent_class)->summary_header_load(s, in) == -1)
return -1;
/* Legacy version, version is in summary only */
@@ -741,7 +721,7 @@ summary_header_to_db (CamelFolderSummary *s, GError **error)
struct _CamelFIRecord *fir;
/* Chain up to parent's summary_header_to_db() method. */
- folder_summary_class = CAMEL_FOLDER_SUMMARY_CLASS (parent_class);
+ folder_summary_class = CAMEL_FOLDER_SUMMARY_CLASS (camel_local_summary_parent_class);
fir = folder_summary_class->summary_header_to_db (s, error);
if (fir)
@@ -755,7 +735,7 @@ summary_header_save(CamelFolderSummary *s, FILE *out)
{
/*CamelLocalSummary *cls = (CamelLocalSummary *)s;*/
- if (CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->summary_header_save(s, out) == -1)
+ if (CAMEL_FOLDER_SUMMARY_CLASS (camel_local_summary_parent_class)->summary_header_save(s, out) == -1)
return -1;
return camel_file_util_encode_fixed_int32(out, CAMEL_LOCAL_SUMMARY_VERSION);
@@ -767,7 +747,7 @@ message_info_new_from_header(CamelFolderSummary *s, GQueue *header_queue)
CamelLocalMessageInfo *mi;
CamelLocalSummary *cls = (CamelLocalSummary *)s;
- mi = (CamelLocalMessageInfo *)CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->message_info_new_from_header(s, header_queue);
+ mi = (CamelLocalMessageInfo *)CAMEL_FOLDER_SUMMARY_CLASS (camel_local_summary_parent_class)->message_info_new_from_header(s, header_queue);
if (mi) {
const gchar *xev;
gint doindex = FALSE;
diff --git a/camel/providers/local/camel-maildir-folder.c b/camel/providers/local/camel-maildir-folder.c
index f7f8b45..9ba5062 100644
--- a/camel/providers/local/camel-maildir-folder.c
+++ b/camel/providers/local/camel-maildir-folder.c
@@ -41,8 +41,6 @@
#define d(x) /*(printf("%s(%d): ", __FILE__, __LINE__),(x))*/
-static gpointer parent_class;
-
static CamelLocalSummary *maildir_create_summary(CamelLocalFolder *lf, const gchar *path, const gchar *folder, CamelIndex *index);
static gboolean maildir_append_message(CamelFolder * folder, CamelMimeMessage * message, const CamelMessageInfo *info, gchar **appended_uid, GError **error);
@@ -52,6 +50,8 @@ static gint maildir_cmp_uids (CamelFolder *folder, const gchar *uid1, const gcha
static void maildir_sort_uids (CamelFolder *folder, GPtrArray *uids);
static gboolean maildir_transfer_messages_to (CamelFolder *source, GPtrArray *uids, CamelFolder *dest, GPtrArray **transferred_uids, gboolean delete_originals, GError **error);
+G_DEFINE_TYPE (CamelMaildirFolder, camel_maildir_folder, CAMEL_TYPE_LOCAL_FOLDER)
+
static gint
maildir_folder_getv (CamelObject *object,
GError **error,
@@ -80,18 +80,16 @@ maildir_folder_getv (CamelObject *object,
arg->tag = (tag & CAMEL_ARG_TYPE) | CAMEL_ARG_IGNORE;
}
- return ((CamelObjectClass *)parent_class)->getv(object, error, args);
+ return ((CamelObjectClass *)camel_maildir_folder_parent_class)->getv(object, error, args);
}
static void
-maildir_folder_class_init (CamelObjectClass *class)
+camel_maildir_folder_class_init (CamelMaildirFolderClass *class)
{
CamelObjectClass *camel_object_class;
CamelFolderClass *folder_class;
CamelLocalFolderClass *local_folder_class;
- parent_class = g_type_class_peek_parent (class);
-
camel_object_class = CAMEL_OBJECT_CLASS (class);
camel_object_class->getv = maildir_folder_getv;
@@ -107,22 +105,9 @@ maildir_folder_class_init (CamelObjectClass *class)
local_folder_class->create_summary = maildir_create_summary;
}
-GType
-camel_maildir_folder_get_type (void)
+static void
+camel_maildir_folder_init (CamelMaildirFolder *maildir_folder)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_LOCAL_FOLDER,
- "CamelMaildirFolder",
- sizeof (CamelMaildirFolderClass),
- (GClassInitFunc) maildir_folder_class_init,
- sizeof (CamelMaildirFolder),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
CamelFolder *
@@ -374,7 +359,7 @@ static void
maildir_sort_uids (CamelFolder *folder,
GPtrArray *uids)
{
- g_return_if_fail (parent_class != NULL);
+ g_return_if_fail (camel_maildir_folder_parent_class != NULL);
g_return_if_fail (folder != NULL);
if (uids && uids->len > 1)
@@ -382,7 +367,7 @@ maildir_sort_uids (CamelFolder *folder,
folder->summary, uids->len, NULL);
/* Chain up to parent's sort_uids() method. */
- CAMEL_FOLDER_CLASS (parent_class)->sort_uids (folder, uids);
+ CAMEL_FOLDER_CLASS (camel_maildir_folder_parent_class)->sort_uids (folder, uids);
}
static gboolean
@@ -459,7 +444,7 @@ maildir_transfer_messages_to (CamelFolder *source,
CamelFolderClass *folder_class;
/* Chain up to parent's transfer_messages_to() method. */
- folder_class = CAMEL_FOLDER_CLASS (parent_class);
+ folder_class = CAMEL_FOLDER_CLASS (camel_maildir_folder_parent_class);
return folder_class->transfer_messages_to (
source, uids, dest, transferred_uids,
delete_originals, error);
diff --git a/camel/providers/local/camel-maildir-store.c b/camel/providers/local/camel-maildir-store.c
index e498539..d58f795 100644
--- a/camel/providers/local/camel-maildir-store.c
+++ b/camel/providers/local/camel-maildir-store.c
@@ -38,8 +38,6 @@
#define d(x)
-static gpointer parent_class;
-
static CamelFolder *get_folder(CamelStore * store, const gchar *folder_name, guint32 flags, GError **error);
static CamelFolder *get_inbox (CamelStore *store, GError **error);
static gboolean delete_folder(CamelStore * store, const gchar *folder_name, GError **error);
@@ -50,13 +48,13 @@ static CamelFolderInfo * get_folder_info (CamelStore *store, const gchar *top, g
static gboolean maildir_compare_folder_name(gconstpointer a, gconstpointer b);
static guint maildir_hash_folder_name(gconstpointer a);
+G_DEFINE_TYPE (CamelMaildirStore, camel_maildir_store, CAMEL_TYPE_LOCAL_STORE)
+
static void
-maildir_store_class_init (CamelObjectClass *class)
+camel_maildir_store_class_init (CamelMaildirStoreClass *class)
{
CamelStoreClass *store_class;
- parent_class = g_type_class_peek_parent (class);
-
store_class = CAMEL_STORE_CLASS (class);
store_class->hash_folder_name = maildir_hash_folder_name;
store_class->compare_folder_name = maildir_compare_folder_name;
@@ -68,22 +66,9 @@ maildir_store_class_init (CamelObjectClass *class)
store_class->free_folder_info = camel_store_free_folder_info_full;
}
-GType
-camel_maildir_store_get_type (void)
+static void
+camel_maildir_store_init (CamelMaildirStore *maildir_store)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_LOCAL_STORE,
- "CamelMaildirStore",
- sizeof (CamelMaildirStoreClass),
- (GClassInitFunc) maildir_store_class_init,
- sizeof (CamelMaildirStore),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
/* This fixes up some historical cruft of names starting with "./" */
@@ -127,7 +112,7 @@ get_folder (CamelStore * store,
folder_name = md_canon_name(folder_name);
/* Chain up to parent's get_folder() method. */
- store_class = CAMEL_STORE_CLASS (parent_class);
+ store_class = CAMEL_STORE_CLASS (camel_maildir_store_parent_class);
if (!store_class->get_folder (store, folder_name, flags, error))
return NULL;
@@ -301,7 +286,7 @@ delete_folder (CamelStore * store,
CamelStoreClass *store_class;
/* Chain up to parent's delete_folder() method. */
- store_class = CAMEL_STORE_CLASS (parent_class);
+ store_class = CAMEL_STORE_CLASS (camel_maildir_store_parent_class);
success = store_class->delete_folder (
store, folder_name, error);
}
@@ -333,7 +318,7 @@ maildir_rename_folder (CamelStore *store,
}
/* Chain up to parent's rename_folder() method. */
- store_class = CAMEL_STORE_CLASS (parent_class);
+ store_class = CAMEL_STORE_CLASS (camel_maildir_store_parent_class);
return store_class->rename_folder (store, old, new, error);
}
diff --git a/camel/providers/local/camel-maildir-summary.c b/camel/providers/local/camel-maildir-summary.c
index 4e47439..f6d7074 100644
--- a/camel/providers/local/camel-maildir-summary.c
+++ b/camel/providers/local/camel-maildir-summary.c
@@ -69,7 +69,7 @@ struct _CamelMaildirSummaryPrivate {
GMutex *summary_lock;
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelMaildirSummary, camel_maildir_summary, CAMEL_TYPE_LOCAL_SUMMARY)
static void
maildir_summary_finalize (GObject *object)
@@ -82,17 +82,16 @@ maildir_summary_finalize (GObject *object)
g_mutex_free (priv->summary_lock);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_maildir_summary_parent_class)->finalize (object);
}
static void
-maildir_summary_class_init (CamelMaildirSummaryClass *class)
+camel_maildir_summary_class_init (CamelMaildirSummaryClass *class)
{
GObjectClass *object_class;
CamelFolderSummaryClass *folder_summary_class;
CamelLocalSummaryClass *local_summary_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelMaildirSummaryPrivate));
object_class = G_OBJECT_CLASS (class);
@@ -116,7 +115,7 @@ maildir_summary_class_init (CamelMaildirSummaryClass *class)
}
static void
-maildir_summary_init (CamelMaildirSummary *maildir_summary)
+camel_maildir_summary_init (CamelMaildirSummary *maildir_summary)
{
CamelFolderSummary *folder_summary;
gchar hostname[256];
@@ -137,24 +136,6 @@ maildir_summary_init (CamelMaildirSummary *maildir_summary)
maildir_summary->priv->summary_lock = g_mutex_new ();
}
-GType
-camel_maildir_summary_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_LOCAL_SUMMARY,
- "CamelMaildirSummary",
- sizeof (CamelMaildirSummaryClass),
- (GClassInitFunc) maildir_summary_class_init,
- sizeof (CamelMaildirSummary),
- (GInstanceInitFunc) maildir_summary_init,
- 0);
-
- return type;
-}
-
/**
* camel_maildir_summary_new:
* @folder: parent folder.
@@ -274,7 +255,7 @@ maildir_summary_add (CamelLocalSummary *cls,
CamelMaildirMessageInfo *mi;
/* Chain up to parent's add() method. */
- local_summary_class = CAMEL_LOCAL_SUMMARY_CLASS (parent_class);
+ local_summary_class = CAMEL_LOCAL_SUMMARY_CLASS (camel_maildir_summary_parent_class);
mi = (CamelMaildirMessageInfo *) local_summary_class->add (
cls, msg, info, changes, error);
if (mi) {
@@ -295,7 +276,7 @@ message_info_new_from_header(CamelFolderSummary * s, GQueue *header_queue)
CamelMaildirMessageInfo *mdi;
const gchar *uid;
- mi = ((CamelFolderSummaryClass *) parent_class)->message_info_new_from_header(s, header_queue);
+ mi = ((CamelFolderSummaryClass *) camel_maildir_summary_parent_class)->message_info_new_from_header(s, header_queue);
/* assign the uid and new filename */
if (mi) {
mdi = (CamelMaildirMessageInfo *)mi;
@@ -357,7 +338,7 @@ message_info_free(CamelFolderSummary *s, CamelMessageInfo *mi)
g_free(mdi->filename);
- ((CamelFolderSummaryClass *) parent_class)->message_info_free(s, mi);
+ ((CamelFolderSummaryClass *) camel_maildir_summary_parent_class)->message_info_free(s, mi);
}
static gchar *maildir_summary_next_uid_string(CamelFolderSummary *s)
@@ -412,7 +393,7 @@ message_info_load(CamelFolderSummary *s, FILE *in)
CamelMessageInfo *mi;
CamelMaildirSummary *mds = (CamelMaildirSummary *)s;
- mi = ((CamelFolderSummaryClass *) parent_class)->message_info_load(s, in);
+ mi = ((CamelFolderSummaryClass *) camel_maildir_summary_parent_class)->message_info_load(s, in);
if (mi) {
gchar *name;
@@ -480,7 +461,7 @@ maildir_summary_load (CamelLocalSummary *cls,
g_free(cur);
/* Chain up to parent's load() method. */
- local_summary_class = CAMEL_LOCAL_SUMMARY_CLASS (parent_class);
+ local_summary_class = CAMEL_LOCAL_SUMMARY_CLASS (camel_maildir_summary_parent_class);
ret = local_summary_class->load (cls, forceindex, error);
g_hash_table_destroy(mds->priv->load_map);
@@ -808,7 +789,7 @@ maildir_summary_sync (CamelLocalSummary *cls,
camel_operation_end(NULL);
/* Chain up to parent's sync() method. */
- local_summary_class = CAMEL_LOCAL_SUMMARY_CLASS (parent_class);
+ local_summary_class = CAMEL_LOCAL_SUMMARY_CLASS (camel_maildir_summary_parent_class);
return local_summary_class->sync (cls, expunge, changes, error);
}
diff --git a/camel/providers/local/camel-mbox-folder.c b/camel/providers/local/camel-mbox-folder.c
index d1723cb..c08f7c3 100644
--- a/camel/providers/local/camel-mbox-folder.c
+++ b/camel/providers/local/camel-mbox-folder.c
@@ -46,8 +46,6 @@
#define d(x) /*(printf("%s(%d): ", __FILE__, __LINE__),(x))*/
-static gpointer parent_class;
-
static gint mbox_lock(CamelLocalFolder *lf, CamelLockType type, GError **error);
static void mbox_unlock(CamelLocalFolder *lf);
@@ -58,14 +56,14 @@ static gchar * mbox_get_filename (CamelFolder *folder, const gchar *uid, GError
static gint mbox_cmp_uids (CamelFolder *folder, const gchar *uid1, const gchar *uid2);
static void mbox_sort_uids (CamelFolder *folder, GPtrArray *uids);
+G_DEFINE_TYPE (CamelMboxFolder, camel_mbox_folder, CAMEL_TYPE_LOCAL_FOLDER)
+
static void
-mbox_folder_class_init (CamelMboxFolderClass *class)
+camel_mbox_folder_class_init (CamelMboxFolderClass *class)
{
CamelFolderClass *folder_class;
CamelLocalFolderClass *local_folder_class;
- parent_class = g_type_class_peek_parent (class);
-
folder_class = CAMEL_FOLDER_CLASS (class);
folder_class->append_message = mbox_append_message;
folder_class->get_message = mbox_get_message;
@@ -80,29 +78,11 @@ mbox_folder_class_init (CamelMboxFolderClass *class)
}
static void
-mbox_folder_init (CamelMboxFolder *mbox_folder)
+camel_mbox_folder_init (CamelMboxFolder *mbox_folder)
{
mbox_folder->lockfd = -1;
}
-GType
-camel_mbox_folder_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_LOCAL_FOLDER,
- "CamelMboxFolder",
- sizeof (CamelMboxFolderClass),
- (GClassInitFunc) mbox_folder_class_init,
- sizeof (CamelMboxFolder),
- (GInstanceInitFunc) mbox_folder_init,
- 0);
-
- return type;
-}
-
CamelFolder *
camel_mbox_folder_new(CamelStore *parent_store, const gchar *full_name, guint32 flags, GError **error)
{
@@ -505,12 +485,12 @@ mbox_cmp_uids (CamelFolder *folder, const gchar *uid1, const gchar *uid2)
static void
mbox_sort_uids (CamelFolder *folder, GPtrArray *uids)
{
- g_return_if_fail (parent_class != NULL);
+ g_return_if_fail (camel_mbox_folder_parent_class != NULL);
g_return_if_fail (folder != NULL);
if (uids && uids->len > 1)
camel_folder_summary_ensure_infos_loaded (
folder->summary, uids->len, NULL);
- CAMEL_FOLDER_CLASS (parent_class)->sort_uids (folder, uids);
+ CAMEL_FOLDER_CLASS (camel_mbox_folder_parent_class)->sort_uids (folder, uids);
}
diff --git a/camel/providers/local/camel-mbox-store.c b/camel/providers/local/camel-mbox-store.c
index af7b199..70c12c9 100644
--- a/camel/providers/local/camel-mbox-store.c
+++ b/camel/providers/local/camel-mbox-store.c
@@ -40,8 +40,6 @@
#define d(x)
-static gpointer parent_class;
-
static CamelFolder *get_folder(CamelStore *store, const gchar *folder_name, guint32 flags, GError **error);
static gboolean delete_folder(CamelStore *store, const gchar *folder_name, GError **error);
static gboolean rename_folder(CamelStore *store, const gchar *old, const gchar *new, GError **error);
@@ -50,14 +48,14 @@ static CamelFolderInfo *get_folder_info(CamelStore *store, const gchar *top, gui
static gchar *mbox_get_meta_path(CamelLocalStore *ls, const gchar *full_name, const gchar *ext);
static gchar *mbox_get_full_path(CamelLocalStore *ls, const gchar *full_name);
+G_DEFINE_TYPE (CamelMboxStore, camel_mbox_store, CAMEL_TYPE_LOCAL_STORE)
+
static void
-mbox_store_class_init (CamelMboxStoreClass *class)
+camel_mbox_store_class_init (CamelMboxStoreClass *class)
{
CamelStoreClass *store_class;
CamelLocalStoreClass *local_store_class;
- parent_class = g_type_class_peek_parent (class);
-
store_class = CAMEL_STORE_CLASS (class);
store_class->get_folder = get_folder;
store_class->delete_folder = delete_folder;
@@ -71,22 +69,9 @@ mbox_store_class_init (CamelMboxStoreClass *class)
local_store_class->get_meta_path = mbox_get_meta_path;
}
-GType
-camel_mbox_store_get_type (void)
+static void
+camel_mbox_store_init (CamelMboxStore *mbox_store)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_LOCAL_STORE,
- "CamelMboxStore",
- sizeof (CamelMboxStoreClass),
- (GClassInitFunc) mbox_store_class_init,
- sizeof (CamelMboxStore),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
static const gchar *extensions[] = {
@@ -126,7 +111,7 @@ get_folder (CamelStore *store,
gchar *name;
/* Chain up to parent's get_folder() method. */
- store_class = CAMEL_STORE_CLASS (parent_class);
+ store_class = CAMEL_STORE_CLASS (camel_mbox_store_parent_class);
if (!store_class->get_folder (store, folder_name, flags, error))
return NULL;
diff --git a/camel/providers/local/camel-mbox-summary.c b/camel/providers/local/camel-mbox-summary.c
index 6919a7c..6f8dab2 100644
--- a/camel/providers/local/camel-mbox-summary.c
+++ b/camel/providers/local/camel-mbox-summary.c
@@ -81,14 +81,14 @@ static void encode_status(guint32 flags, gchar status[8]);
static guint32 decode_status(const gchar *status);
#endif
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelMboxSummary, camel_mbox_summary, CAMEL_TYPE_LOCAL_SUMMARY)
static gboolean
mbox_info_set_user_flag(CamelMessageInfo *mi, const gchar *name, gboolean value)
{
gint res;
- res = CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->info_set_user_flag(mi, name, value);
+ res = CAMEL_FOLDER_SUMMARY_CLASS (camel_mbox_summary_parent_class)->info_set_user_flag(mi, name, value);
if (res)
((CamelLocalMessageInfo *)mi)->info.flags |= CAMEL_MESSAGE_FOLDER_FLAGGED;
@@ -100,7 +100,7 @@ mbox_info_set_user_tag(CamelMessageInfo *mi, const gchar *name, const gchar *val
{
gint res;
- res = CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->info_set_user_tag(mi, name, value);
+ res = CAMEL_FOLDER_SUMMARY_CLASS (camel_mbox_summary_parent_class)->info_set_user_tag(mi, name, value);
if (res)
((CamelLocalMessageInfo *)mi)->info.flags |= CAMEL_MESSAGE_FOLDER_FLAGGED;
@@ -118,18 +118,16 @@ mbox_info_set_flags(CamelMessageInfo *mi, guint32 flags, guint32 set)
set |= CAMEL_MESSAGE_FOLDER_XEVCHANGE|CAMEL_MESSAGE_FOLDER_FLAGGED;
}
- return CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->info_set_flags(mi, flags, set);
+ return CAMEL_FOLDER_SUMMARY_CLASS (camel_mbox_summary_parent_class)->info_set_flags(mi, flags, set);
}
#endif
static void
-mbox_summary_class_init (CamelMboxSummaryClass *class)
+camel_mbox_summary_class_init (CamelMboxSummaryClass *class)
{
CamelFolderSummaryClass *folder_summary_class;
CamelLocalSummaryClass *local_summary_class;
- parent_class = g_type_class_peek_parent (class);
-
folder_summary_class = CAMEL_FOLDER_SUMMARY_CLASS (class);
folder_summary_class->message_info_size = sizeof (CamelMboxMessageInfo);
folder_summary_class->content_info_size = sizeof (CamelMboxMessageContentInfo);
@@ -164,7 +162,7 @@ mbox_summary_class_init (CamelMboxSummaryClass *class)
}
static void
-mbox_summary_init (CamelMboxSummary *mbox_summary)
+camel_mbox_summary_init (CamelMboxSummary *mbox_summary)
{
CamelFolderSummary *folder_summary;
@@ -174,24 +172,6 @@ mbox_summary_init (CamelMboxSummary *mbox_summary)
folder_summary->version += CAMEL_MBOX_SUMMARY_VERSION;
}
-GType
-camel_mbox_summary_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_LOCAL_SUMMARY,
- "CamelMboxSummary",
- sizeof (CamelMboxSummaryClass),
- (GClassInitFunc) mbox_summary_class_init,
- sizeof (CamelMboxSummary),
- (GInstanceInitFunc) mbox_summary_init,
- 0);
-
- return type;
-}
-
/**
* camel_mbox_summary_new:
*
@@ -248,7 +228,7 @@ summary_header_from_db (CamelFolderSummary *s, struct _CamelFIRecord *fir)
CamelMboxSummary *mbs = CAMEL_MBOX_SUMMARY(s);
gchar *part;
- CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->summary_header_from_db(s, fir);
+ CAMEL_FOLDER_SUMMARY_CLASS (camel_mbox_summary_parent_class)->summary_header_from_db(s, fir);
part = fir->bdata;
if (part) {
@@ -264,7 +244,7 @@ summary_header_load(CamelFolderSummary *s, FILE *in)
{
CamelMboxSummary *mbs = CAMEL_MBOX_SUMMARY(s);
- if (CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->summary_header_load(s, in) == -1)
+ if (CAMEL_FOLDER_SUMMARY_CLASS (camel_mbox_summary_parent_class)->summary_header_load(s, in) == -1)
return -1;
/* legacy version */
@@ -288,7 +268,7 @@ summary_header_to_db (CamelFolderSummary *s, GError **error)
gchar *tmp;
/* Chain up to parent's summary_header_to_db() method. */
- folder_summary_class = CAMEL_FOLDER_SUMMARY_CLASS (parent_class);
+ folder_summary_class = CAMEL_FOLDER_SUMMARY_CLASS (camel_mbox_summary_parent_class);
fir = folder_summary_class->summary_header_to_db (s, error);
if (fir) {
@@ -305,7 +285,7 @@ summary_header_save(CamelFolderSummary *s, FILE *out)
{
CamelMboxSummary *mbs = CAMEL_MBOX_SUMMARY(s);
- if (CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->summary_header_save(s, out) == -1)
+ if (CAMEL_FOLDER_SUMMARY_CLASS (camel_mbox_summary_parent_class)->summary_header_save(s, out) == -1)
return -1;
camel_file_util_encode_fixed_int32(out, CAMEL_MBOX_SUMMARY_VERSION);
@@ -319,7 +299,7 @@ message_info_new_from_header(CamelFolderSummary *s, GQueue *header_queue)
CamelMboxMessageInfo *mi;
CamelMboxSummary *mbs = (CamelMboxSummary *)s;
- mi = (CamelMboxMessageInfo *)CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->message_info_new_from_header(s, header_queue);
+ mi = (CamelMboxMessageInfo *)CAMEL_FOLDER_SUMMARY_CLASS (camel_mbox_summary_parent_class)->message_info_new_from_header(s, header_queue);
if (mi) {
const gchar *xev, *uid;
CamelMboxMessageInfo *info = NULL;
@@ -399,7 +379,7 @@ message_info_new_from_parser(CamelFolderSummary *s, CamelMimeParser *mp)
{
CamelMessageInfo *mi;
- mi = CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->message_info_new_from_parser(s, mp);
+ mi = CAMEL_FOLDER_SUMMARY_CLASS (camel_mbox_summary_parent_class)->message_info_new_from_parser(s, mp);
if (mi) {
CamelMboxMessageInfo *mbi = (CamelMboxMessageInfo *)mi;
@@ -415,7 +395,7 @@ message_info_from_db(CamelFolderSummary *s, struct _CamelMIRecord *mir)
CamelMessageInfo *mi;
gchar *part;
- mi = CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->message_info_from_db(s, mir);
+ mi = CAMEL_FOLDER_SUMMARY_CLASS (camel_mbox_summary_parent_class)->message_info_from_db(s, mir);
if (mi) {
CamelMboxMessageInfo *mbi = (CamelMboxMessageInfo *)mi;
@@ -435,7 +415,7 @@ message_info_load(CamelFolderSummary *s, FILE *in)
io(printf("loading mbox message info\n"));
- mi = CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->message_info_load(s, in);
+ mi = CAMEL_FOLDER_SUMMARY_CLASS (camel_mbox_summary_parent_class)->message_info_load(s, in);
if (mi) {
CamelMboxMessageInfo *mbi = (CamelMboxMessageInfo *)mi;
@@ -456,7 +436,7 @@ meta_message_info_save(CamelFolderSummary *s, FILE *out_meta, FILE *out, CamelMe
io(printf("saving mbox message info\n"));
- if (CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->meta_message_info_save(s, out_meta, out, mi) == -1
+ if (CAMEL_FOLDER_SUMMARY_CLASS (camel_mbox_summary_parent_class)->meta_message_info_save(s, out_meta, out, mi) == -1
|| camel_file_util_encode_off_t(out_meta, mbi->frompos) == -1)
return -1;
@@ -469,7 +449,7 @@ message_info_to_db(CamelFolderSummary *s, CamelMessageInfo *info)
CamelMboxMessageInfo *mbi = (CamelMboxMessageInfo *)info;
struct _CamelMIRecord *mir;
- mir = CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->message_info_to_db(s, info);
+ mir = CAMEL_FOLDER_SUMMARY_CLASS (camel_mbox_summary_parent_class)->message_info_to_db(s, info);
mir->bdata = g_strdup_printf("%lu", mbi->frompos);
return mir;
@@ -482,7 +462,7 @@ message_info_save(CamelFolderSummary *s, FILE *out, CamelMessageInfo *mi)
io(printf("saving mbox message info\n"));
- if (CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->message_info_save(s, out, mi) == -1
+ if (CAMEL_FOLDER_SUMMARY_CLASS (camel_mbox_summary_parent_class)->message_info_save(s, out, mi) == -1
|| camel_file_util_encode_off_t (out, mbi->frompos) == -1)
return -1;
@@ -1068,7 +1048,7 @@ mbox_summary_sync(CamelLocalSummary *cls, gboolean expunge, CamelFolderChangeInf
camel_folder_summary_touch(s);
}
- return CAMEL_LOCAL_SUMMARY_CLASS (parent_class)->sync(cls, expunge, changeinfo, error);
+ return CAMEL_LOCAL_SUMMARY_CLASS (camel_mbox_summary_parent_class)->sync(cls, expunge, changeinfo, error);
}
gint
@@ -1302,7 +1282,7 @@ mbox_summary_add(CamelLocalSummary *cls, CamelMimeMessage *msg, const CamelMessa
CamelMboxMessageInfo *mi;
/* Chain up to parent's add() method. */
- local_summary_class = CAMEL_LOCAL_SUMMARY_CLASS (parent_class);
+ local_summary_class = CAMEL_LOCAL_SUMMARY_CLASS (camel_mbox_summary_parent_class);
mi = (CamelMboxMessageInfo *) local_summary_class->add (
cls, msg, info, ci, error);
if (mi && ((CamelMboxSummary *)cls)->xstatus) {
diff --git a/camel/providers/local/camel-mh-folder.c b/camel/providers/local/camel-mh-folder.c
index 1b5756f..2e6041b 100644
--- a/camel/providers/local/camel-mh-folder.c
+++ b/camel/providers/local/camel-mh-folder.c
@@ -39,22 +39,20 @@
#define d(x) /*(printf("%s(%d): ", __FILE__, __LINE__),(x))*/
-static gpointer parent_class;
-
static CamelLocalSummary *mh_create_summary(CamelLocalFolder *lf, const gchar *path, const gchar *folder, CamelIndex *index);
static gboolean mh_append_message(CamelFolder * folder, CamelMimeMessage * message, const CamelMessageInfo *info, gchar **appended_uid, GError **error);
static CamelMimeMessage *mh_get_message(CamelFolder * folder, const gchar * uid, GError **error);
static gchar * mh_get_filename (CamelFolder *folder, const gchar *uid, GError **error);
+G_DEFINE_TYPE (CamelMhFolder, camel_mh_folder, CAMEL_TYPE_LOCAL_FOLDER)
+
static void
-mh_folder_class_init (CamelObjectClass *class)
+camel_mh_folder_class_init (CamelMhFolderClass *class)
{
CamelFolderClass *folder_class;
CamelLocalFolderClass *local_folder_class;
- parent_class = g_type_class_peek_parent (class);
-
folder_class = CAMEL_FOLDER_CLASS (class);
folder_class->append_message = mh_append_message;
folder_class->get_message = mh_get_message;
@@ -64,22 +62,9 @@ mh_folder_class_init (CamelObjectClass *class)
local_folder_class->create_summary = mh_create_summary;
}
-GType
-camel_mh_folder_get_type (void)
+static void
+camel_mh_folder_init (CamelMhFolder *mh_folder)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_LOCAL_FOLDER,
- "CamelMhFolder",
- sizeof (CamelMhFolderClass),
- (GClassInitFunc) mh_folder_class_init,
- sizeof (CamelMhFolder),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
CamelFolder *
diff --git a/camel/providers/local/camel-mh-store.c b/camel/providers/local/camel-mh-store.c
index ec8f750..9e30037 100644
--- a/camel/providers/local/camel-mh-store.c
+++ b/camel/providers/local/camel-mh-store.c
@@ -35,8 +35,6 @@
#include "camel-mh-store.h"
#include "camel-mh-summary.h"
-static gpointer parent_class;
-
#define d(x)
static gboolean construct (CamelService *service, CamelSession *session, CamelProvider *provider, CamelURL *url, GError **error);
@@ -46,14 +44,14 @@ static gboolean delete_folder(CamelStore * store, const gchar *folder_name, GErr
static gboolean rename_folder(CamelStore *store, const gchar *old, const gchar *new, GError **error);
static CamelFolderInfo * get_folder_info (CamelStore *store, const gchar *top, guint32 flags, GError **error);
+G_DEFINE_TYPE (CamelMhStore, camel_mh_store, CAMEL_TYPE_LOCAL_STORE)
+
static void
-mh_store_class_init (CamelObjectClass *class)
+camel_mh_store_class_init (CamelMhStoreClass *class)
{
CamelServiceClass *service_class;
CamelStoreClass *store_class;
- parent_class = g_type_class_peek_parent (class);
-
service_class = CAMEL_SERVICE_CLASS (class);
service_class->construct = construct;
@@ -65,22 +63,9 @@ mh_store_class_init (CamelObjectClass *class)
store_class->get_folder_info = get_folder_info;
}
-GType
-camel_mh_store_get_type (void)
+static void
+camel_mh_store_init (CamelMhStore *mh_store)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_LOCAL_STORE,
- "CamelMhStore",
- sizeof (CamelMhStoreClass),
- (GClassInitFunc) mh_store_class_init,
- sizeof (CamelMhStore),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
static gboolean
@@ -94,7 +79,7 @@ construct (CamelService *service,
CamelMhStore *mh_store = (CamelMhStore *)service;
/* Chain up to parent's construct() method. */
- service_class = CAMEL_SERVICE_CLASS (parent_class);
+ service_class = CAMEL_SERVICE_CLASS (camel_mh_store_parent_class);
if (!service_class->construct (service, session, provider, url, error))
return FALSE;
@@ -215,7 +200,7 @@ get_folder (CamelStore *store,
struct stat st;
/* Chain up to parent's get_folder() method. */
- store_class = CAMEL_STORE_CLASS (parent_class);
+ store_class = CAMEL_STORE_CLASS (camel_mh_store_parent_class);
if (store_class->get_folder (store, folder_name, flags, error) == NULL)
return NULL;
@@ -311,7 +296,7 @@ delete_folder (CamelStore *store,
folders_update(((CamelLocalStore *)store)->toplevel_dir, UPDATE_REMOVE, folder_name, NULL);
/* Chain up to parent's delete_folder() method. */
- store_class = CAMEL_STORE_CLASS (parent_class);
+ store_class = CAMEL_STORE_CLASS (camel_mh_store_parent_class);
return store_class->delete_folder (store, folder_name, error);
}
@@ -324,7 +309,7 @@ rename_folder (CamelStore *store,
CamelStoreClass *store_class;
/* Chain up to parent's rename_folder() method. */
- store_class = CAMEL_STORE_CLASS (parent_class);
+ store_class = CAMEL_STORE_CLASS (camel_mh_store_parent_class);
if (!store_class->rename_folder (store, old, new, error))
return FALSE;
diff --git a/camel/providers/local/camel-mh-summary.c b/camel/providers/local/camel-mh-summary.c
index 18f5e0a..2ce55b1 100644
--- a/camel/providers/local/camel-mh-summary.c
+++ b/camel/providers/local/camel-mh-summary.c
@@ -57,15 +57,14 @@ struct _CamelMhSummaryPrivate {
gchar *current_uid;
};
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelMhSummary, camel_mh_summary, CAMEL_TYPE_LOCAL_SUMMARY)
static void
-mh_summary_class_init (CamelMhSummaryClass *class)
+camel_mh_summary_class_init (CamelMhSummaryClass *class)
{
CamelFolderSummaryClass *folder_summary_class;
CamelLocalSummaryClass *local_summary_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelMhSummaryPrivate));
folder_summary_class = CAMEL_FOLDER_SUMMARY_CLASS (class);
@@ -78,7 +77,7 @@ mh_summary_class_init (CamelMhSummaryClass *class)
}
static void
-mh_summary_init (CamelMhSummary *mh_summary)
+camel_mh_summary_init (CamelMhSummary *mh_summary)
{
CamelFolderSummary *folder_summary;
@@ -90,24 +89,6 @@ mh_summary_init (CamelMhSummary *mh_summary)
folder_summary->version += CAMEL_MH_SUMMARY_VERSION;
}
-GType
-camel_mh_summary_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_LOCAL_SUMMARY,
- "CamelMhSummary",
- sizeof (CamelMhSummaryClass),
- (GClassInitFunc) mh_summary_class_init,
- sizeof (CamelMhSummary),
- (GInstanceInitFunc) mh_summary_init,
- 0);
-
- return type;
-}
-
/**
* camel_mh_summary_new:
*
@@ -347,6 +328,6 @@ mh_summary_sync (CamelLocalSummary *cls,
}
/* Chain up to parent's sync() method. */
- local_summary_class = CAMEL_LOCAL_SUMMARY_CLASS (parent_class);
+ local_summary_class = CAMEL_LOCAL_SUMMARY_CLASS (camel_mh_summary_parent_class);
return local_summary_class->sync (cls, expunge, changes, error);
}
diff --git a/camel/providers/local/camel-spool-folder.c b/camel/providers/local/camel-spool-folder.c
index 210e35c..a58f70b 100644
--- a/camel/providers/local/camel-spool-folder.c
+++ b/camel/providers/local/camel-spool-folder.c
@@ -40,20 +40,18 @@
#define d(x) /*(printf("%s(%d): ", __FILE__, __LINE__),(x))*/
-static gpointer parent_class;
-
static CamelLocalSummary *spool_create_summary(CamelLocalFolder *lf, const gchar *path, const gchar *folder, CamelIndex *index);
static gint spool_lock(CamelLocalFolder *lf, CamelLockType type, GError **error);
static void spool_unlock(CamelLocalFolder *lf);
+G_DEFINE_TYPE (CamelSpoolFolder, camel_spool_folder, CAMEL_TYPE_MBOX_FOLDER)
+
static void
-spool_folder_class_init (CamelSpoolFolderClass *class)
+camel_spool_folder_class_init (CamelSpoolFolderClass *class)
{
CamelLocalFolderClass *local_folder_class;
- parent_class = g_type_class_peek_parent (class);
-
local_folder_class = CAMEL_LOCAL_FOLDER_CLASS (class);
local_folder_class->create_summary = spool_create_summary;
local_folder_class->lock = spool_lock;
@@ -61,29 +59,11 @@ spool_folder_class_init (CamelSpoolFolderClass *class)
}
static void
-spool_folder_init (CamelSpoolFolder *spool_folder)
+camel_spool_folder_init (CamelSpoolFolder *spool_folder)
{
spool_folder->lockid = -1;
}
-GType
-camel_spool_folder_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_MBOX_FOLDER,
- "CamelSpoolFolder",
- sizeof (CamelSpoolFolderClass),
- (GClassInitFunc) spool_folder_class_init,
- sizeof (CamelSpoolFolder),
- (GInstanceInitFunc) spool_folder_init,
- 0);
-
- return type;
-}
-
CamelFolder *
camel_spool_folder_new (CamelStore *parent_store,
const gchar *full_name,
diff --git a/camel/providers/local/camel-spool-store.c b/camel/providers/local/camel-spool-store.c
index 11504c6..47fbba5 100644
--- a/camel/providers/local/camel-spool-store.c
+++ b/camel/providers/local/camel-spool-store.c
@@ -58,17 +58,15 @@ static gboolean delete_folder(CamelStore *store, const gchar *folder_name, GErro
static gchar *spool_get_meta_path(CamelLocalStore *ls, const gchar *full_name, const gchar *ext);
static gchar *spool_get_full_path(CamelLocalStore *ls, const gchar *full_name);
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelSpoolStore, camel_spool_store, CAMEL_TYPE_MBOX_STORE)
static void
-spool_store_class_init (CamelSpoolStoreClass *class)
+camel_spool_store_class_init (CamelSpoolStoreClass *class)
{
CamelServiceClass *service_class;
CamelStoreClass *store_class;
CamelLocalStoreClass *local_store_class;
- parent_class = g_type_class_peek_parent (class);
-
service_class = CAMEL_SERVICE_CLASS (class);
service_class->construct = construct;
service_class->get_name = get_name;
@@ -86,22 +84,9 @@ spool_store_class_init (CamelSpoolStoreClass *class)
local_store_class->get_meta_path = spool_get_meta_path;
}
-GType
-camel_spool_store_get_type (void)
+static void
+camel_spool_store_init (CamelSpoolStore *spool_store)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_MBOX_STORE,
- "CamelSpoolStore",
- sizeof (CamelSpoolStoreClass),
- (GClassInitFunc) spool_store_class_init,
- sizeof (CamelSpoolStore),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
static gboolean
@@ -118,7 +103,7 @@ construct (CamelService *service,
G_OBJECT_CLASS_NAME(((CamelObject *)service)->s.type), url->protocol, url->path));
/* Chain up to parent's construct() method. */
- service_class = CAMEL_SERVICE_CLASS (parent_class);
+ service_class = CAMEL_SERVICE_CLASS (camel_spool_store_parent_class);
if (!service_class->construct (service, session, provider, url, error))
return FALSE;
diff --git a/camel/providers/local/camel-spool-summary.c b/camel/providers/local/camel-spool-summary.c
index 19ab96d..bd08422 100644
--- a/camel/providers/local/camel-spool-summary.c
+++ b/camel/providers/local/camel-spool-summary.c
@@ -48,16 +48,14 @@ static gint spool_summary_check(CamelLocalSummary *cls, CamelFolderChangeInfo *c
static gint spool_summary_sync_full(CamelMboxSummary *cls, gboolean expunge, CamelFolderChangeInfo *changeinfo, GError **error);
static gint spool_summary_need_index(void);
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelSpoolSummary, camel_spool_summary, CAMEL_TYPE_MBOX_SUMMARY)
static void
-spool_summary_class_init (CamelSpoolSummaryClass *class)
+camel_spool_summary_class_init (CamelSpoolSummaryClass *class)
{
CamelLocalSummaryClass *local_summary_class;
CamelMboxSummaryClass *mbox_summary_class;
- parent_class = g_type_class_peek_parent (class);
-
local_summary_class = CAMEL_LOCAL_SUMMARY_CLASS (class);
local_summary_class->load = spool_summary_load;
local_summary_class->check = spool_summary_check;
@@ -68,7 +66,7 @@ spool_summary_class_init (CamelSpoolSummaryClass *class)
}
static void
-spool_summary_init(CamelSpoolSummary *spool_summary)
+camel_spool_summary_init(CamelSpoolSummary *spool_summary)
{
CamelFolderSummary *folder_summary;
@@ -80,24 +78,6 @@ spool_summary_init(CamelSpoolSummary *spool_summary)
folder_summary->version += CAMEL_SPOOL_SUMMARY_VERSION;
}
-GType
-camel_spool_summary_get_type(void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_MBOX_SUMMARY,
- "CamelSpoolSummary",
- sizeof (CamelSpoolSummaryClass),
- (GClassInitFunc) spool_summary_class_init,
- sizeof (CamelSpoolSummary),
- (GInstanceInitFunc) spool_summary_init,
- 0);
-
- return type;
-}
-
CamelSpoolSummary *
camel_spool_summary_new (CamelFolder *folder,
const gchar *mbox_name)
@@ -325,7 +305,7 @@ spool_summary_check (CamelLocalSummary *cls,
struct stat st;
CamelFolderSummary *s = (CamelFolderSummary *)cls;
- if (CAMEL_LOCAL_SUMMARY_CLASS (parent_class)->check(cls, changeinfo, error) == -1)
+ if (CAMEL_LOCAL_SUMMARY_CLASS (camel_spool_summary_parent_class)->check(cls, changeinfo, error) == -1)
return -1;
/* check to see if we need to copy/update the file; missing xev headers prompt this */
diff --git a/camel/providers/nntp/camel-nntp-folder.c b/camel/providers/nntp/camel-nntp-folder.c
index 6fba7af..cc740f3 100644
--- a/camel/providers/nntp/camel-nntp-folder.c
+++ b/camel/providers/nntp/camel-nntp-folder.c
@@ -47,7 +47,7 @@
(G_TYPE_INSTANCE_GET_PRIVATE \
((obj), CAMEL_TYPE_NNTP_FOLDER, CamelNNTPFolderPrivate))
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelNNTPFolder, camel_nntp_folder, CAMEL_TYPE_DISCO_FOLDER)
static void
nntp_folder_finalize (GObject *object)
@@ -61,7 +61,7 @@ nntp_folder_finalize (GObject *object)
g_mutex_free (nntp_folder->priv->cache_lock);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_nntp_folder_parent_class)->finalize (object);
}
gboolean
@@ -481,23 +481,12 @@ nntp_folder_transfer_message (CamelFolder *source,
}
static void
-nntp_folder_init (CamelNNTPFolder *nntp_folder)
-{
- nntp_folder->priv = CAMEL_NNTP_FOLDER_GET_PRIVATE (nntp_folder);
-
- nntp_folder->changes = camel_folder_change_info_new ();
- nntp_folder->priv->search_lock = g_mutex_new ();
- nntp_folder->priv->cache_lock = g_mutex_new ();
-}
-
-static void
-nntp_folder_class_init (CamelNNTPFolderClass *class)
+camel_nntp_folder_class_init (CamelNNTPFolderClass *class)
{
GObjectClass *object_class;
CamelFolderClass *folder_class;
CamelDiscoFolderClass *disco_folder_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelNNTPFolderPrivate));
folder_class = CAMEL_FOLDER_CLASS (g_type_class_peek (CAMEL_TYPE_FOLDER));
@@ -527,22 +516,14 @@ nntp_folder_class_init (CamelNNTPFolderClass *class)
disco_folder_class->refresh_info_online = nntp_folder_refresh_info_online;
}
-GType
-camel_nntp_folder_get_type (void)
+static void
+camel_nntp_folder_init (CamelNNTPFolder *nntp_folder)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_DISCO_FOLDER,
- "CamelNNTPFolder",
- sizeof (CamelNNTPFolderClass),
- (GClassInitFunc) nntp_folder_class_init,
- sizeof (CamelNNTPFolder),
- (GInstanceInitFunc) nntp_folder_init,
- 0);
-
- return type;
+ nntp_folder->priv = CAMEL_NNTP_FOLDER_GET_PRIVATE (nntp_folder);
+
+ nntp_folder->changes = camel_folder_change_info_new ();
+ nntp_folder->priv->search_lock = g_mutex_new ();
+ nntp_folder->priv->cache_lock = g_mutex_new ();
}
CamelFolder *
diff --git a/camel/providers/nntp/camel-nntp-store-summary.c b/camel/providers/nntp/camel-nntp-store-summary.c
index 84ac5cb..ee5c1f8 100644
--- a/camel/providers/nntp/camel-nntp-store-summary.c
+++ b/camel/providers/nntp/camel-nntp-store-summary.c
@@ -51,15 +51,13 @@ static void store_info_free(CamelStoreSummary *, CamelStoreInfo *);
static const gchar *store_info_string(CamelStoreSummary *, const CamelStoreInfo *, gint);
static void store_info_set_string(CamelStoreSummary *, CamelStoreInfo *, int, const gchar *);
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelNNTPStoreSummary, camel_nntp_store_summary, CAMEL_TYPE_STORE_SUMMARY)
static void
-nntp_store_summary_class_init (CamelNNTPStoreSummaryClass *class)
+camel_nntp_store_summary_class_init (CamelNNTPStoreSummaryClass *class)
{
CamelStoreSummaryClass *store_summary_class;
- parent_class = g_type_class_peek_parent (class);
-
store_summary_class = CAMEL_STORE_SUMMARY_CLASS (class);
store_summary_class->summary_header_load = summary_header_load;
store_summary_class->summary_header_save = summary_header_save;
@@ -71,7 +69,7 @@ nntp_store_summary_class_init (CamelNNTPStoreSummaryClass *class)
}
static void
-nntp_store_summary_init (CamelNNTPStoreSummary *nntp_store_summary)
+camel_nntp_store_summary_init (CamelNNTPStoreSummary *nntp_store_summary)
{
CamelStoreSummary *store_summary;
@@ -85,24 +83,6 @@ nntp_store_summary_init (CamelNNTPStoreSummary *nntp_store_summary)
sizeof (nntp_store_summary->last_newslist));
}
-GType
-camel_nntp_store_summary_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_STORE_SUMMARY,
- "CamelNNTPStoreSummary",
- sizeof (CamelNNTPStoreSummaryClass),
- (GClassInitFunc) nntp_store_summary_class_init,
- sizeof (CamelNNTPStoreSummary),
- (GInstanceInitFunc) nntp_store_summary_init,
- 0);
-
- return type;
-}
-
/**
* camel_nntp_store_summary_new:
*
@@ -298,7 +278,7 @@ summary_header_load (CamelStoreSummary *s, FILE *in)
CamelNNTPStoreSummary *is = (CamelNNTPStoreSummary *) s;
gint32 version, nil;
- if (CAMEL_STORE_SUMMARY_CLASS (parent_class)->summary_header_load ((CamelStoreSummary *) s, in) == -1
+ if (CAMEL_STORE_SUMMARY_CLASS (camel_nntp_store_summary_parent_class)->summary_header_load ((CamelStoreSummary *) s, in) == -1
|| camel_file_util_decode_fixed_int32 (in, &version) == -1)
return -1;
@@ -323,7 +303,7 @@ summary_header_save (CamelStoreSummary *s, FILE *out)
CamelNNTPStoreSummary *is = (CamelNNTPStoreSummary *) s;
/* always write as latest version */
- if (CAMEL_STORE_SUMMARY_CLASS (parent_class)->summary_header_save ((CamelStoreSummary *) s, out) == -1
+ if (CAMEL_STORE_SUMMARY_CLASS (camel_nntp_store_summary_parent_class)->summary_header_save ((CamelStoreSummary *) s, out) == -1
|| camel_file_util_encode_fixed_int32 (out, CAMEL_NNTP_STORE_SUMMARY_VERSION) == -1
|| fwrite (is->last_newslist, 1, NNTP_DATE_SIZE, out) < NNTP_DATE_SIZE
|| camel_file_util_encode_fixed_int32 (out, 0) == -1)
@@ -337,7 +317,7 @@ store_info_load (CamelStoreSummary *s, FILE *in)
{
CamelNNTPStoreInfo *ni;
- ni = (CamelNNTPStoreInfo *) CAMEL_STORE_SUMMARY_CLASS (parent_class)->store_info_load (s, in);
+ ni = (CamelNNTPStoreInfo *) CAMEL_STORE_SUMMARY_CLASS (camel_nntp_store_summary_parent_class)->store_info_load (s, in);
if (ni) {
if (camel_file_util_decode_string (in, &ni->full_name) == -1) {
camel_store_summary_info_free (s, (CamelStoreInfo *) ni);
@@ -361,7 +341,7 @@ store_info_save (CamelStoreSummary *s, FILE *out, CamelStoreInfo *mi)
{
CamelNNTPStoreInfo *isi = (CamelNNTPStoreInfo *)mi;
- if (CAMEL_STORE_SUMMARY_CLASS (parent_class)->store_info_save (s, out, mi) == -1
+ if (CAMEL_STORE_SUMMARY_CLASS (camel_nntp_store_summary_parent_class)->store_info_save (s, out, mi) == -1
|| camel_file_util_encode_string (out, isi->full_name) == -1
|| camel_file_util_encode_uint32(out, isi->first) == -1
|| camel_file_util_encode_uint32(out, isi->last) == -1)
@@ -376,7 +356,7 @@ store_info_free (CamelStoreSummary *s, CamelStoreInfo *mi)
CamelNNTPStoreInfo *nsi = (CamelNNTPStoreInfo *) mi;
g_free (nsi->full_name);
- CAMEL_STORE_SUMMARY_CLASS (parent_class)->store_info_free (s, mi);
+ CAMEL_STORE_SUMMARY_CLASS (camel_nntp_store_summary_parent_class)->store_info_free (s, mi);
}
static const gchar *
@@ -392,7 +372,7 @@ store_info_string(CamelStoreSummary *s, const CamelStoreInfo *mi, gint type)
case CAMEL_NNTP_STORE_INFO_FULL_NAME:
return nsi->full_name;
default:
- return CAMEL_STORE_SUMMARY_CLASS (parent_class)->store_info_string(s, mi, type);
+ return CAMEL_STORE_SUMMARY_CLASS (camel_nntp_store_summary_parent_class)->store_info_string(s, mi, type);
}
}
@@ -412,7 +392,7 @@ store_info_set_string(CamelStoreSummary *s, CamelStoreInfo *mi, gint type, const
CAMEL_STORE_SUMMARY_UNLOCK(s, summary_lock);
break;
default:
- CAMEL_STORE_SUMMARY_CLASS (parent_class)->store_info_set_string (s, mi, type, str);
+ CAMEL_STORE_SUMMARY_CLASS (camel_nntp_store_summary_parent_class)->store_info_set_string (s, mi, type, str);
break;
}
}
diff --git a/camel/providers/nntp/camel-nntp-store.c b/camel/providers/nntp/camel-nntp-store.c
index 29d55c9..25c00e2 100644
--- a/camel/providers/nntp/camel-nntp-store.c
+++ b/camel/providers/nntp/camel-nntp-store.c
@@ -55,10 +55,10 @@
(G_TYPE_INSTANCE_GET_PRIVATE \
((obj), CAMEL_TYPE_NNTP_STORE, CamelNNTPStorePrivate))
-static gpointer parent_class;
-
static gint camel_nntp_try_authenticate (CamelNNTPStore *store, GError **error);
+G_DEFINE_TYPE (CamelNNTPStore, camel_nntp_store, CAMEL_TYPE_DISCO_STORE)
+
static void
nntp_store_dispose (GObject *object)
{
@@ -97,7 +97,7 @@ nntp_store_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_nntp_store_parent_class)->dispose (object);
}
static void
@@ -117,7 +117,7 @@ nntp_store_finalize (GObject *object)
}
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_nntp_store_parent_class)->finalize (object);
}
static gboolean
@@ -403,7 +403,7 @@ nntp_disconnect_online (CamelService *service, gboolean clean, GError **error)
CamelServiceClass *service_class;
gchar *line;
- service_class = CAMEL_SERVICE_CLASS (parent_class);
+ service_class = CAMEL_SERVICE_CLASS (camel_nntp_store_parent_class);
CAMEL_SERVICE_REC_LOCK(store, connect_lock);
@@ -433,7 +433,7 @@ nntp_disconnect_offline (CamelService *service, gboolean clean, GError **error)
CamelServiceClass *service_class;
/* Chain up to parent's disconnect() method. */
- service_class = CAMEL_SERVICE_CLASS (parent_class);
+ service_class = CAMEL_SERVICE_CLASS (camel_nntp_store_parent_class);
if (!service_class->disconnect (service, clean, error))
return FALSE;
@@ -1079,7 +1079,7 @@ nntp_construct (CamelService *service, CamelSession *session,
gchar *tmp;
/* construct the parent first */
- service_class = CAMEL_SERVICE_CLASS (parent_class);
+ service_class = CAMEL_SERVICE_CLASS (camel_nntp_store_parent_class);
if (!service_class->construct (service, session, provider, url, error))
return FALSE;
@@ -1126,14 +1126,13 @@ nntp_construct (CamelService *service, CamelSession *session,
}
static void
-nntp_store_class_init (CamelNNTPStoreClass *class)
+camel_nntp_store_class_init (CamelNNTPStoreClass *class)
{
GObjectClass *object_class;
CamelServiceClass *service_class;
CamelStoreClass *store_class;
CamelDiscoStoreClass *disco_store_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelNNTPStorePrivate));
object_class = G_OBJECT_CLASS (class);
@@ -1170,7 +1169,7 @@ nntp_store_class_init (CamelNNTPStoreClass *class)
}
static void
-nntp_store_init (CamelNNTPStore *nntp_store)
+camel_nntp_store_init (CamelNNTPStore *nntp_store)
{
CamelStore *store = CAMEL_STORE (nntp_store);
@@ -1181,24 +1180,6 @@ nntp_store_init (CamelNNTPStore *nntp_store)
nntp_store->priv = CAMEL_NNTP_STORE_GET_PRIVATE (nntp_store);
}
-GType
-camel_nntp_store_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_DISCO_STORE,
- "CamelNNTPStore",
- sizeof (CamelNNTPStoreClass),
- (GClassInitFunc) nntp_store_class_init,
- sizeof (CamelNNTPStore),
- (GInstanceInitFunc) nntp_store_init,
- 0);
-
- return type;
-}
-
static gint
camel_nntp_try_authenticate (CamelNNTPStore *store, GError **error)
{
diff --git a/camel/providers/nntp/camel-nntp-stream.c b/camel/providers/nntp/camel-nntp-stream.c
index 6d5d5c0..46e10f1 100644
--- a/camel/providers/nntp/camel-nntp-stream.c
+++ b/camel/providers/nntp/camel-nntp-stream.c
@@ -36,11 +36,11 @@
#define ECONNRESET EIO
#endif
-static gpointer parent_class;
-
#define CAMEL_NNTP_STREAM_SIZE (4096)
#define CAMEL_NNTP_STREAM_LINE_SIZE (1024) /* maximum line size */
+G_DEFINE_TYPE (CamelNNTPStream, camel_nntp_stream, CAMEL_TYPE_STREAM)
+
static void
nntp_stream_dispose (GObject *object)
{
@@ -52,7 +52,7 @@ nntp_stream_dispose (GObject *object)
}
/* Chain up to parent's dispose () method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_nntp_stream_parent_class)->dispose (object);
}
static void
@@ -64,7 +64,7 @@ nntp_stream_finalize (GObject *object)
g_free (stream->linebuf);
/* Chain up to parent's finalize () method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_nntp_stream_parent_class)->finalize (object);
}
static gint
@@ -213,13 +213,11 @@ nntp_stream_reset (CamelStream *stream,
}
static void
-nntp_stream_class_init (CamelStreamClass *class)
+camel_nntp_stream_class_init (CamelNNTPStreamClass *class)
{
GObjectClass *object_class;
CamelStreamClass *stream_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->dispose = nntp_stream_dispose;
object_class->finalize = nntp_stream_finalize;
@@ -234,7 +232,7 @@ nntp_stream_class_init (CamelStreamClass *class)
}
static void
-nntp_stream_init (CamelNNTPStream *is)
+camel_nntp_stream_init (CamelNNTPStream *is)
{
/* +1 is room for appending a 0 if we need to for a line */
is->ptr = is->end = is->buf = g_malloc (CAMEL_NNTP_STREAM_SIZE+1);
@@ -248,24 +246,6 @@ nntp_stream_init (CamelNNTPStream *is)
is->mode = CAMEL_NNTP_STREAM_LINE;
}
-GType
-camel_nntp_stream_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_STREAM,
- "CamelNNTPStream",
- sizeof (CamelNNTPStreamClass),
- (GClassInitFunc) nntp_stream_class_init,
- sizeof (CamelNNTPStream),
- (GInstanceInitFunc) nntp_stream_init,
- 0);
-
- return type;
-}
-
/**
* camel_nntp_stream_new:
*
diff --git a/camel/providers/nntp/camel-nntp-summary.c b/camel/providers/nntp/camel-nntp-summary.c
index 5657c1c..c8215bc 100644
--- a/camel/providers/nntp/camel-nntp-summary.c
+++ b/camel/providers/nntp/camel-nntp-summary.c
@@ -64,14 +64,13 @@ static gint summary_header_save (CamelFolderSummary *, FILE *);
static gint summary_header_from_db (CamelFolderSummary *s, CamelFIRecord *mir);
static CamelFIRecord * summary_header_to_db (CamelFolderSummary *s, GError **error);
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelNNTPSummary, camel_nntp_summary, CAMEL_TYPE_FOLDER_SUMMARY)
static void
-nntp_summary_class_init (CamelNNTPSummaryClass *class)
+camel_nntp_summary_class_init (CamelNNTPSummaryClass *class)
{
CamelFolderSummaryClass *folder_summary_class;
- parent_class = g_type_class_peek_parent (class);
g_type_class_add_private (class, sizeof (CamelNNTPSummaryPrivate));
folder_summary_class = CAMEL_FOLDER_SUMMARY_CLASS (class);
@@ -85,7 +84,7 @@ nntp_summary_class_init (CamelNNTPSummaryClass *class)
}
static void
-nntp_summary_init (CamelNNTPSummary *nntp_summary)
+camel_nntp_summary_init (CamelNNTPSummary *nntp_summary)
{
CamelFolderSummary *summary = CAMEL_FOLDER_SUMMARY (nntp_summary);
@@ -95,24 +94,6 @@ nntp_summary_init (CamelNNTPSummary *nntp_summary)
summary->version += CAMEL_NNTP_SUMMARY_VERSION;
}
-GType
-camel_nntp_summary_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_FOLDER_SUMMARY,
- "CamelNNTPSummary",
- sizeof (CamelNNTPSummaryClass),
- (GClassInitFunc) nntp_summary_class_init,
- sizeof (CamelNNTPSummary),
- (GInstanceInitFunc) nntp_summary_init,
- 0);
-
- return type;
-}
-
CamelNNTPSummary *
camel_nntp_summary_new (struct _CamelFolder *folder, const gchar *path)
{
@@ -138,7 +119,7 @@ message_info_new_from_header (CamelFolderSummary *s,
if (cns->priv->uid == NULL)
return NULL;
- mi = (CamelMessageInfoBase *)CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->message_info_new_from_header (s, header_queue);
+ mi = (CamelMessageInfoBase *)CAMEL_FOLDER_SUMMARY_CLASS (camel_nntp_summary_parent_class)->message_info_new_from_header (s, header_queue);
if (mi) {
camel_pstring_free (mi->uid);
mi->uid = camel_pstring_strdup (cns->priv->uid);
@@ -155,7 +136,7 @@ summary_header_from_db (CamelFolderSummary *s, CamelFIRecord *mir)
CamelNNTPSummary *cns = CAMEL_NNTP_SUMMARY (s);
gchar *part;
- if (CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->summary_header_from_db (s, mir) == -1)
+ if (CAMEL_FOLDER_SUMMARY_CLASS (camel_nntp_summary_parent_class)->summary_header_from_db (s, mir) == -1)
return -1;
part = mir->bdata;
@@ -180,7 +161,7 @@ summary_header_load (CamelFolderSummary *s, FILE *in)
{
CamelNNTPSummary *cns = CAMEL_NNTP_SUMMARY (s);
- if (CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->summary_header_load (s, in) == -1)
+ if (CAMEL_FOLDER_SUMMARY_CLASS (camel_nntp_summary_parent_class)->summary_header_load (s, in) == -1)
return -1;
/* Legacy version */
@@ -211,7 +192,7 @@ summary_header_to_db (CamelFolderSummary *s, GError **error)
CamelNNTPSummary *cns = CAMEL_NNTP_SUMMARY (s);
struct _CamelFIRecord *fir;
- fir = CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->summary_header_to_db (s, error);
+ fir = CAMEL_FOLDER_SUMMARY_CLASS (camel_nntp_summary_parent_class)->summary_header_to_db (s, error);
if (!fir)
return NULL;
fir->bdata = g_strdup_printf ("%d %d %d", CAMEL_NNTP_SUMMARY_VERSION, cns->high, cns->low);
@@ -224,7 +205,7 @@ summary_header_save (CamelFolderSummary *s, FILE *out)
{
CamelNNTPSummary *cns = CAMEL_NNTP_SUMMARY (s);
- if (CAMEL_FOLDER_SUMMARY_CLASS (parent_class)->summary_header_save (s, out) == -1
+ if (CAMEL_FOLDER_SUMMARY_CLASS (camel_nntp_summary_parent_class)->summary_header_save (s, out) == -1
|| camel_file_util_encode_fixed_int32 (out, CAMEL_NNTP_SUMMARY_VERSION) == -1
|| camel_file_util_encode_fixed_int32 (out, cns->high) == -1
|| camel_file_util_encode_fixed_int32 (out, cns->low) == -1)
diff --git a/camel/providers/pop3/camel-pop3-engine.c b/camel/providers/pop3/camel-pop3-engine.c
index 2d35bbf..8d4b936 100644
--- a/camel/providers/pop3/camel-pop3-engine.c
+++ b/camel/providers/pop3/camel-pop3-engine.c
@@ -44,7 +44,7 @@ extern CamelServiceAuthType camel_pop3_apop_authtype;
static void get_capabilities(CamelPOP3Engine *pe);
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelPOP3Engine, camel_pop3_engine, CAMEL_TYPE_OBJECT)
static void
pop3_engine_dispose (GObject *object)
@@ -57,7 +57,7 @@ pop3_engine_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_pop3_engine_parent_class)->dispose (object);
}
static void
@@ -71,7 +71,7 @@ pop3_engine_finalize (GObject *object)
g_free (engine->apop);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_pop3_engine_parent_class)->finalize (object);
}
static void
@@ -79,8 +79,6 @@ camel_pop3_engine_class_init (CamelPOP3EngineClass *class)
{
GObjectClass *object_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->dispose = pop3_engine_dispose;
object_class->finalize = pop3_engine_finalize;
@@ -95,24 +93,6 @@ camel_pop3_engine_init (CamelPOP3Engine *engine)
engine->state = CAMEL_POP3_ENGINE_DISCONNECT;
}
-GType
-camel_pop3_engine_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_OBJECT,
- "CamelPOP3Engine",
- sizeof (CamelPOP3EngineClass),
- (GClassInitFunc) camel_pop3_engine_class_init,
- sizeof (CamelPOP3Engine),
- (GInstanceInitFunc) camel_pop3_engine_init,
- 0);
-
- return type;
-}
-
static gint
read_greeting (CamelPOP3Engine *pe)
{
diff --git a/camel/providers/pop3/camel-pop3-folder.c b/camel/providers/pop3/camel-pop3-folder.c
index ba5d1b0..dddfd10 100644
--- a/camel/providers/pop3/camel-pop3-folder.c
+++ b/camel/providers/pop3/camel-pop3-folder.c
@@ -38,8 +38,6 @@
#define d(x)
-static gpointer parent_class;
-
static gboolean pop3_refresh_info (CamelFolder *folder, GError **error);
static gboolean pop3_sync (CamelFolder *folder, gboolean expunge, GError **error);
static gint pop3_get_message_count (CamelFolder *folder);
@@ -48,6 +46,8 @@ static CamelMimeMessage *pop3_get_message (CamelFolder *folder, const gchar *uid
static gboolean pop3_set_message_flags (CamelFolder *folder, const gchar *uid, guint32 flags, guint32 set);
static gchar * pop3_get_filename (CamelFolder *folder, const gchar *uid, GError **error);
+G_DEFINE_TYPE (CamelPOP3Folder, camel_pop3_folder, CAMEL_TYPE_FOLDER)
+
static void
pop3_folder_finalize (GObject *object)
{
@@ -73,7 +73,7 @@ pop3_folder_finalize (GObject *object)
}
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_pop3_folder_parent_class)->finalize (object);
}
static void
@@ -82,8 +82,6 @@ camel_pop3_folder_class_init (CamelPOP3FolderClass *class)
GObjectClass *object_class;
CamelFolderClass *folder_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->finalize = pop3_folder_finalize;
@@ -98,22 +96,9 @@ camel_pop3_folder_class_init (CamelPOP3FolderClass *class)
folder_class->set_message_flags = pop3_set_message_flags;
}
-GType
-camel_pop3_folder_get_type (void)
+static void
+camel_pop3_folder_init (CamelPOP3Folder *pop3_folder)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_FOLDER,
- "CamelPOP3Folder",
- sizeof (CamelPOP3FolderClass),
- (GClassInitFunc) camel_pop3_folder_class_init,
- sizeof (CamelPOP3Folder),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
CamelFolder *
diff --git a/camel/providers/pop3/camel-pop3-store.c b/camel/providers/pop3/camel-pop3-store.c
index 3602534..333ed33 100644
--- a/camel/providers/pop3/camel-pop3-store.c
+++ b/camel/providers/pop3/camel-pop3-store.c
@@ -47,8 +47,6 @@
/* defines the length of the server error message we can display in the error dialog */
#define POP3_ERROR_SIZE_LIMIT 60
-static gpointer parent_class;
-
static gboolean pop3_connect (CamelService *service, GError **error);
static gboolean pop3_disconnect (CamelService *service, gboolean clean, GError **error);
static GList *query_auth_types (CamelService *service, GError **error);
@@ -60,6 +58,8 @@ static CamelFolder *get_trash (CamelStore *store, GError **error);
static gboolean pop3_can_refresh_folder (CamelStore *store, CamelFolderInfo *info, GError **error);
+G_DEFINE_TYPE (CamelPOP3Store, camel_pop3_store, CAMEL_TYPE_STORE)
+
static void
pop3_store_finalize (GObject *object)
{
@@ -76,18 +76,16 @@ pop3_store_finalize (GObject *object)
g_object_unref (pop3_store->cache);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_pop3_store_parent_class)->finalize (object);
}
static void
-pop3_store_class_init (CamelPOP3StoreClass *class)
+camel_pop3_store_class_init (CamelPOP3StoreClass *class)
{
GObjectClass *object_class;
CamelServiceClass *service_class;
CamelStoreClass *store_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->finalize = pop3_store_finalize;
@@ -102,22 +100,9 @@ pop3_store_class_init (CamelPOP3StoreClass *class)
store_class->can_refresh_folder = pop3_can_refresh_folder;
}
-GType
-camel_pop3_store_get_type (void)
+static void
+camel_pop3_store_init (CamelPOP3Store *pop3_store)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_STORE,
- "CamelPOP3Store",
- sizeof (CamelPOP3StoreClass),
- (GClassInitFunc) pop3_store_class_init,
- sizeof (CamelPOP3Store),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
enum {
@@ -193,7 +178,7 @@ connect_to_server (CamelService *service,
}
/* parent class connect initialization */
- if (CAMEL_SERVICE_CLASS (parent_class)->connect (service, error) == FALSE) {
+ if (CAMEL_SERVICE_CLASS (camel_pop3_store_parent_class)->connect (service, error) == FALSE) {
g_object_unref (tcp_stream);
return FALSE;
}
@@ -368,7 +353,7 @@ query_auth_types (CamelService *service,
GError *local_error = NULL;
/* Chain up to parent's query_auth_types() method. */
- service_class = CAMEL_SERVICE_CLASS (parent_class);
+ service_class = CAMEL_SERVICE_CLASS (camel_pop3_store_parent_class);
types = service_class->query_auth_types (service, &local_error);
if (local_error != NULL) {
@@ -726,7 +711,7 @@ pop3_disconnect (CamelService *service,
}
/* Chain up to parent's disconnect() method. */
- service_class = CAMEL_SERVICE_CLASS (parent_class);
+ service_class = CAMEL_SERVICE_CLASS (camel_pop3_store_parent_class);
if (!service_class->disconnect (service, clean, error))
return FALSE;
diff --git a/camel/providers/pop3/camel-pop3-stream.c b/camel/providers/pop3/camel-pop3-stream.c
index 780e651..bca4fdd 100644
--- a/camel/providers/pop3/camel-pop3-stream.c
+++ b/camel/providers/pop3/camel-pop3-stream.c
@@ -35,11 +35,11 @@
#define dd(x) (camel_verbose_debug?(x):0)
-static gpointer parent_class;
-
#define CAMEL_POP3_STREAM_SIZE (4096)
#define CAMEL_POP3_STREAM_LINE (1024) /* maximum line size */
+G_DEFINE_TYPE (CamelPOP3Stream, camel_pop3_stream, CAMEL_TYPE_STREAM)
+
static void
pop3_stream_dispose (GObject *object)
{
@@ -51,7 +51,7 @@ pop3_stream_dispose (GObject *object)
}
/* Chain up to parent's dispose() method. */
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (camel_pop3_stream_parent_class)->dispose (object);
}
static void
@@ -63,7 +63,7 @@ pop3_stream_finalize (GObject *object)
g_free (stream->linebuf);
/* Chain up to parent's finalize() method. */
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (camel_pop3_stream_parent_class)->finalize (object);
}
static gint
@@ -213,13 +213,11 @@ stream_reset (CamelStream *stream,
}
static void
-pop3_stream_class_init (CamelStreamClass *class)
+camel_pop3_stream_class_init (CamelPOP3StreamClass *class)
{
GObjectClass *object_class;
CamelStreamClass *stream_class;
- parent_class = g_type_class_peek_parent (class);
-
object_class = G_OBJECT_CLASS (class);
object_class->dispose = pop3_stream_dispose;
object_class->finalize = pop3_stream_finalize;
@@ -234,7 +232,7 @@ pop3_stream_class_init (CamelStreamClass *class)
}
static void
-pop3_stream_init (CamelPOP3Stream *is)
+camel_pop3_stream_init (CamelPOP3Stream *is)
{
/* +1 is room for appending a 0 if we need to for a line */
is->ptr = is->end = is->buf = g_malloc (CAMEL_POP3_STREAM_SIZE+1);
@@ -248,24 +246,6 @@ pop3_stream_init (CamelPOP3Stream *is)
is->mode = CAMEL_POP3_STREAM_LINE;
}
-GType
-camel_pop3_stream_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_STREAM,
- "CamelPOP3Stream",
- sizeof (CamelPOP3StreamClass),
- (GClassInitFunc) pop3_stream_class_init,
- sizeof (CamelPOP3Stream),
- (GInstanceInitFunc) pop3_stream_init,
- 0);
-
- return type;
-}
-
/**
* camel_pop3_stream_new:
*
diff --git a/camel/providers/sendmail/camel-sendmail-transport.c b/camel/providers/sendmail/camel-sendmail-transport.c
index 7760ef9..dbb082a 100644
--- a/camel/providers/sendmail/camel-sendmail-transport.c
+++ b/camel/providers/sendmail/camel-sendmail-transport.c
@@ -44,8 +44,10 @@ static gboolean sendmail_send_to (CamelTransport *transport,
CamelAddress *from, CamelAddress *recipients,
GError **error);
+G_DEFINE_TYPE (CamelSendmailTransport, camel_sendmail_transport, CAMEL_TYPE_TRANSPORT)
+
static void
-sendmail_transport_class_init (CamelSendmailTransportClass *class)
+camel_sendmail_transport_class_init (CamelSendmailTransportClass *class)
{
CamelServiceClass *service_class;
CamelTransportClass *transport_class;
@@ -57,22 +59,9 @@ sendmail_transport_class_init (CamelSendmailTransportClass *class)
transport_class->send_to = sendmail_send_to;
}
-GType
-camel_sendmail_transport_get_type (void)
+static void
+camel_sendmail_transport_init (CamelSendmailTransport *sendmail_transport)
{
- static GType type = G_TYPE_INVALID;
-
- if (type == G_TYPE_INVALID)
- type = g_type_register_static_simple (
- CAMEL_TYPE_TRANSPORT,
- "CamelSendmailTransport",
- sizeof (CamelSendmailTransportClass),
- (GClassInitFunc) sendmail_transport_class_init,
- sizeof (CamelSendmailTransport),
- (GInstanceInitFunc) NULL,
- 0);
-
- return type;
}
static gboolean
diff --git a/camel/providers/smtp/camel-smtp-transport.c b/camel/providers/smtp/camel-smtp-transport.c
index 413b171..d824651 100644
--- a/camel/providers/smtp/camel-smtp-transport.c
+++ b/camel/providers/smtp/camel-smtp-transport.c
@@ -70,16 +70,14 @@ static gboolean smtp_quit (CamelSmtpTransport *transport, GError **error);
static void smtp_set_exception (CamelSmtpTransport *transport, gboolean disconnect, const gchar *respbuf,
const gchar *message, GError **error);
-static gpointer parent_class;
+G_DEFINE_TYPE (CamelSmtpTransport, camel_smtp_transport, CAMEL_TYPE_TRANSPORT)
static void
-smtp_transport_class_init (CamelSmtpTransportClass *class)
+camel_smtp_transport_class_init (CamelSmtpTransportClass *class)
{
CamelTransportClass *transport_class;
CamelServiceClass *service_class;
- parent_class = g_type_class_peek_parent (class);
-
service_class = CAMEL_SERVICE_CLASS (class);
service_class->connect = smtp_connect;
service_class->disconnect = smtp_disconnect;
@@ -91,30 +89,12 @@ smtp_transport_class_init (CamelSmtpTransportClass *class)
}
static void
-smtp_transport_init (CamelSmtpTransport *smtp)
+camel_smtp_transport_init (CamelSmtpTransport *smtp)
{
smtp->flags = 0;
smtp->connected = FALSE;
}
-GType
-camel_smtp_transport_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_TRANSPORT,
- "CamelSmtpTransport",
- sizeof (CamelSmtpTransportClass),
- (GClassInitFunc) smtp_transport_class_init,
- sizeof (CamelSmtpTransport),
- (GInstanceInitFunc) smtp_transport_init,
- 0);
-
- return type;
-}
-
static const gchar *
smtp_error_string (gint error)
{
@@ -206,7 +186,7 @@ connect_to_server (CamelService *service,
gchar *respbuf = NULL;
gint ret;
- if (!CAMEL_SERVICE_CLASS (parent_class)->connect (service, error))
+ if (!CAMEL_SERVICE_CLASS (camel_smtp_transport_parent_class)->connect (service, error))
return FALSE;
/* set some smtp transport defaults */
@@ -592,7 +572,7 @@ smtp_disconnect (CamelService *service,
}
/* Chain up to parent's disconnect() method. */
- service_class = CAMEL_SERVICE_CLASS (parent_class);
+ service_class = CAMEL_SERVICE_CLASS (camel_smtp_transport_parent_class);
if (!service_class->disconnect (service, clean, error))
return FALSE;
diff --git a/camel/tests/lib/session.c b/camel/tests/lib/session.c
index 1a87069..b155069 100644
--- a/camel/tests/lib/session.c
+++ b/camel/tests/lib/session.c
@@ -4,22 +4,16 @@
#include "session.h"
-GType
-camel_test_session_get_type (void)
-{
- static GType type = G_TYPE_INVALID;
+G_DEFINE_TYPE (CamelTestSession, camel_test_session, CAMEL_TYPE_SESSION)
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- CAMEL_TYPE_SESSION,
- "CamelTestSession",
- sizeof (CamelTestSessionClass),
- (GClassInitFunc) NULL,
- sizeof (CamelTestSession),
- (GInstanceInitFunc) NULL,
- 0);
+static void
+camel_test_session_class_init (CamelTestSessionClass *class)
+{
+}
- return type;
+static void
+camel_test_session_init (CamelTestSession *test_session)
+{
}
CamelSession *
diff --git a/camel/tests/smime/pgp.c b/camel/tests/smime/pgp.c
index 7fa4fc6..a5f07c3 100644
--- a/camel/tests/smime/pgp.c
+++ b/camel/tests/smime/pgp.c
@@ -54,37 +54,20 @@ static gchar *get_password (CamelSession *session, const gchar *prompt,
CamelService *service, const gchar *item,
GError **error);
-static void
-init (CamelPgpSession *session)
-{
- ;
-}
+G_DEFINE_TYPE (CamelPgpSession, camel_pgp_session, camel_test_session_get_type ())
static void
-class_init (CamelPgpSessionClass *camel_pgp_session_class)
+camel_pgp_session_class_init (CamelPgpSessionClass *class)
{
- CamelSessionClass *camel_session_class =
- CAMEL_SESSION_CLASS (camel_pgp_session_class);
+ CamelSessionClass *session_class;
+ session_class = CAMEL_SESSION_CLASS (class);
camel_session_class->get_password = get_password;
}
-static GType
-camel_pgp_session_get_type (void)
+static void
+camel_pgp_session_init (CamelPgpSession *session)
{
- static GType type = G_TYPE_INVALID;
-
- if (G_UNLIKELY (type == G_TYPE_INVALID))
- type = g_type_register_static_simple (
- camel_test_session_get_type (),
- "CamelPgpSession",
- sizeof (CamelPgpSessionClass),
- (GClassInitFunc) class_init,
- sizeof (CamelPgpSession),
- (GInstanceInitFunc) init,
- 0);
-
- return type;
}
static gchar *
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]