ECalBackend: Implement authenticate_sync() method.
authorMatthew Barnes <mbarnes@redhat.com>
Tue, 31 Jul 2012 21:49:13 +0000 (17:49 -0400)
committerMatthew Barnes <mbarnes@redhat.com>
Tue, 31 Jul 2012 22:01:11 +0000 (18:01 -0400)
calendar/libedata-cal/e-cal-backend.c

index 8491f7d..647f654 100644 (file)
@@ -273,10 +273,29 @@ cal_backend_constructed (GObject *object)
        G_OBJECT_CLASS (e_cal_backend_parent_class)->constructed (object);
 }
 
+static gboolean
+cal_backend_authenticate_sync (EBackend *backend,
+                               ESourceAuthenticator *auth,
+                               GCancellable *cancellable,
+                               GError **error)
+{
+       ECalBackend *cal_backend;
+       ESourceRegistry *registry;
+       ESource *source;
+
+       cal_backend = E_CAL_BACKEND (backend);
+       registry = e_cal_backend_get_registry (cal_backend);
+       source = e_backend_get_source (backend);
+
+       return e_source_registry_authenticate_sync (
+               registry, source, auth, cancellable, error);
+}
+
 static void
 e_cal_backend_class_init (ECalBackendClass *class)
 {
        GObjectClass *object_class;
+       EBackendClass *backend_class;
 
        g_type_class_add_private (class, sizeof (ECalBackendPrivate));
 
@@ -287,6 +306,9 @@ e_cal_backend_class_init (ECalBackendClass *class)
        object_class->finalize = cal_backend_finalize;
        object_class->constructed = cal_backend_constructed;
 
+       backend_class = E_BACKEND_CLASS (class);
+       backend_class->authenticate_sync = cal_backend_authenticate_sync;
+
        class->get_backend_property = cal_backend_get_backend_property;
        class->set_backend_property = cal_backend_set_backend_property;