[gnome-calendar/wip/gbsneto/final-classes: 4/9] manager: turn into a final class



commit 80b03531f2b99b630c466be266e2c0ee716dcd34
Author: Georges Basile Stavracas Neto <georges stavracas gmail com>
Date:   Tue Jan 19 19:31:04 2016 -0200

    manager: turn into a final class

 src/gcal-manager.c |  414 ++++++++++++++++++++--------------------------------
 src/gcal-manager.h |   29 +----
 2 files changed, 158 insertions(+), 285 deletions(-)
---
diff --git a/src/gcal-manager.c b/src/gcal-manager.c
index b9b27ab..30790e3 100644
--- a/src/gcal-manager.c
+++ b/src/gcal-manager.c
@@ -47,8 +47,10 @@ typedef struct
   gboolean        connected;
 } GcalManagerUnit;
 
-typedef struct
+struct _GcalManager
 {
+  GObject          parent;
+
   /**
    * The list of clients we are managing.
    * Each value is of type GCalStoreUnit
@@ -79,7 +81,7 @@ typedef struct
 
   /* property */
   GSettings       *settings;
-} GcalManagerPrivate;
+};
 
 struct _MoveEventData
 {
@@ -162,7 +164,7 @@ static void     gcal_manager_get_property                 (GObject         *obje
                                                            GValue          *value,
                                                            GParamSpec      *pspec);
 
-G_DEFINE_TYPE_WITH_PRIVATE (GcalManager, gcal_manager, G_TYPE_OBJECT)
+G_DEFINE_TYPE (GcalManager, gcal_manager, G_TYPE_OBJECT)
 
 /* -- start: threading related code provided by Milan Crha */
 typedef struct {
@@ -292,11 +294,7 @@ static void
 load_source (GcalManager *manager,
              ESource     *source)
 {
-  GcalManagerPrivate *priv;
-
-  priv = gcal_manager_get_instance_private (manager);
-
-  if (g_hash_table_lookup (priv->clients, source) == NULL &&
+  if (g_hash_table_lookup (manager->clients, source) == NULL &&
       e_source_has_extension (source, E_SOURCE_EXTENSION_CALENDAR))
     {
       /* NULL: because maybe the operation cannot be really cancelled */
@@ -318,19 +316,19 @@ on_client_connected (GObject      *source_object,
                      GAsyncResult *result,
                      gpointer      user_data)
 {
+  GcalManager *manager;
   ECalClient *client;
-  GcalManagerPrivate *priv;
   GError *error;
 
   ESource *source;
 
   GcalManagerUnit *unit;
 
-  priv = gcal_manager_get_instance_private (GCAL_MANAGER (user_data));
+  manager = GCAL_MANAGER (user_data);
   source = e_client_get_source (E_CLIENT (source_object));
 
-  priv->sources_at_launch--;
-  if (priv->sources_at_launch == 0)
+  manager->sources_at_launch--;
+  if (manager->sources_at_launch == 0)
     g_signal_emit (user_data, signals[LOAD_COMPLETED], 0);
 
   error = NULL;
@@ -341,7 +339,7 @@ on_client_connected (GObject      *source_object,
       unit->connected = TRUE;
       unit->client = g_object_ref (client);
 
-      g_hash_table_insert (priv->clients, source, unit);
+      g_hash_table_insert (manager->clients, source, unit);
 
       g_debug ("Source %s (%s) connected",
                e_source_get_display_name (source),
@@ -350,7 +348,7 @@ on_client_connected (GObject      *source_object,
       /* notify the readonly property */
       g_signal_connect (client, "notify::readonly", G_CALLBACK (on_client_readonly_changed), user_data);
 
-      if (g_strv_contains ((const gchar * const *) priv->disabled_sources, e_source_get_uid (source)))
+      if (g_strv_contains ((const gchar * const *) manager->disabled_sources, e_source_get_uid (source)))
         {
           unit->enabled = FALSE;
         }
@@ -358,10 +356,10 @@ on_client_connected (GObject      *source_object,
         {
           unit->enabled = TRUE;
 
-          e_cal_data_model_add_client (priv->e_data_model, client);
-          e_cal_data_model_add_client (priv->search_data_model, client);
-          if (priv->shell_search_data_model != NULL)
-            e_cal_data_model_add_client (priv->shell_search_data_model, client);
+          e_cal_data_model_add_client (manager->e_data_model, client);
+          e_cal_data_model_add_client (manager->search_data_model, client);
+          if (manager->shell_search_data_model != NULL)
+            e_cal_data_model_add_client (manager->shell_search_data_model, client);
         }
 
       /* refresh client when it's added */
@@ -394,14 +392,14 @@ on_client_readonly_changed (EClient    *client,
                             GParamSpec *pspec,
                             gpointer    user_data)
 {
-  GcalManagerPrivate *priv;
+  GcalManager *manager;
   ESource *source;
   GcalManagerUnit *unit;
 
-  priv = gcal_manager_get_instance_private (GCAL_MANAGER (user_data));
+  manager = GCAL_MANAGER (user_data);
   source = e_client_get_source (client);
 
-  unit = g_hash_table_lookup (priv->clients, source);
+  unit = g_hash_table_lookup (manager->clients, source);
   if (unit && unit->enabled)
     g_signal_emit (GCAL_MANAGER (user_data), signals[SOURCE_ACTIVATED], 0, source, !e_client_is_readonly 
(client));
 }
@@ -518,24 +516,21 @@ void
 remove_source (GcalManager  *manager,
                ESource      *source)
 {
-  GcalManagerPrivate *priv;
   GcalManagerUnit *unit;
 
   g_return_if_fail (GCAL_IS_MANAGER (manager));
   g_return_if_fail (E_IS_SOURCE (source));
 
-  priv = gcal_manager_get_instance_private (manager);
-
-  e_cal_data_model_remove_client (priv->e_data_model,
+  e_cal_data_model_remove_client (manager->e_data_model,
                                   e_source_get_uid (source));
-  e_cal_data_model_remove_client (priv->search_data_model,
+  e_cal_data_model_remove_client (manager->search_data_model,
                                   e_source_get_uid (source));
 
-  unit = g_hash_table_lookup (priv->clients, source);
+  unit = g_hash_table_lookup (manager->clients, source);
   if (unit && unit->client)
      g_signal_handlers_disconnect_by_data (unit->client, manager);
 
-  g_hash_table_remove (priv->clients, source);
+  g_hash_table_remove (manager->clients, source);
   g_signal_emit (manager, signals[SOURCE_REMOVED], 0, source);
 }
 
@@ -548,20 +543,20 @@ model_state_changed (GcalManager            *manager,
                      const GError           *error,
                      ECalDataModel          *data_model)
 {
-  GcalManagerPrivate *priv = gcal_manager_get_instance_private (manager);
   gchar *filter = e_cal_data_model_dup_filter (data_model);
-  if (state == E_CAL_DATA_MODEL_VIEW_STATE_START && g_strcmp0 (priv->search_view_data->query, filter) == 0)
+
+  if (state == E_CAL_DATA_MODEL_VIEW_STATE_START && g_strcmp0 (manager->search_view_data->query, filter) == 
0)
     {
-      priv->search_view_data->passed_start = TRUE;
+      manager->search_view_data->passed_start = TRUE;
       goto out;
     }
 
-  if (priv->search_view_data->passed_start && state == E_CAL_DATA_MODEL_VIEW_STATE_COMPLETE &&
-      g_strcmp0 (priv->search_view_data->query, filter) == 0)
+  if (manager->search_view_data->passed_start && state == E_CAL_DATA_MODEL_VIEW_STATE_COMPLETE &&
+      g_strcmp0 (manager->search_view_data->query, filter) == 0)
     {
-      priv->search_view_data->sources_left--;
-      priv->search_view_data->search_done = (priv->search_view_data->sources_left == 0);
-      if (priv->search_view_data->search_done)
+      manager->search_view_data->sources_left--;
+      manager->search_view_data->search_done = (manager->search_view_data->sources_left == 0);
+      if (manager->search_view_data->search_done)
         g_signal_emit (manager, signals[QUERY_COMPLETED], 0);
     }
 
@@ -627,13 +622,11 @@ source_credentials_required_cb (ESourceRegistry         *registry,
                                 const GError            *op_error,
                                 GcalManager             *manager)
 {
-  GcalManagerPrivate *priv;
   ECredentialsPrompter *credentials_prompter;
 
   g_return_if_fail (GCAL_IS_MANAGER (manager));
 
-  priv = gcal_manager_get_instance_private (manager);
-  credentials_prompter = priv->credentials_prompter;
+  credentials_prompter = manager->credentials_prompter;
 
   if (e_credentials_prompter_get_auto_prompt_disabled_for (credentials_prompter, source))
     return;
@@ -704,37 +697,37 @@ gcal_manager_class_init (GcalManagerClass *klass)
 
   /* signals */
   signals[SOURCE_ACTIVATED] = g_signal_new ("source-activated", GCAL_TYPE_MANAGER, G_SIGNAL_RUN_LAST,
-                                           G_STRUCT_OFFSET (GcalManagerClass, source_activated),
+                                           0,
                                            NULL, NULL, NULL,
                                            G_TYPE_NONE, 2, G_TYPE_POINTER, G_TYPE_BOOLEAN);
 
   signals[SOURCE_ADDED] = g_signal_new ("source-added", GCAL_TYPE_MANAGER, G_SIGNAL_RUN_LAST,
-                                        G_STRUCT_OFFSET (GcalManagerClass, source_added),
+                                        0,
                                         NULL, NULL, NULL,
                                         G_TYPE_NONE, 2, G_TYPE_POINTER, G_TYPE_BOOLEAN);
 
   signals[SOURCE_REMOVED] = g_signal_new ("source-removed", GCAL_TYPE_MANAGER, G_SIGNAL_RUN_LAST,
-                                          G_STRUCT_OFFSET (GcalManagerClass, source_removed),
+                                          0,
                                           NULL, NULL, NULL,
                                           G_TYPE_NONE, 1, G_TYPE_POINTER);
 
   signals[SOURCE_ENABLED] = g_signal_new ("source-enabled", GCAL_TYPE_MANAGER, G_SIGNAL_RUN_LAST,
-                                          G_STRUCT_OFFSET (GcalManagerClass, source_enabled),
+                                          0,
                                           NULL, NULL, NULL,
                                           G_TYPE_NONE, 2, E_TYPE_SOURCE, G_TYPE_BOOLEAN);
 
   signals[LOAD_COMPLETED] = g_signal_new ("load-completed", GCAL_TYPE_MANAGER, G_SIGNAL_RUN_LAST,
-                                          G_STRUCT_OFFSET (GcalManagerClass, load_completed),
+                                          0,
                                           NULL, NULL, NULL,
                                           G_TYPE_NONE, 0);
 
   signals[QUERY_COMPLETED] = g_signal_new ("query-completed", GCAL_TYPE_MANAGER, G_SIGNAL_RUN_LAST,
-                                           G_STRUCT_OFFSET (GcalManagerClass, query_completed),
+                                           0,
                                            NULL, NULL, NULL,
                                            G_TYPE_NONE, 0);
 
   signals[GOA_CLIENT_READY] = g_signal_new ("goa-client-ready", GCAL_TYPE_MANAGER, G_SIGNAL_RUN_LAST,
-                                            G_STRUCT_OFFSET (GcalManagerClass, goa_client_ready),
+                                            0,
                                             NULL, NULL, NULL,
                                             G_TYPE_NONE, 1, GOA_TYPE_CLIENT);
 }
@@ -744,13 +737,13 @@ gcal_manager_client_ready_cb (GObject      *source,
                               GAsyncResult *result,
                               gpointer      user_data)
 {
-  GcalManagerPrivate *priv = gcal_manager_get_instance_private (GCAL_MANAGER (user_data));
+  GcalManager *manager = GCAL_MANAGER (user_data);
   GError *error = NULL;
 
-  priv->goa_client = goa_client_new_finish (result, &error);
-  priv->goa_client_ready = TRUE;
+  manager->goa_client = goa_client_new_finish (result, &error);
+  manager->goa_client_ready = TRUE;
 
-  g_signal_emit (user_data, signals[GOA_CLIENT_READY], 0, priv->goa_client);
+  g_signal_emit (user_data, signals[GOA_CLIENT_READY], 0, manager->goa_client);
 
   if (error != NULL)
     {
@@ -771,7 +764,7 @@ gcal_manager_init (GcalManager *self)
 static void
 gcal_manager_constructed (GObject *object)
 {
-  GcalManagerPrivate *priv;
+  GcalManager *manager;
 
   GList *sources, *l;
   GError *error = NULL;
@@ -779,12 +772,12 @@ gcal_manager_constructed (GObject *object)
 
   G_OBJECT_CLASS (gcal_manager_parent_class)->constructed (object);
 
-  priv = gcal_manager_get_instance_private (GCAL_MANAGER (object));
+  manager = GCAL_MANAGER (object);
 
-  priv->disabled_sources = g_settings_get_strv (priv->settings, "disabled-sources");
-  priv->system_timezone = e_cal_util_get_system_timezone ();
+  manager->disabled_sources = g_settings_get_strv (manager->settings, "disabled-sources");
+  manager->system_timezone = e_cal_util_get_system_timezone ();
 
-  priv->clients = g_hash_table_new_full ((GHashFunc) e_source_hash, (GEqualFunc) e_source_equal,
+  manager->clients = g_hash_table_new_full ((GHashFunc) e_source_hash, (GEqualFunc) e_source_equal,
                                          g_object_unref, (GDestroyNotify) free_unit_data);
 
   /* load GOA client */
@@ -793,18 +786,18 @@ gcal_manager_constructed (GObject *object)
                   object);
 
   /* reading sources and schedule its connecting */
-  priv->source_registry = e_source_registry_new_sync (NULL, &error);
-  if (priv->source_registry == NULL)
+  manager->source_registry = e_source_registry_new_sync (NULL, &error);
+  if (manager->source_registry == NULL)
     {
       g_warning ("Failed to access calendar configuration: %s", error->message);
       g_error_free (error);
       return;
     }
 
-  priv->credentials_prompter = e_credentials_prompter_new (priv->source_registry);
+  manager->credentials_prompter = e_credentials_prompter_new (manager->source_registry);
 
   /* First disable credentials prompt for all but calendar sources... */
-  sources = e_source_registry_list_sources (priv->source_registry, NULL);
+  sources = e_source_registry_list_sources (manager->source_registry, NULL);
 
   for (l = sources; l != NULL; l = g_list_next (l))
     {
@@ -813,7 +806,7 @@ gcal_manager_constructed (GObject *object)
       /* Mark for skip also currently disabled sources */
       if (!e_source_has_extension (source, E_SOURCE_EXTENSION_CALENDAR) &&
           !e_source_has_extension (source, E_SOURCE_EXTENSION_COLLECTION))
-        e_credentials_prompter_set_auto_prompt_disabled_for (priv->credentials_prompter, source, TRUE);
+        e_credentials_prompter_set_auto_prompt_disabled_for (manager->credentials_prompter, source, TRUE);
       else
         e_source_get_last_credentials_required_arguments (source, NULL,
            source_get_last_credentials_required_arguments_cb, object);
@@ -821,11 +814,11 @@ gcal_manager_constructed (GObject *object)
 
   g_list_free_full (sources, g_object_unref);
 
-  credentials_provider = e_credentials_prompter_get_provider (priv->credentials_prompter);
+  credentials_provider = e_credentials_prompter_get_provider (manager->credentials_prompter);
 
   /* ...then enable credentials prompt for credential source of the calendar sources,
      which can be a collection source.  */
-  sources = e_source_registry_list_sources (priv->source_registry, E_SOURCE_EXTENSION_CALENDAR);
+  sources = e_source_registry_list_sources (manager->source_registry, E_SOURCE_EXTENSION_CALENDAR);
 
   for (l = sources; l != NULL; l = g_list_next (l))
     {
@@ -834,7 +827,7 @@ gcal_manager_constructed (GObject *object)
       cred_source = e_source_credentials_provider_ref_credentials_source (credentials_provider, source);
       if (cred_source && !e_source_equal (source, cred_source))
        {
-          e_credentials_prompter_set_auto_prompt_disabled_for (priv->credentials_prompter, cred_source, 
FALSE);
+          e_credentials_prompter_set_auto_prompt_disabled_for (manager->credentials_prompter, cred_source, 
FALSE);
 
           if (e_source_get_connection_status (cred_source) == E_SOURCE_CONNECTION_STATUS_SSL_FAILED)
             {
@@ -850,24 +843,24 @@ gcal_manager_constructed (GObject *object)
 
   /* The eds_credentials_prompter responses to REQUIRED and REJECTED reasons,
      the SSL_FAILED should be handled elsewhere. */
-  g_signal_connect (priv->source_registry, "credentials-required", G_CALLBACK 
(source_credentials_required_cb), object);
+  g_signal_connect (manager->source_registry, "credentials-required", G_CALLBACK 
(source_credentials_required_cb), object);
 
-  e_credentials_prompter_process_awaiting_credentials (priv->credentials_prompter);
+  e_credentials_prompter_process_awaiting_credentials (manager->credentials_prompter);
 
-  g_signal_connect_swapped (priv->source_registry, "source-added", G_CALLBACK (load_source), object);
-  g_signal_connect_swapped (priv->source_registry, "source-removed", G_CALLBACK (remove_source), object);
+  g_signal_connect_swapped (manager->source_registry, "source-added", G_CALLBACK (load_source), object);
+  g_signal_connect_swapped (manager->source_registry, "source-removed", G_CALLBACK (remove_source), object);
 
   /* create data model */
-  priv->e_data_model = e_cal_data_model_new (submit_thread_job);
-  priv->search_data_model = e_cal_data_model_new (submit_thread_job);
+  manager->e_data_model = e_cal_data_model_new (submit_thread_job);
+  manager->search_data_model = e_cal_data_model_new (submit_thread_job);
 
-  e_cal_data_model_set_expand_recurrences (priv->e_data_model, TRUE);
-  e_cal_data_model_set_timezone (priv->e_data_model, priv->system_timezone);
-  e_cal_data_model_set_expand_recurrences (priv->search_data_model, TRUE);
-  e_cal_data_model_set_timezone (priv->search_data_model, priv->system_timezone);
+  e_cal_data_model_set_expand_recurrences (manager->e_data_model, TRUE);
+  e_cal_data_model_set_timezone (manager->e_data_model, manager->system_timezone);
+  e_cal_data_model_set_expand_recurrences (manager->search_data_model, TRUE);
+  e_cal_data_model_set_timezone (manager->search_data_model, manager->system_timezone);
 
-  sources = e_source_registry_list_enabled (priv->source_registry, E_SOURCE_EXTENSION_CALENDAR);
-  priv->sources_at_launch = g_list_length (sources);
+  sources = e_source_registry_list_enabled (manager->source_registry, E_SOURCE_EXTENSION_CALENDAR);
+  manager->sources_at_launch = g_list_length (sources);
 
   for (l = sources; l != NULL; l = l->next)
     load_source (GCAL_MANAGER (object), l->data);
@@ -877,31 +870,23 @@ gcal_manager_constructed (GObject *object)
 static void
 gcal_manager_finalize (GObject *object)
 {
-  GcalManagerPrivate *priv;
+  GcalManager *manager =GCAL_MANAGER (object);
 
-  priv = gcal_manager_get_instance_private (GCAL_MANAGER (object));
+  g_clear_object (&manager->settings);
+  g_clear_object (&manager->goa_client);
+  g_clear_object (&manager->e_data_model);
+  g_clear_object (&manager->search_data_model);
+  g_clear_object (&manager->shell_search_data_model);
 
-  if (priv->settings != NULL)
-    g_object_unref (priv->settings);
-  g_strfreev (priv->disabled_sources);
+  g_strfreev (manager->disabled_sources);
 
-  if (priv->e_data_model != NULL)
-    g_object_unref (priv->e_data_model);
-  if (priv->search_data_model != NULL)
-    g_object_unref (priv->search_data_model);
-
-  if (priv->search_view_data != NULL)
+  if (manager->search_view_data != NULL)
     {
-      g_free (priv->search_view_data->query);
-      g_free (priv->search_view_data);
+      g_free (manager->search_view_data->query);
+      g_free (manager->search_view_data);
     }
-  if (priv->shell_search_data_model != NULL)
-    g_object_unref (priv->shell_search_data_model);
-
-  if (priv->goa_client != NULL)
-    g_object_unref (priv->goa_client);
 
-  g_hash_table_destroy (priv->clients);
+  g_hash_table_destroy (manager->clients);
 }
 
 static void
@@ -910,16 +895,13 @@ gcal_manager_set_property (GObject      *object,
                            const GValue *value,
                            GParamSpec   *pspec)
 {
-  GcalManagerPrivate *priv;
-
-  priv = gcal_manager_get_instance_private (GCAL_MANAGER (object));
+  GcalManager *self = GCAL_MANAGER (object);
 
   switch (property_id)
     {
     case PROP_SETTINGS:
-      if (priv->settings != NULL)
-        g_object_unref (priv->settings);
-      priv->settings = g_value_dup_object (value);
+      if (g_set_object (&self->settings, g_value_get_object (value)))
+        g_object_notify (object, "settings");
       return;
     }
 
@@ -932,14 +914,12 @@ gcal_manager_get_property (GObject    *object,
                            GValue     *value,
                            GParamSpec *pspec)
 {
-  GcalManagerPrivate *priv;
-
-  priv = gcal_manager_get_instance_private (GCAL_MANAGER (object));
+  GcalManager *self = GCAL_MANAGER (object);
 
   switch (property_id)
     {
     case PROP_SETTINGS:
-      g_value_set_object (value, priv->settings);
+      g_value_set_object (value, self->settings);
       return;
     }
 
@@ -975,10 +955,7 @@ ESource*
 gcal_manager_get_source (GcalManager *manager,
                          const gchar *uid)
 {
-  GcalManagerPrivate *priv;
-  priv = gcal_manager_get_instance_private (manager);
-
-  return e_source_registry_ref_source (priv->source_registry, uid);
+  return e_source_registry_ref_source (manager->source_registry, uid);
 }
 
 /**
@@ -992,14 +969,11 @@ gcal_manager_get_source (GcalManager *manager,
 GList*
 gcal_manager_get_sources (GcalManager *manager)
 {
-  GcalManagerPrivate *priv;
   GHashTableIter iter;
   gpointer key, value;
   GList *aux = NULL;
 
-  priv = gcal_manager_get_instance_private (manager);
-
-  g_hash_table_iter_init (&iter, priv->clients);
+  g_hash_table_iter_init (&iter, manager->clients);
   while (g_hash_table_iter_next (&iter, &key, &value))
     {
       GcalManagerUnit *unit = value;
@@ -1021,10 +995,7 @@ gcal_manager_get_sources (GcalManager *manager)
 GList*
 gcal_manager_get_sources_connected (GcalManager *manager)
 {
-  GcalManagerPrivate *priv;
-
-  priv = gcal_manager_get_instance_private (manager);
-  return g_hash_table_get_keys (priv->clients);
+  return g_hash_table_get_keys (manager->clients);
 }
 
 /**
@@ -1036,10 +1007,7 @@ gcal_manager_get_sources_connected (GcalManager *manager)
 ESource*
 gcal_manager_get_default_source (GcalManager *manager)
 {
-  GcalManagerPrivate *priv;
-
-  priv = gcal_manager_get_instance_private (manager);
-  return e_source_registry_ref_default_calendar (priv->source_registry);
+  return e_source_registry_ref_default_calendar (manager->source_registry);
 }
 
 /**
@@ -1053,38 +1021,29 @@ void
 gcal_manager_set_default_source (GcalManager *manager,
                                  ESource     *source)
 {
-  GcalManagerPrivate *priv;
-
-  priv = gcal_manager_get_instance_private (manager);
-  e_source_registry_set_default_calendar (priv->source_registry, source);
+  e_source_registry_set_default_calendar (manager->source_registry, source);
 }
 
 icaltimezone*
 gcal_manager_get_system_timezone (GcalManager *manager)
 {
-  GcalManagerPrivate *priv;
-
-  priv = gcal_manager_get_instance_private (manager);
-  return priv->system_timezone;
+  return manager->system_timezone;
 }
 
 void
 gcal_manager_setup_shell_search (GcalManager             *manager,
                                  ECalDataModelSubscriber *subscriber)
 {
-  GcalManagerPrivate *priv;
-  priv = gcal_manager_get_instance_private (manager);
-
-  if (priv->shell_search_data_model == NULL)
+  if (manager->shell_search_data_model == NULL)
     {
-      priv->shell_search_data_model = e_cal_data_model_new (submit_thread_job);
-      g_signal_connect_swapped (priv->shell_search_data_model, "view-state-changed", G_CALLBACK 
(model_state_changed), manager);
+      manager->shell_search_data_model = e_cal_data_model_new (submit_thread_job);
+      g_signal_connect_swapped (manager->shell_search_data_model, "view-state-changed", G_CALLBACK 
(model_state_changed), manager);
 
-      e_cal_data_model_set_expand_recurrences (priv->shell_search_data_model, TRUE);
-      e_cal_data_model_set_timezone (priv->shell_search_data_model, priv->system_timezone);
+      e_cal_data_model_set_expand_recurrences (manager->shell_search_data_model, TRUE);
+      e_cal_data_model_set_timezone (manager->shell_search_data_model, manager->system_timezone);
 
-      priv->search_view_data = g_new0 (ViewStateData, 1);
-      priv->search_view_data->subscriber = subscriber;
+      manager->search_view_data = g_new0 (ViewStateData, 1);
+      manager->search_view_data->subscriber = subscriber;
     }
 }
 
@@ -1099,17 +1058,15 @@ void
 gcal_manager_set_shell_search_query (GcalManager *manager,
                                      const gchar *query)
 {
-  GcalManagerPrivate *priv = gcal_manager_get_instance_private (manager);
-
-  priv->search_view_data->passed_start = FALSE;
-  priv->search_view_data->search_done = FALSE;
-  priv->search_view_data->sources_left = g_hash_table_size (priv->clients) - g_strv_length 
(priv->disabled_sources);
+  manager->search_view_data->passed_start = FALSE;
+  manager->search_view_data->search_done = FALSE;
+  manager->search_view_data->sources_left = g_hash_table_size (manager->clients) - g_strv_length 
(manager->disabled_sources);
 
-  if (priv->search_view_data->query != NULL)
-    g_free (priv->search_view_data->query);
-  priv->search_view_data->query = g_strdup (query);
+  if (manager->search_view_data->query != NULL)
+    g_free (manager->search_view_data->query);
+  manager->search_view_data->query = g_strdup (query);
 
-  e_cal_data_model_set_filter (priv->shell_search_data_model, query);
+  e_cal_data_model_set_filter (manager->shell_search_data_model, query);
 }
 
 void
@@ -1118,31 +1075,24 @@ gcal_manager_set_shell_search_subscriber (GcalManager             *manager,
                                           time_t                   range_start,
                                           time_t                   range_end)
 {
-  GcalManagerPrivate *priv;
-
-  priv = gcal_manager_get_instance_private (manager);
-  e_cal_data_model_subscribe (priv->shell_search_data_model, subscriber, range_start, range_end);
+  e_cal_data_model_subscribe (manager->shell_search_data_model, subscriber, range_start, range_end);
 }
 
 gboolean
 gcal_manager_shell_search_done (GcalManager *manager)
 {
-  GcalManagerPrivate *priv = gcal_manager_get_instance_private (manager);
-  return priv->search_view_data->search_done;
+  return manager->search_view_data->search_done;
 }
 
 GList*
 gcal_manager_get_shell_search_events (GcalManager *manager)
 {
-  GcalManagerPrivate *priv;
   time_t range_start, range_end;
   GList *list = NULL;
 
-  priv = gcal_manager_get_instance_private (manager);
-
-  e_cal_data_model_get_subscriber_range (priv->shell_search_data_model, priv->search_view_data->subscriber,
+  e_cal_data_model_get_subscriber_range (manager->shell_search_data_model, 
manager->search_view_data->subscriber,
                                          &range_start, &range_end);
-  e_cal_data_model_foreach_component (priv->shell_search_data_model, range_start, range_end, 
gather_components, &list);
+  e_cal_data_model_foreach_component (manager->shell_search_data_model, range_start, range_end, 
gather_components, &list);
   return list;
 }
 
@@ -1152,10 +1102,7 @@ gcal_manager_set_subscriber (GcalManager             *manager,
                              time_t                   range_start,
                              time_t                   range_end)
 {
-  GcalManagerPrivate *priv;
-
-  priv = gcal_manager_get_instance_private (manager);
-  e_cal_data_model_subscribe (priv->e_data_model,
+  e_cal_data_model_subscribe (manager->e_data_model,
                               subscriber,
                               range_start, range_end);
 }
@@ -1166,10 +1113,7 @@ gcal_manager_set_search_subscriber (GcalManager             *manager,
                                     time_t                   range_start,
                                     time_t                   range_end)
 {
-  GcalManagerPrivate *priv;
-
-  priv = gcal_manager_get_instance_private (manager);
-  e_cal_data_model_subscribe (priv->search_data_model,
+  e_cal_data_model_subscribe (manager->search_data_model,
                               subscriber,
                               range_start, range_end);
 }
@@ -1187,10 +1131,7 @@ void
 gcal_manager_set_query (GcalManager *manager,
                         const gchar *query)
 {
-  GcalManagerPrivate *priv;
-
-  priv = gcal_manager_get_instance_private (manager);
-  e_cal_data_model_set_filter (priv->search_data_model,
+  e_cal_data_model_set_filter (manager->search_data_model,
                                query != NULL ? query : "#t");
 }
 
@@ -1207,12 +1148,10 @@ gcal_manager_query_client_data (GcalManager *manager,
                                 ESource     *source,
                                 const gchar *field)
 {
-  GcalManagerPrivate *priv;
   GcalManagerUnit *unit;
   gchar *out;
 
-  priv = gcal_manager_get_instance_private (manager);
-  unit = g_hash_table_lookup (priv->clients, source);
+  unit = g_hash_table_lookup (manager->clients, source);
 
   if (unit == NULL)
     return NULL;
@@ -1243,13 +1182,10 @@ gcal_manager_add_source (GcalManager *manager,
                          const gchar *backend,
                          const gchar *color)
 {
-  GcalManagerPrivate *priv;
   ESource *source;
   ESourceCalendar *extension;
   GError *error;
 
-  priv = gcal_manager_get_instance_private (manager);
-
   source = e_source_new (NULL, NULL, NULL);
   extension = E_SOURCE_CALENDAR (e_source_get_extension (source,
                                                          E_SOURCE_EXTENSION_CALENDAR));
@@ -1262,7 +1198,7 @@ gcal_manager_add_source (GcalManager *manager,
   e_source_set_display_name (source, name);
 
   error = NULL;
-  e_source_registry_commit_source_sync (priv->source_registry,
+  e_source_registry_commit_source_sync (manager->source_registry,
                                         source,
                                         NULL,
                                         &error);
@@ -1290,38 +1226,36 @@ void
 gcal_manager_enable_source (GcalManager *manager,
                             ESource     *source)
 {
-  GcalManagerPrivate *priv;
   GcalManagerUnit *unit;
   gchar **new_disabled_sources;
   gint i;
 
-  priv = gcal_manager_get_instance_private (manager);
-  unit = g_hash_table_lookup (priv->clients, source);
+  unit = g_hash_table_lookup (manager->clients, source);
 
   if (unit->enabled)
     return;
 
   unit->enabled = TRUE;
-  e_cal_data_model_add_client (priv->e_data_model, unit->client);
-  e_cal_data_model_add_client (priv->search_data_model, unit->client);
-  if (priv->shell_search_data_model != NULL)
-    e_cal_data_model_add_client (priv->shell_search_data_model, unit->client);
+  e_cal_data_model_add_client (manager->e_data_model, unit->client);
+  e_cal_data_model_add_client (manager->search_data_model, unit->client);
+  if (manager->shell_search_data_model != NULL)
+    e_cal_data_model_add_client (manager->shell_search_data_model, unit->client);
 
   /* remove source's uid from disabled_sources array */
-  new_disabled_sources = g_new0 (gchar*, g_strv_length (priv->disabled_sources));
-  for (i = 0; i < g_strv_length (priv->disabled_sources); i++)
+  new_disabled_sources = g_new0 (gchar*, g_strv_length (manager->disabled_sources));
+  for (i = 0; i < g_strv_length (manager->disabled_sources); i++)
     {
-      if (g_strcmp0 (priv->disabled_sources[i], e_source_get_uid (source)) == 0)
+      if (g_strcmp0 (manager->disabled_sources[i], e_source_get_uid (source)) == 0)
         continue;
-      new_disabled_sources[i] = g_strdup (priv->disabled_sources[i]);
+      new_disabled_sources[i] = g_strdup (manager->disabled_sources[i]);
     }
-  g_strfreev (priv->disabled_sources);
-  priv->disabled_sources = new_disabled_sources;
+  g_strfreev (manager->disabled_sources);
+  manager->disabled_sources = new_disabled_sources;
 
   g_signal_emit (manager, signals[SOURCE_ENABLED], 0, source, TRUE);
 
   /* sync settings value */
-  g_settings_set_strv (priv->settings, "disabled-sources", (const gchar * const *) priv->disabled_sources);
+  g_settings_set_strv (manager->settings, "disabled-sources", (const gchar * const *) 
manager->disabled_sources);
 }
 
 /**
@@ -1335,39 +1269,37 @@ void
 gcal_manager_disable_source (GcalManager *manager,
                              ESource     *source)
 {
-  GcalManagerPrivate *priv;
   GcalManagerUnit *unit;
   gchar **new_disabled_sources;
   gint i;
   const gchar *source_uid;
 
-  priv = gcal_manager_get_instance_private (manager);
-  unit = g_hash_table_lookup (priv->clients, source);
+  unit = g_hash_table_lookup (manager->clients, source);
 
   if (!unit->enabled)
     return;
 
   source_uid = e_source_get_uid (source);
   unit->enabled = FALSE;
-  e_cal_data_model_remove_client (priv->e_data_model, source_uid);
-  e_cal_data_model_remove_client (priv->search_data_model, source_uid);
-  if (priv->shell_search_data_model != NULL)
-    e_cal_data_model_remove_client (priv->shell_search_data_model, source_uid);
+  e_cal_data_model_remove_client (manager->e_data_model, source_uid);
+  e_cal_data_model_remove_client (manager->search_data_model, source_uid);
+  if (manager->shell_search_data_model != NULL)
+    e_cal_data_model_remove_client (manager->shell_search_data_model, source_uid);
 
   /* add source's uid from disabled_sources array */
-  new_disabled_sources = g_new0 (gchar*, g_strv_length (priv->disabled_sources) + 2);
-  for (i = 0; i < g_strv_length (priv->disabled_sources); i++)
-    new_disabled_sources[i] = g_strdup (priv->disabled_sources[i]);
+  new_disabled_sources = g_new0 (gchar*, g_strv_length (manager->disabled_sources) + 2);
+  for (i = 0; i < g_strv_length (manager->disabled_sources); i++)
+    new_disabled_sources[i] = g_strdup (manager->disabled_sources[i]);
 
-  new_disabled_sources[g_strv_length (priv->disabled_sources)] = g_strdup (source_uid);
+  new_disabled_sources[g_strv_length (manager->disabled_sources)] = g_strdup (source_uid);
 
-  g_strfreev (priv->disabled_sources);
-  priv->disabled_sources = new_disabled_sources;
+  g_strfreev (manager->disabled_sources);
+  manager->disabled_sources = new_disabled_sources;
 
   g_signal_emit (manager, signals[SOURCE_ENABLED], 0, source, FALSE);
 
   /* sync settings value */
-  g_settings_set_strv (priv->settings, "disabled-sources", (const gchar * const *) priv->disabled_sources);
+  g_settings_set_strv (manager->settings, "disabled-sources", (const gchar * const *) 
manager->disabled_sources);
 }
 
 /**
@@ -1381,13 +1313,11 @@ void
 gcal_manager_save_source (GcalManager *manager,
                           ESource     *source)
 {
-  GcalManagerPrivate *priv;
   GError *error;
 
-  priv = gcal_manager_get_instance_private (manager);
   error = NULL;
 
-  e_source_registry_commit_source_sync (priv->source_registry, source, NULL, &error);
+  e_source_registry_commit_source_sync (manager->source_registry, source, NULL, &error);
 
   if (error != NULL)
     {
@@ -1401,11 +1331,9 @@ gboolean
 gcal_manager_source_enabled (GcalManager *manager,
                              ESource     *source)
 {
-  GcalManagerPrivate *priv;
   GcalManagerUnit *unit;
 
-  priv = gcal_manager_get_instance_private (manager);
-  unit = g_hash_table_lookup (priv->clients, source);
+  unit = g_hash_table_lookup (manager->clients, source);
   if (unit == NULL)
     return FALSE;
   return unit->enabled;
@@ -1414,12 +1342,10 @@ gcal_manager_source_enabled (GcalManager *manager,
 void
 gcal_manager_refresh (GcalManager *manager)
 {
-  GcalManagerPrivate *priv;
   GList *clients;
   GList *l;
 
-  priv = gcal_manager_get_instance_private (manager);
-  clients = g_hash_table_get_values (priv->clients);
+  clients = g_hash_table_get_values (manager->clients);
 
   /* refresh clients */
   for (l = clients; l != NULL; l = l->next)
@@ -1442,11 +1368,9 @@ gboolean
 gcal_manager_is_client_writable (GcalManager *manager,
                                  ESource     *source)
 {
-  GcalManagerPrivate *priv;
   GcalManagerUnit *unit;
 
-  priv = gcal_manager_get_instance_private (manager);
-  unit = g_hash_table_lookup (priv->clients, source);
+  unit = g_hash_table_lookup (manager->clients, source);
 
   if (unit == NULL)
     return FALSE;
@@ -1459,15 +1383,11 @@ gcal_manager_create_event (GcalManager        *manager,
                            ESource            *source,
                            ECalComponent      *component)
 {
-  GcalManagerPrivate *priv;
-
   GcalManagerUnit *unit;
   icalcomponent *new_event_icalcomp;
   AsyncOpsData *data;
 
-  priv = gcal_manager_get_instance_private (manager);
-
-  unit = g_hash_table_lookup (priv->clients, source);
+  unit = g_hash_table_lookup (manager->clients, source);
 
   new_event_icalcomp = e_cal_component_get_icalcomponent (component);
 
@@ -1478,7 +1398,7 @@ gcal_manager_create_event (GcalManager        *manager,
 
   e_cal_client_create_object (unit->client,
                               new_event_icalcomp,
-                              priv->async_ops,
+                              manager->async_ops,
                               on_event_created,
                               data);
 }
@@ -1488,11 +1408,9 @@ gcal_manager_update_event (GcalManager   *manager,
                            ESource       *source,
                            ECalComponent *component)
 {
-  GcalManagerPrivate *priv;
   GcalManagerUnit *unit;
 
-  priv = gcal_manager_get_instance_private (manager);
-  unit = (GcalManagerUnit*) g_hash_table_lookup (priv->clients, source);
+  unit = (GcalManagerUnit*) g_hash_table_lookup (manager->clients, source);
 
   e_cal_client_modify_object (unit->client,
                               e_cal_component_get_icalcomponent (component),
@@ -1507,20 +1425,17 @@ gcal_manager_remove_event (GcalManager   *manager,
                            ESource       *source,
                            ECalComponent *component)
 {
-  GcalManagerPrivate *priv;
   GcalManagerUnit *unit;
   ECalComponentId *id;
 
-  priv = gcal_manager_get_instance_private (manager);
-
-  unit = g_hash_table_lookup (priv->clients, source);
+  unit = g_hash_table_lookup (manager->clients, source);
   id = e_cal_component_get_id (component);
 
   e_cal_client_remove_object (unit->client,
                               id->uid,
                               id->rid,
                               E_CAL_OBJ_MOD_THIS,
-                              priv->async_ops,
+                              manager->async_ops,
                               on_event_removed,
                               component);
 
@@ -1533,7 +1448,6 @@ gcal_manager_move_event_to_source (GcalManager   *manager,
                                    ESource       *source,
                                    ESource       *dest)
 {
-  GcalManagerPrivate *priv;
   ECalComponent *clone;
   icalcomponent *comp;
   GcalManagerUnit *unit;
@@ -1542,11 +1456,10 @@ gcal_manager_move_event_to_source (GcalManager   *manager,
 
   g_return_if_fail (GCAL_IS_MANAGER (manager));
 
-  priv = gcal_manager_get_instance_private (manager);
   error = NULL;
 
   /* First, try to create the component on the destination source */
-  unit = g_hash_table_lookup (priv->clients, dest);
+  unit = g_hash_table_lookup (manager->clients, dest);
 
   clone = e_cal_component_clone (component);
   comp = e_cal_component_get_icalcomponent (clone);
@@ -1569,7 +1482,7 @@ gcal_manager_move_event_to_source (GcalManager   *manager,
    * created, try to remove the old component. Data loss it the last
    * thing we want to happen here.
    */
-  unit = g_hash_table_lookup (priv->clients, source);
+  unit = g_hash_table_lookup (manager->clients, source);
 
   id = e_cal_component_get_id (component);
 
@@ -1577,7 +1490,7 @@ gcal_manager_move_event_to_source (GcalManager   *manager,
                                    id->uid,
                                    id->rid,
                                    E_CAL_OBJ_MOD_THIS,
-                                   priv->async_ops,
+                                   manager->async_ops,
                                    &error);
 
   if (error)
@@ -1603,39 +1516,34 @@ gcal_manager_get_events (GcalManager  *manager,
                          icaltimetype *start_date,
                          icaltimetype *end_date)
 {
-  GcalManagerPrivate *priv = gcal_manager_get_instance_private (manager);
   time_t range_start, range_end;
   GList *list = NULL;
 
-  range_start = icaltime_as_timet_with_zone (*start_date, priv->system_timezone);
-  range_end = icaltime_as_timet_with_zone (*end_date, priv->system_timezone);
+  range_start = icaltime_as_timet_with_zone (*start_date, manager->system_timezone);
+  range_end = icaltime_as_timet_with_zone (*end_date, manager->system_timezone);
 
-  e_cal_data_model_foreach_component (priv->e_data_model, range_start, range_end, gather_components, &list);
+  e_cal_data_model_foreach_component (manager->e_data_model, range_start, range_end, gather_components, 
&list);
   return list;
 }
 
 gboolean
 gcal_manager_load_completed (GcalManager *manager)
 {
-  GcalManagerPrivate *priv = gcal_manager_get_instance_private (manager);
-  return priv->sources_at_launch == 0;
+  return manager->sources_at_launch == 0;
 }
 
 GcalEventData*
 gcal_manager_get_event_from_shell_search (GcalManager *manager,
                                           const gchar *uuid)
 {
-  GcalManagerPrivate *priv;
   time_t range_start, range_end;
   GList *l, *list = NULL;
   GcalEventData *data, *new_data = NULL;
   gchar *cuuid;
 
-  priv = gcal_manager_get_instance_private (manager);
-
-  e_cal_data_model_get_subscriber_range (priv->shell_search_data_model, priv->search_view_data->subscriber,
+  e_cal_data_model_get_subscriber_range (manager->shell_search_data_model, 
manager->search_view_data->subscriber,
                                          &range_start, &range_end);
-  e_cal_data_model_foreach_component (priv->shell_search_data_model, range_start, range_end, 
gather_components, &list);
+  e_cal_data_model_foreach_component (manager->shell_search_data_model, range_start, range_end, 
gather_components, &list);
   if (list != NULL)
     new_data = g_new0 (GcalEventData, 1);
 
@@ -1662,23 +1570,15 @@ gcal_manager_get_event_from_shell_search (GcalManager *manager,
 gboolean
 gcal_manager_is_goa_client_ready (GcalManager *manager)
 {
-  GcalManagerPrivate *priv;
-
   g_return_val_if_fail (GCAL_IS_MANAGER (manager), FALSE);
 
-  priv = gcal_manager_get_instance_private (manager);
-
-  return priv->goa_client_ready;
+  return manager->goa_client_ready;
 }
 
 GoaClient*
 gcal_manager_get_goa_client (GcalManager *manager)
 {
-  GcalManagerPrivate *priv;
-
   g_return_val_if_fail (GCAL_IS_MANAGER (manager), FALSE);
 
-  priv = gcal_manager_get_instance_private (manager);
-
-  return priv->goa_client;
+  return manager->goa_client;
 }
diff --git a/src/gcal-manager.h b/src/gcal-manager.h
index 67a48b2..f12e960 100644
--- a/src/gcal-manager.h
+++ b/src/gcal-manager.h
@@ -28,33 +28,8 @@
 G_BEGIN_DECLS
 
 #define GCAL_TYPE_MANAGER                            (gcal_manager_get_type ())
-#define GCAL_MANAGER(obj)                            (G_TYPE_CHECK_INSTANCE_CAST((obj), GCAL_TYPE_MANAGER, 
GcalManager))
-#define GCAL_MANAGER_CLASS(klass)                    (G_TYPE_CHECK_CLASS_CAST((klass), GCAL_TYPE_MANAGER, 
GcalManagerClass))
-#define GCAL_IS_MANAGER(obj)                         (G_TYPE_CHECK_INSTANCE_TYPE((obj), GCAL_TYPE_MANAGER))
-#define GCAL_IS_MANAGER_CLASS(klass)                 (G_TYPE_CHECK_CLASS_TYPE((klass), GCAL_TYPE_MANAGER))
-#define GCAL_MANAGER_GET_CLASS(obj)                  (G_TYPE_INSTANCE_GET_CLASS((obj), GCAL_TYPE_MANAGER, 
GcalManagerClass))
 
-typedef struct _GcalManager                           GcalManager;
-typedef struct _GcalManagerClass                      GcalManagerClass;
-
-struct _GcalManager
-{
-  GObject parent;
-};
-
-struct _GcalManagerClass
-{
-  GObjectClass parent_class;
-
-  /* signals */
-  void (*source_activated)  (GcalManager *manager, ESource *source, gboolean active);
-  void (*source_added)  (GcalManager *manager, ESource *source, gboolean enabled);
-  void (*source_removed)  (GcalManager *manager, ESource *source);
-  void (*source_enabled)  (GcalManager *manager, ESource *source, gboolean enabled);
-  void (*load_completed)  (GcalManager *manager);
-  void (*query_completed) (GcalManager *manager);
-  void (*goa_client_ready) (GcalManager *manager, GoaClient *client);
-};
+G_DECLARE_FINAL_TYPE (GcalManager, gcal_manager, GCAL, MANAGER, GObject)
 
 typedef struct
 {
@@ -62,8 +37,6 @@ typedef struct
   ECalComponent *event_component;
 } GcalEventData;
 
-GType          gcal_manager_get_type                (void);
-
 GcalManager*   gcal_manager_new_with_settings       (GSettings          *settings);
 
 ESource*       gcal_manager_get_source              (GcalManager        *manager,



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]