[evolution-kolab] ECalBackendKolab: Convert get_backend_property() method.
- From: Matthew Barnes <mbarnes src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evolution-kolab] ECalBackendKolab: Convert get_backend_property() method.
- Date: Mon, 1 Apr 2013 16:16:20 +0000 (UTC)
commit 0d757039d6fc8958e3b7c7e6cf92f7dafd9ce3ed
Author: Matthew Barnes <mbarnes redhat com>
Date: Mon Apr 1 12:13:50 2013 -0400
ECalBackendKolab: Convert get_backend_property() method.
src/calendar/e-cal-backend-kolab.c | 69 ++++++++++++++++--------------------
1 files changed, 31 insertions(+), 38 deletions(-)
---
diff --git a/src/calendar/e-cal-backend-kolab.c b/src/calendar/e-cal-backend-kolab.c
index d2c43a0..5114dda 100644
--- a/src/calendar/e-cal-backend-kolab.c
+++ b/src/calendar/e-cal-backend-kolab.c
@@ -418,53 +418,45 @@ cal_backend_kolab_refresh (ECalBackendSync *backend,
g_error ("%s: FIXME implement me", __func__);
}
-static gboolean
-cal_backend_kolab_get_backend_property (ECalBackendSync *backend,
- EDataCal *cal,
- GCancellable *cancellable,
- const gchar *prop_name,
- gchar **prop_value,
- GError **error)
+static gchar *
+cal_backend_kolab_get_backend_property (ECalBackend *backend,
+ const gchar *prop_name)
{
ECalBackendKolab *self = NULL;
ECalBackendKolabPrivate *priv = NULL;
- gboolean processed = TRUE;
/* this is a modified dupe of the respective mapi function */
- g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
- e_return_data_cal_error_val_if_fail (E_IS_CAL_BACKEND_KOLAB (backend), InvalidArg);
- e_return_data_cal_error_val_if_fail (E_IS_DATA_CAL (cal), InvalidArg);
- (void)cancellable; /* FIXME */ /* cancellable may be NULL */
- e_return_data_cal_error_val_if_fail (prop_name != NULL, InvalidArg);
- e_return_data_cal_error_val_if_fail (prop_value != NULL && *prop_value == NULL, InvalidArg);
+ g_return_val_if_fail (prop_name != NULL, NULL);
self = E_CAL_BACKEND_KOLAB (backend);
priv = E_CAL_BACKEND_KOLAB_PRIVATE (self);
if (g_str_equal (prop_name, CLIENT_BACKEND_PROPERTY_CAPABILITIES)) {
- *prop_value = g_strdup (CAL_STATIC_CAPABILITY_NO_ALARM_REPEAT ","
- CAL_STATIC_CAPABILITY_NO_AUDIO_ALARMS ","
- CAL_STATIC_CAPABILITY_NO_EMAIL_ALARMS ","
- CAL_STATIC_CAPABILITY_NO_PROCEDURE_ALARMS ","
- CAL_STATIC_CAPABILITY_ONE_ALARM_ONLY ","
- CAL_STATIC_CAPABILITY_REMOVE_ALARMS ","
- CAL_STATIC_CAPABILITY_NO_THISANDFUTURE ","
- CAL_STATIC_CAPABILITY_NO_THISANDPRIOR ","
- CAL_STATIC_CAPABILITY_NO_CONV_TO_ASSIGN_TASK ","
- CAL_STATIC_CAPABILITY_NO_CONV_TO_RECUR ","
- CAL_STATIC_CAPABILITY_HAS_UNACCEPTED_MEETING ","
- CAL_STATIC_CAPABILITY_REFRESH_SUPPORTED
- );
+ return g_strjoin (
+ ",",
+ CAL_STATIC_CAPABILITY_NO_ALARM_REPEAT,
+ CAL_STATIC_CAPABILITY_NO_AUDIO_ALARMS,
+ CAL_STATIC_CAPABILITY_NO_EMAIL_ALARMS,
+ CAL_STATIC_CAPABILITY_NO_PROCEDURE_ALARMS,
+ CAL_STATIC_CAPABILITY_ONE_ALARM_ONLY,
+ CAL_STATIC_CAPABILITY_REMOVE_ALARMS,
+ CAL_STATIC_CAPABILITY_NO_THISANDFUTURE,
+ CAL_STATIC_CAPABILITY_NO_THISANDPRIOR,
+ CAL_STATIC_CAPABILITY_NO_CONV_TO_ASSIGN_TASK,
+ CAL_STATIC_CAPABILITY_NO_CONV_TO_RECUR,
+ CAL_STATIC_CAPABILITY_HAS_UNACCEPTED_MEETING,
+ CAL_STATIC_CAPABILITY_REFRESH_SUPPORTED,
+ NULL);
} else if (g_str_equal (prop_name, CAL_BACKEND_PROPERTY_CAL_EMAIL_ADDRESS)) {
/* see the comment for user_email in e_cal_backend_kolab_open() ! */
- *prop_value = g_strdup (priv->user_email);
+ return g_strdup (priv->user_email);
} else if (g_str_equal (prop_name, CAL_BACKEND_PROPERTY_ALARM_EMAIL_ADDRESS)) {
/* We don't support email alarms. This should not have been called. */
- *prop_value = NULL;
+ return NULL;
} else if (g_str_equal (prop_name, CAL_BACKEND_PROPERTY_DEFAULT_OBJECT)) {
ECalComponent *comp;
- GError *tmp_err = NULL;
+ gchar *prop_value;
comp = e_cal_component_new ();
@@ -480,18 +472,19 @@ cal_backend_kolab_get_backend_property (ECalBackendSync *backend,
break;
default:
g_object_unref (comp);
- tmp_err = e_data_cal_create_error (ObjectNotFound, NULL);
- g_propagate_error (error, tmp_err);
- return TRUE;
+ return NULL;
}
- *prop_value = e_cal_component_get_as_string (comp);
+ prop_value = e_cal_component_get_as_string (comp);
+
g_object_unref (comp);
- } else {
- processed = FALSE; /* means chaining up the call to parent */
+
+ return prop_value;
}
- return processed;
+ /* Chain up to parent's get_backend_property() method. */
+ return E_CAL_BACKEND_CLASS (e_cal_backend_kolab_parent_class)->
+ get_backend_property (backend, prop_name);
}
/**
@@ -1914,13 +1907,13 @@ e_cal_backend_kolab_class_init (ECalBackendKolabClass *klass)
object_class->finalize = e_cal_backend_kolab_finalize;
/* Backend parent class methods methods not covered in the sync backend part */
+ backend_class->get_backend_property = cal_backend_kolab_get_backend_property;
backend_class->start_view = cal_backend_kolab_start_view;
backend_class->stop_view = cal_backend_kolab_stop_view;
/* Sync backend class functions */
sync_class->open_sync = cal_backend_kolab_open;
sync_class->refresh_sync = cal_backend_kolab_refresh;
- sync_class->get_backend_property_sync = cal_backend_kolab_get_backend_property;
sync_class->get_object_sync = cal_backend_kolab_get_object;
sync_class->get_object_list_sync = cal_backend_kolab_get_object_list;
sync_class->get_free_busy_sync = cal_backend_kolab_get_free_busy;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]