aboutsummaryrefslogtreecommitdiffstats
path: root/addressbook/backend/ebook/e-book-listener.c
diff options
context:
space:
mode:
authorChris Toshok <toshok@ximian.com>2001-02-21 17:19:15 +0800
committerChris Toshok <toshok@src.gnome.org>2001-02-21 17:19:15 +0800
commit65438eb13d8d8f82f4a9fde03ed538809fe9be1b (patch)
treeebf004f01aa2e877b9d3813da946fc8ca44d21d3 /addressbook/backend/ebook/e-book-listener.c
parent2f099e392d0dfae27282b5d87aa3c5d2acea22de (diff)
downloadgsoc2013-evolution-65438eb13d8d8f82f4a9fde03ed538809fe9be1b.tar
gsoc2013-evolution-65438eb13d8d8f82f4a9fde03ed538809fe9be1b.tar.gz
gsoc2013-evolution-65438eb13d8d8f82f4a9fde03ed538809fe9be1b.tar.bz2
gsoc2013-evolution-65438eb13d8d8f82f4a9fde03ed538809fe9be1b.tar.lz
gsoc2013-evolution-65438eb13d8d8f82f4a9fde03ed538809fe9be1b.tar.xz
gsoc2013-evolution-65438eb13d8d8f82f4a9fde03ed538809fe9be1b.tar.zst
gsoc2013-evolution-65438eb13d8d8f82f4a9fde03ed538809fe9be1b.zip
new function. (impl_GNOME_Evolution_Addressbook_Book_getSupportedFields):
2001-02-21 Chris Toshok <toshok@ximian.com> * backend/pas/pas-book.c (pas_book_queue_get_supported_fields): new function. (impl_GNOME_Evolution_Addressbook_Book_getSupportedFields): track change to idl. (pas_book_respond_get_supported_fields): new function. * backend/pas/pas-book.h: add GetSupportedFields to the PASOperation enum. Also, add a stringlist field to the PASRequest struct. lastly, add a prototype for pas_book_respond_get_supported_fields. * backend/pas/pas-backend.h: remove prototype for pas_backend_get_supported_fields, and remove it from the vtable. * backend/pas/pas-backend.c (pas_backend_get_supported_fields): remove. (pas_backend_class_init): no vtable entry for get_supported_fields anymore. * backend/pas/pas-backend-ldap.c (pas_backend_ldap_process_get_supported_fields): new function. (pas_backend_ldap_process_client_requests): add case for GetSupportedFields. (pas_backend_ldap_class_init): get_supported_fields isn't in vtable anymore. * backend/pas/pas-backend-file.c (pas_backend_file_process_get_supported_fields): new function. (pas_backend_file_process_client_requests): add case for GetSupportedFields. (pas_backend_file_class_init): get_supported_fields isn't in vtable anymore. * backend/idl/addressbook.idl: Book::getSupportedFields now returns void and add BookListener::notifySupportedFields. * backend/ebook/test-client.c (get_fields_cb): new function. (auth_user_cb): track change to e_book_get_supported_fields. * backend/ebook/e-book.c (e_book_do_response_get_supported_fields): new function. (e_book_check_listener_queue): add case GetSupportedFieldsResponse. (e_book_get_supported_fields): switch to async model. * backend/ebook/e-book.h: switch e_book_get_supported_fields to an async model. * backend/ebook/e-book-listener.c (e_book_listener_queue_get_supported_fields_response): new function. (impl_BookListener_response_get_supported_fields): new function. (e_book_listener_get_epv): fill in epv's "notifySupportedFields" * backend/ebook/e-book-listener.h: add an async response for GetSupportedFields and add a stringlist member to the EBookListenerResponse struct. svn path=/trunk/; revision=8316
Diffstat (limited to 'addressbook/backend/ebook/e-book-listener.c')
-rw-r--r--addressbook/backend/ebook/e-book-listener.c29
1 files changed, 29 insertions, 0 deletions
diff --git a/addressbook/backend/ebook/e-book-listener.c b/addressbook/backend/ebook/e-book-listener.c
index 5e1ff72da3..8ef9072bf6 100644
--- a/addressbook/backend/ebook/e-book-listener.c
+++ b/addressbook/backend/ebook/e-book-listener.c
@@ -202,6 +202,22 @@ e_book_listener_queue_authentication_response (EBookListener *listener,
}
static void
+e_book_listener_queue_get_supported_fields_response (EBookListener *listener,
+ EBookStatus status,
+ const GNOME_Evolution_Addressbook_stringlist *fields)
+{
+ EBookListenerResponse *resp;
+
+ resp = g_new0 (EBookListenerResponse, 1);
+
+ resp->op = GetSupportedFieldsResponse;
+ resp->status = status;
+ resp->fields = fields;
+
+ e_book_listener_queue_response (listener, resp);
+}
+
+static void
impl_BookListener_respond_create_card (PortableServer_Servant servant,
const GNOME_Evolution_Addressbook_BookListener_CallStatus status,
const GNOME_Evolution_Addressbook_CardId id,
@@ -351,6 +367,18 @@ impl_BookListener_respond_authentication_result (PortableServer_Servant servant,
}
static void
+impl_BookListener_response_get_supported_fields (PortableServer_Servant servant,
+ const GNOME_Evolution_Addressbook_BookListener_CallStatus status,
+ const GNOME_Evolution_Addressbook_stringlist *fields,
+ CORBA_Environment *ev)
+{
+ EBookListener *listener = E_BOOK_LISTENER (bonobo_object_from_servant (servant));
+
+ e_book_listener_queue_get_supported_fields_response (
+ listener, status, fields);
+}
+
+static void
impl_BookListener_report_connection_status (PortableServer_Servant servant,
const CORBA_boolean connected,
CORBA_Environment *ev)
@@ -587,6 +615,7 @@ e_book_listener_get_epv (void)
epv->notifyCardModified = impl_BookListener_respond_modify_card;
epv->notifyAuthenticationResult = impl_BookListener_respond_authentication_result;
+ epv->notifySupportedFields = impl_BookListener_response_get_supported_fields;
epv->notifyCursorRequested = impl_BookListener_respond_get_cursor;
epv->notifyViewRequested = impl_BookListener_respond_get_view;