aboutsummaryrefslogtreecommitdiffstats
path: root/addressbook/backend/ebook/e-book-listener.c
diff options
context:
space:
mode:
Diffstat (limited to 'addressbook/backend/ebook/e-book-listener.c')
-rw-r--r--addressbook/backend/ebook/e-book-listener.c151
1 files changed, 30 insertions, 121 deletions
diff --git a/addressbook/backend/ebook/e-book-listener.c b/addressbook/backend/ebook/e-book-listener.c
index df27e3092a..ffcd1fe127 100644
--- a/addressbook/backend/ebook/e-book-listener.c
+++ b/addressbook/backend/ebook/e-book-listener.c
@@ -24,12 +24,8 @@ enum {
static guint e_book_listener_signals [LAST_SIGNAL];
static BonoboObjectClass *parent_class;
-POA_GNOME_Evolution_Addressbook_BookListener__vepv e_book_listener_vepv;
struct _EBookListenerPrivate {
- EBookListenerServant *servant;
- GNOME_Evolution_Addressbook_BookListener corba_objref;
-
GList *response_queue;
gint timeout_id;
@@ -379,7 +375,7 @@ impl_BookListener_respond_create_card (PortableServer_Servant
const CORBA_char* id,
CORBA_Environment *ev)
{
- EBookListener *listener = E_BOOK_LISTENER (bonobo_object_from_servant (servant));
+ EBookListener *listener = E_BOOK_LISTENER (bonobo_object (servant));
e_book_listener_queue_create_card_response (
listener,
@@ -392,7 +388,7 @@ impl_BookListener_respond_remove_card (PortableServer_Servant servant,
const GNOME_Evolution_Addressbook_BookListener_CallStatus status,
CORBA_Environment *ev)
{
- EBookListener *listener = E_BOOK_LISTENER (bonobo_object_from_servant (servant));
+ EBookListener *listener = E_BOOK_LISTENER (bonobo_object (servant));
e_book_listener_queue_generic_response (
listener, RemoveCardResponse,
@@ -404,7 +400,7 @@ impl_BookListener_respond_modify_card (PortableServer_Servant servant,
const GNOME_Evolution_Addressbook_BookListener_CallStatus status,
CORBA_Environment *ev)
{
- EBookListener *listener = E_BOOK_LISTENER (bonobo_object_from_servant (servant));
+ EBookListener *listener = E_BOOK_LISTENER (bonobo_object (servant));
e_book_listener_queue_generic_response (
listener, ModifyCardResponse,
@@ -417,7 +413,7 @@ impl_BookListener_respond_get_vcard (PortableServer_Servant servant,
const CORBA_char* card,
CORBA_Environment *ev)
{
- EBookListener *listener = E_BOOK_LISTENER (bonobo_object_from_servant (servant));
+ EBookListener *listener = E_BOOK_LISTENER (bonobo_object (servant));
e_book_listener_queue_get_vcard_response (
listener,
@@ -431,7 +427,7 @@ impl_BookListener_respond_get_cursor (PortableServer_Servant servant,
const GNOME_Evolution_Addressbook_CardCursor cursor,
CORBA_Environment *ev)
{
- EBookListener *listener = E_BOOK_LISTENER (bonobo_object_from_servant (servant));
+ EBookListener *listener = E_BOOK_LISTENER (bonobo_object (servant));
GNOME_Evolution_Addressbook_CardCursor cursor_copy;
cursor_copy = bonobo_object_dup_ref (cursor, ev);
@@ -453,7 +449,7 @@ impl_BookListener_respond_get_view (PortableServer_Servant servant,
const GNOME_Evolution_Addressbook_BookView book_view,
CORBA_Environment *ev)
{
- EBookListener *listener = E_BOOK_LISTENER (bonobo_object_from_servant (servant));
+ EBookListener *listener = E_BOOK_LISTENER (bonobo_object (servant));
GNOME_Evolution_Addressbook_BookView book_view_copy;
book_view_copy = bonobo_object_dup_ref (book_view, ev);
@@ -475,7 +471,7 @@ impl_BookListener_respond_get_changes (PortableServer_Servant servant,
const GNOME_Evolution_Addressbook_BookView book_view,
CORBA_Environment *ev)
{
- EBookListener *listener = E_BOOK_LISTENER (bonobo_object_from_servant (servant));
+ EBookListener *listener = E_BOOK_LISTENER (bonobo_object (servant));
GNOME_Evolution_Addressbook_BookView book_view_copy;
book_view_copy = bonobo_object_dup_ref (book_view, ev);
@@ -497,7 +493,7 @@ impl_BookListener_respond_open_book (PortableServer_Servant servant,
const GNOME_Evolution_Addressbook_Book book,
CORBA_Environment *ev)
{
- EBookListener *listener = E_BOOK_LISTENER (bonobo_object_from_servant (servant));
+ EBookListener *listener = E_BOOK_LISTENER (bonobo_object (servant));
GNOME_Evolution_Addressbook_Book book_copy;
book_copy = bonobo_object_dup_ref (book, ev);
@@ -519,7 +515,7 @@ impl_BookListener_report_open_book_progress (PortableServer_Servant servant,
const CORBA_short percent,
CORBA_Environment *ev)
{
- EBookListener *listener = E_BOOK_LISTENER (bonobo_object_from_servant (servant));
+ EBookListener *listener = E_BOOK_LISTENER (bonobo_object (servant));
e_book_listener_queue_open_progress (
listener, status_message, percent);
@@ -530,7 +526,7 @@ impl_BookListener_respond_authentication_result (PortableServer_Servant servant,
const GNOME_Evolution_Addressbook_BookListener_CallStatus status,
CORBA_Environment *ev)
{
- EBookListener *listener = E_BOOK_LISTENER (bonobo_object_from_servant (servant));
+ EBookListener *listener = E_BOOK_LISTENER (bonobo_object (servant));
e_book_listener_queue_authentication_response (
listener, status);
@@ -542,7 +538,7 @@ impl_BookListener_response_get_supported_fields (PortableServer_Servant servant,
const GNOME_Evolution_Addressbook_stringlist *fields,
CORBA_Environment *ev)
{
- EBookListener *listener = E_BOOK_LISTENER (bonobo_object_from_servant (servant));
+ EBookListener *listener = E_BOOK_LISTENER (bonobo_object (servant));
e_book_listener_queue_get_supported_fields_response (
listener, status, fields);
@@ -553,7 +549,7 @@ impl_BookListener_report_connection_status (PortableServer_Servant servant,
const CORBA_boolean connected,
CORBA_Environment *ev)
{
- EBookListener *listener = E_BOOK_LISTENER (bonobo_object_from_servant (servant));
+ EBookListener *listener = E_BOOK_LISTENER (bonobo_object (servant));
e_book_listener_queue_link_status (
listener, connected);
@@ -564,7 +560,7 @@ impl_BookListener_report_writable (PortableServer_Servant servant,
const CORBA_boolean writable,
CORBA_Environment *ev)
{
- EBookListener *listener = E_BOOK_LISTENER (bonobo_object_from_servant (servant));
+ EBookListener *listener = E_BOOK_LISTENER (bonobo_object (servant));
e_book_listener_queue_writable_status (listener, writable);
}
@@ -650,70 +646,10 @@ e_book_listener_convert_status (const GNOME_Evolution_Addressbook_BookListener_C
}
}
-void
-e_book_listener_construct (EBookListener *listener,
- GNOME_Evolution_Addressbook_BookListener corba_objref)
-{
- EBookListenerPrivate *priv;
-
- g_return_if_fail (listener != NULL);
- g_return_if_fail (corba_objref != CORBA_OBJECT_NIL);
-
- priv = listener->priv;
-
- g_return_if_fail (priv->corba_objref == CORBA_OBJECT_NIL);
-
- priv->corba_objref = corba_objref;
-}
-
-static EBookListenerServant *
-create_servant (EBookListener *listener)
-{
- EBookListenerServant *servant;
- POA_GNOME_Evolution_Addressbook_BookListener *corba_servant;
- CORBA_Environment ev;
-
- CORBA_exception_init (&ev);
-
- servant = g_new0 (EBookListenerServant, 1);
- corba_servant = (POA_GNOME_Evolution_Addressbook_BookListener *) servant;
-
- corba_servant->vepv = &e_book_listener_vepv;
- POA_GNOME_Evolution_Addressbook_BookListener__init ((PortableServer_Servant) corba_servant, &ev);
- if (ev._major != CORBA_NO_EXCEPTION) {
- g_free (servant);
- CORBA_exception_free (&ev);
- return NULL;
- }
-
- servant->object = listener;
-
- CORBA_exception_free (&ev);
-
- return servant;
-}
-
-static GNOME_Evolution_Addressbook_BookListener
-activate_servant (EBookListener *listener,
- POA_GNOME_Evolution_Addressbook_BookListener *servant)
+static void
+e_book_listener_construct (EBookListener *listener)
{
- GNOME_Evolution_Addressbook_BookListener corba_object;
- CORBA_Environment ev;
-
- CORBA_exception_init (&ev);
-
- CORBA_free (PortableServer_POA_activate_object (bonobo_poa (), servant, &ev));
-
- corba_object = PortableServer_POA_servant_to_reference (bonobo_poa(), servant, &ev);
-
- if (ev._major == CORBA_NO_EXCEPTION && ! CORBA_Object_is_nil (corba_object, &ev)) {
- CORBA_exception_free (&ev);
- return corba_object;
- }
-
- CORBA_exception_free (&ev);
-
- return CORBA_OBJECT_NIL;
+ /* nothing to do here */
}
/**
@@ -728,16 +664,10 @@ EBookListener *
e_book_listener_new ()
{
EBookListener *listener;
- EBookListenerPrivate *priv;
- GNOME_Evolution_Addressbook_BookListener corba_objref;
listener = g_object_new (E_TYPE_BOOK_LISTENER, NULL);
- priv = listener->priv;
-
- priv->servant = create_servant (listener);
- corba_objref = activate_servant (listener, (POA_GNOME_Evolution_Addressbook_BookListener *) priv->servant);
- e_book_listener_construct (listener, corba_objref);
+ e_book_listener_construct (listener);
return listener;
}
@@ -746,7 +676,6 @@ static void
e_book_listener_init (EBookListener *listener)
{
listener->priv = g_new0 (EBookListenerPrivate, 1);
- listener->priv->corba_objref = CORBA_OBJECT_NIL;
}
void
@@ -783,20 +712,25 @@ e_book_listener_dispose (GObject *object)
}
static void
-corba_class_init (EBookListenerClass *klass)
+e_book_listener_class_init (EBookListenerClass *klass)
{
- POA_GNOME_Evolution_Addressbook_BookListener__vepv *vepv;
+ GObjectClass *object_class = G_OBJECT_CLASS (klass);
POA_GNOME_Evolution_Addressbook_BookListener__epv *epv;
- PortableServer_ServantBase__epv *base_epv;
- base_epv = g_new0 (PortableServer_ServantBase__epv, 1);
- base_epv->_private = NULL;
- base_epv->finalize = NULL;
- base_epv->default_POA = NULL;
+ parent_class = g_type_class_ref (BONOBO_TYPE_OBJECT);
+ e_book_listener_signals [RESPONSES_QUEUED] =
+ g_signal_new ("responses_queued",
+ G_OBJECT_CLASS_TYPE (object_class),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (EBookListenerClass, responses_queued),
+ NULL, NULL,
+ e_book_marshal_NONE__NONE,
+ G_TYPE_NONE, 0);
- epv = &klass->epv;
+ object_class->dispose = e_book_listener_dispose;
+ epv = &klass->epv;
epv->notifyOpenBookProgress = impl_BookListener_report_open_book_progress;
epv->notifyBookOpened = impl_BookListener_respond_open_book;
epv->notifyCardCreated = impl_BookListener_respond_create_card;
@@ -810,31 +744,6 @@ corba_class_init (EBookListenerClass *klass)
epv->notifyChangesRequested = impl_BookListener_respond_get_changes;
epv->notifyConnectionStatus = impl_BookListener_report_connection_status;
epv->notifyWritable = impl_BookListener_report_writable;
-
- vepv = &e_book_listener_vepv;
- vepv->_base_epv = base_epv;
- vepv->GNOME_Evolution_Addressbook_BookListener_epv = epv;
-}
-
-static void
-e_book_listener_class_init (EBookListenerClass *klass)
-{
- GObjectClass *object_class = G_OBJECT_CLASS (klass);
-
- parent_class = g_type_class_ref (BONOBO_TYPE_OBJECT);
-
- e_book_listener_signals [RESPONSES_QUEUED] =
- g_signal_new ("responses_queued",
- G_OBJECT_CLASS_TYPE (object_class),
- G_SIGNAL_RUN_LAST,
- G_STRUCT_OFFSET (EBookListenerClass, responses_queued),
- NULL, NULL,
- e_book_marshal_NONE__NONE,
- G_TYPE_NONE, 0);
-
- object_class->dispose = e_book_listener_dispose;
-
- corba_class_init (klass);
}
BONOBO_TYPE_FUNC_FULL (