diff options
Diffstat (limited to 'wombat')
-rw-r--r-- | wombat/.cvsignore | 13 | ||||
-rw-r--r-- | wombat/ChangeLog | 101 | ||||
-rw-r--r-- | wombat/GNOME_Evolution_Wombat.oaf.in | 30 | ||||
-rw-r--r-- | wombat/GNOME_Evolution_Wombat.oafinfo | 30 | ||||
-rw-r--r-- | wombat/Makefile.am | 58 | ||||
-rw-r--r-- | wombat/wombat.c | 283 | ||||
-rw-r--r-- | wombat/wombat.gnorba | 11 | ||||
-rw-r--r-- | wombat/wombat.idl | 12 | ||||
-rw-r--r-- | wombat/wombat.oafinfo | 30 |
9 files changed, 0 insertions, 568 deletions
diff --git a/wombat/.cvsignore b/wombat/.cvsignore deleted file mode 100644 index 20aad5449c..0000000000 --- a/wombat/.cvsignore +++ /dev/null @@ -1,13 +0,0 @@ -.deps -.libs -.pure -Makefile -Makefile.in -*.lo -*.la -wombat-stubs.c -wombat-skels.c -wombat-common.c -wombat.h -wombat -wombat.pure diff --git a/wombat/ChangeLog b/wombat/ChangeLog deleted file mode 100644 index c202e18e2c..0000000000 --- a/wombat/ChangeLog +++ /dev/null @@ -1,101 +0,0 @@ -2000-05-13 Ettore Perazzoli <ettore@helixcode.com> - - * Makefile.am (INCLUDES): GNOME includes should come last, so that - we are sure we pick our own includes instead of the installed - ones, if any. - -2000-05-10 Christopher James Lahey <clahey@helixcode.com> - - * Makefile.am: Added an include for the pcs directory. - -2000-05-08 Federico Mena Quintero <federico@helixcode.com> - - * wombat.c (setup_pcs): Register the "file" method with the IMC - backend. - -2000-05-05 Chris Toshok <toshok@helixcode.com> - * .cvsignore: ignore wombat.pure - - * Makefile.am: add support for building wombat.pure - -2000-05-01 Federico Mena Quintero <federico@helixcode.com> - - * wombat.c (main): Doh, also unref the pas_book_factory when we - are done. - -2000-04-30 Federico Mena Quintero <federico@helixcode.com> - - * wombat.c (setup_pas): Connect to the "last_book_gone" signal of - the book factory. - (last_book_gone_cb): Handle the "last_book_gone" signal. - (termination_handler): Check if the book factory has zero running - backends. - -2000-04-30 Christopher James Lahey <clahey@helixcode.com> - - * Makefile.am: Added ename libs to LDADD. - -2000-04-27 Ettore Perazzoli <ettore@helixcode.com> - - * wombat.c - (register_pcs): New function for registering into the name - service. Varies according on whether we are `USING_OAF' or not. - (init_corba): New function for initializing the CORBA stuff. - Implementation depends on `USING_OAF'. - (init_bonobo): Use `init_corba'. - - * Makefile.am: Updated for OAF. - -2000-04-25 Federico Mena Quintero <federico@helixcode.com> - - * wombat.c (cal_factory pas_book_factory): New module-wide - variables for the PAS and PCS factories. - (setup_pcs): Connect to the "last_calendar_gone" signal of the - calendar factory. - (last_calendar_gone_cb): Queue a termination job. - (queue_termination): Function to queue a termination job. We have - to use a timeout to reduce the probability of running into GOAD's - race condition with factories. - (termination_handler): Check that the PCS and the PAS have zero - backends. If so, exit the main loop. - (setup_vfs): Use EXIT_FAILURE instead of 1. - (init_bonobo): Likewise. - (main): Destroy the factories and exit Wombat. Wheee! - -2000-04-16 Federico Mena Quintero <federico@helixcode.com> - - * Makefile.am (INCLUDES): Removed spurious calendar directories - from the include path. Added "wombat" log domain for glib. - (wombat_LDADD): Link libpcs.a instead of the old shared library. - - * wombat.c: cal-factory.h is an internal include file. * wombat.c - (setup_pcs): We should NOT share a CORBA_environment across all - functions! Use our own CORBA_environment. - (init_bonobo): Use our own CORBA_environment. Free the exception - after initializing GOAD, and present some error messages if - necessary. (Should g_message()s for exceptional situations be - marked for translation?). - -2000-04-15 Ettore Perazzoli <ettore@helixcode.com> - - * Makefile.am (INCLUDES): Added - `-I$(top_builddir)/addressbook/backend/pas', and - `-I$(top_builddir)/calendar/pcs' because that's where the - IDL-generated files go. - -2000-04-14 Chris Toshok <toshok@helixcode.com> - - * Makefile.am (wombat_LDADD): use BONOBO_VFS_GNOME_LIBS instead of - BONOBO_HTML_GNOME_LIBS. fixes freebsd's problem running wombat. - -2000-04-14 Federico Mena Quintero <federico@helixcode.com> - - * wombat.c (setup_pcs): Must pass "object" for the kind to - goad_server_register(); "server" is meaningless. - (setup_pcs): Do not free the CORBA environment more than once. - Also, fix error messages. - - * wombat.gnorba: The GOAD ID is "evolution:calendar-factory", not - "evolution:calendar-server". - - * ChangeLog: Started the ChangeLog for Wombat. diff --git a/wombat/GNOME_Evolution_Wombat.oaf.in b/wombat/GNOME_Evolution_Wombat.oaf.in deleted file mode 100644 index 1109cc0df6..0000000000 --- a/wombat/GNOME_Evolution_Wombat.oaf.in +++ /dev/null @@ -1,30 +0,0 @@ -<oaf_info> - -<oaf_server iid="OAFIID:evolution:addressbook-server:0fbc844d-c721-4615-98d0-d67eacf42d80" - type="exe" - location="wombat"> - - <oaf_attribute name="repo_ids" type="stringv"> - <item value="IDL:Evolution/BookFactory:1.0"/> - <item value="IDL:Bonobo/Unknown:1.0"/> - </oaf_attribute> - - <oaf_attribute name="description" type="string" - value="The Personal Addressbook Server"/> -</oaf_server> - -<oaf_server iid="OAFIID:evolution:calendar-factory:1c915858-ece3-4a6f-9d81-ea0f108a9554" - type="exe" - location="wombat"> - - <oaf_attribute name="repo_ids" type="stringv"> - <item value="IDL:Evolution/Calendar/CalFactory:1.0"/> - <item value="IDL:Bonobo/Unknown:1.0"/> - </oaf_attribute> - - <oaf_attribute name="description" type="string" - value="The Personal Calendar Server; calendar factory"/> - -</oaf_server> - -</oaf_info> diff --git a/wombat/GNOME_Evolution_Wombat.oafinfo b/wombat/GNOME_Evolution_Wombat.oafinfo deleted file mode 100644 index 1109cc0df6..0000000000 --- a/wombat/GNOME_Evolution_Wombat.oafinfo +++ /dev/null @@ -1,30 +0,0 @@ -<oaf_info> - -<oaf_server iid="OAFIID:evolution:addressbook-server:0fbc844d-c721-4615-98d0-d67eacf42d80" - type="exe" - location="wombat"> - - <oaf_attribute name="repo_ids" type="stringv"> - <item value="IDL:Evolution/BookFactory:1.0"/> - <item value="IDL:Bonobo/Unknown:1.0"/> - </oaf_attribute> - - <oaf_attribute name="description" type="string" - value="The Personal Addressbook Server"/> -</oaf_server> - -<oaf_server iid="OAFIID:evolution:calendar-factory:1c915858-ece3-4a6f-9d81-ea0f108a9554" - type="exe" - location="wombat"> - - <oaf_attribute name="repo_ids" type="stringv"> - <item value="IDL:Evolution/Calendar/CalFactory:1.0"/> - <item value="IDL:Bonobo/Unknown:1.0"/> - </oaf_attribute> - - <oaf_attribute name="description" type="string" - value="The Personal Calendar Server; calendar factory"/> - -</oaf_server> - -</oaf_info> diff --git a/wombat/Makefile.am b/wombat/Makefile.am deleted file mode 100644 index f5715e7aea..0000000000 --- a/wombat/Makefile.am +++ /dev/null @@ -1,58 +0,0 @@ -INCLUDES = \ - -DG_LOG_DOMAIN=\"wombat\" \ - -I$(top_srcdir)/e-util \ - -I$(top_srcdir) \ - -I$(top_srcdir)/addressbook/backend \ - -I$(top_builddir)/addressbook/backend \ - -I$(top_srcdir)/calendar \ - -I$(top_srcdir)/calendar/pcs \ - $(EXTRA_GNOME_CFLAGS) \ - $(GNOME_INCLUDEDIR) \ - -DEVOLUTION_VERSION=\""$(VERSION)"\" \ - -DEVOLUTION_LOCALEDIR=\""$(datadir)/locale"\" - -bin_PROGRAMS = \ - wombat - -wombat_SOURCES = \ - wombat.c - -wombat_LDADD = \ - $(EXTRA_GNOME_LIBS) \ - $(BONOBO_VFS_GNOME_LIBS) \ - $(top_builddir)/addressbook/backend/pas/libpas.a \ - $(top_builddir)/addressbook/backend/ebook/libebook.la \ - $(top_builddir)/addressbook/ename/libename.la \ - $(top_builddir)/calendar/pcs/libpcs.a \ - $(top_builddir)/libical/src/libical/libical.la \ - $(top_builddir)/calendar/cal-util/libcal-util.la \ - $(top_builddir)/libversit/libversit.la \ - $(top_builddir)/e-util/libeutil.la \ - -lgnomevfs \ - $(LDAP_LIBS) - -wombat_LDFLAGS = `gnome-config --libs gnorba` - -if USING_OAF -oafdir = $(datadir)/oaf -oaf_DATA = wombat.oafinfo -else -gnorbadir = $(sysconfdir)/CORBA/servers -gnorba_DATA = wombat.gnorba -endif - -EXTRA_DIST = \ - wombat.gnorba \ - wombat.oafinfo - -if ENABLE_PURIFY -PLINK = $(LIBTOOL) --mode=link $(PURIFY) $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ - -all-local: wombat.pure - -wombat.pure: wombat - @rm -f wombat.pure - $(PLINK) $(wombat_LDFLAGS) $(wombat_OBJECTS) $(wombat_LDADD) $(LIBS) - -endif - diff --git a/wombat/wombat.c b/wombat/wombat.c deleted file mode 100644 index 4eb5a39878..0000000000 --- a/wombat/wombat.c +++ /dev/null @@ -1,283 +0,0 @@ -/* Wombat personal information server - main file - * - * Author: Nat Friedman <nat@helixcode.com> - * - * Copyright 2000, Helix Code, Inc. - */ - -#include <config.h> -#include <bonobo.h> -#include <pas/pas-book-factory.h> -#include <pas/pas-backend-file.h> -#include <libgnomevfs/gnome-vfs-init.h> - -#ifdef HAVE_LDAP -#include <pas/pas-backend-ldap.h> -#endif - -#include "calendar/pcs/cal-factory.h" -#include "calendar/pcs/cal-backend-imc.h" - -/* The and addressbook calendar factories */ - -static CalFactory *cal_factory; -static PASBookFactory *pas_book_factory; - -/* Timeout interval in milliseconds for termination */ -#define EXIT_TIMEOUT 5000 - -/* Timeout ID for termination handler */ -static guint termination_handler_id; - - - -/* Termination */ - -/* Termination handler. Checks if both factories have zero running backends, - * and if so terminates the program. - */ -static gboolean -termination_handler (gpointer data) -{ - if (cal_factory_get_n_backends (cal_factory) == 0 - && pas_book_factory_get_n_backends (pas_book_factory) == 0) - gtk_main_quit (); - - termination_handler_id = 0; - return FALSE; -} - -/* Queues a timeout for handling termination of Wombat */ -static void -queue_termination (void) -{ - if (termination_handler_id) - return; - - termination_handler_id = g_timeout_add (EXIT_TIMEOUT, termination_handler, NULL); -} - - - -static void -last_book_gone_cb (PASBookFactory *factory, gpointer data) -{ - queue_termination (); -} - -static void -setup_pas (int argc, char **argv) -{ - pas_book_factory = pas_book_factory_new (); - - pas_book_factory_register_backend ( - pas_book_factory, "file", pas_backend_file_new); - -#ifdef HAVE_LDAP - pas_book_factory_register_backend ( - pas_book_factory, "ldap", pas_backend_ldap_new); -#endif - - gtk_signal_connect (GTK_OBJECT (pas_book_factory), - "last_book_gone", - GTK_SIGNAL_FUNC (last_book_gone_cb), - NULL); - - pas_book_factory_activate (pas_book_factory); -} - - - -/* Personal calendar server */ - -/* Callback used when the calendar factory has no more running backends */ -static void -last_calendar_gone_cb (CalFactory *factory, gpointer data) -{ - queue_termination (); -} - -#ifdef USING_OAF - -/* (For the OAF popt stuff, which otherwise does not get in.) */ -#include <gnome.h> - -#include <liboaf/liboaf.h> - -static gboolean -register_pcs (CORBA_Object obj) -{ - OAF_RegistrationResult result; - - result = oaf_active_server_register - ("OAFIID:evolution:calendar-factory:1c915858-ece3-4a6f-9d81-ea0f108a9554", - obj); - - switch (result) { - case OAF_REG_SUCCESS: - return TRUE; /* Wooho! */ - case OAF_REG_NOT_LISTED: - g_message ("Cannot register the PCS because not listed"); - return FALSE; - case OAF_REG_ALREADY_ACTIVE: - g_message ("Cannot register the PCS because already active"); - return FALSE; - case OAF_REG_ERROR: - default: - g_message ("Cannot register the PCS because we suck"); - return FALSE; - } -} - -#else /* USING_OAF */ - -#include <libgnorba/gnorba.h> - -static gboolean -register_pcs (CORBA_Object object) -{ - CORBA_Environment ev; - int result; - - CORBA_exception_init (&ev); - - result = goad_server_register (CORBA_OBJECT_NIL, - object, - "evolution:calendar-factory", - "object", - &ev); - - /* FIXME: should Wombat die if it gets errors here? */ - - if (ev._major != CORBA_NO_EXCEPTION || result == -1) { - g_message ("setup_pcs(): could not register the calendar factory"); - CORBA_exception_free (&ev); - return FALSE; - } - - if (result == -2) { - g_message ("setup_pcs(): a calendar factory is already registered"); - CORBA_exception_free (&ev); - return FALSE; - } - - CORBA_exception_free (&ev); - return TRUE; -} - -#endif /* USING_OAF */ - -/* Creates the calendar factory object and registers it with GOAD */ -static void -setup_pcs (int argc, char **argv) -{ - CORBA_Object object; - - cal_factory = cal_factory_new (); - - if (!cal_factory) { - g_message ("setup_pcs(): Could not create the calendar factory"); - return; - } - - cal_factory_register_method (cal_factory, "file", CAL_BACKEND_IMC_TYPE); - - object = bonobo_object_corba_objref (BONOBO_OBJECT (cal_factory)); - - if (! register_pcs (object)) { - bonobo_object_unref (BONOBO_OBJECT (cal_factory)); - cal_factory = NULL; - return; - } - - gtk_signal_connect (GTK_OBJECT (cal_factory), - "last_calendar_gone", - GTK_SIGNAL_FUNC (last_calendar_gone_cb), - NULL); -} - - - -static void -setup_config (int argc, char **argv) -{ -} - -static void -setup_vfs (int argc, char **argv) -{ - if (!gnome_vfs_init ()) { - g_message ("setup_vfs(): could not initialize GNOME-VFS"); - exit (EXIT_FAILURE); - } -} - - - -#ifdef USING_OAF - -static void -init_corba (int *argc, char **argv) -{ - gnome_init_with_popt_table ("Personal Addressbook Server", "0.0", - *argc, argv, oaf_popt_options, 0, NULL); - oaf_init (*argc, argv); -} - -#else - -static void -init_corba (int *argc, char **argv) -{ - CORBA_Environment ev; - - CORBA_exception_init (&ev); - - gnome_CORBA_init_with_popt_table ( - "Personal Addressbook Server", "0.0", - argc, argv, NULL, 0, NULL, GNORBA_INIT_SERVER_FUNC, &ev); - - if (ev._major != CORBA_NO_EXCEPTION) { - g_message ("init_bonobo(): could not initialize GOAD"); - CORBA_exception_free (&ev); - exit (EXIT_FAILURE); - } - - CORBA_exception_free (&ev); -} - -#endif - -static void -init_bonobo (int *argc, char **argv) -{ - init_corba (argc, argv); - - if (!bonobo_init (CORBA_OBJECT_NIL, CORBA_OBJECT_NIL, CORBA_OBJECT_NIL)) { - g_message ("init_bonobo(): could not initialize Bonobo"); - exit (EXIT_FAILURE); - } -} - -int -main (int argc, char **argv) -{ - init_bonobo (&argc, argv); - setup_vfs (argc, argv); - - setup_pas (argc, argv); - setup_pcs (argc, argv); - setup_config (argc, argv); - - /*g_log_set_always_fatal ((GLogLevelFlags) 0xFFFF);*/ - - bonobo_main (); - - bonobo_object_unref (BONOBO_OBJECT (cal_factory)); - cal_factory = NULL; - - bonobo_object_unref (BONOBO_OBJECT (pas_book_factory)); - pas_book_factory = NULL; - - return 0; -} diff --git a/wombat/wombat.gnorba b/wombat/wombat.gnorba deleted file mode 100644 index d170bebc15..0000000000 --- a/wombat/wombat.gnorba +++ /dev/null @@ -1,11 +0,0 @@ -[evolution:addressbook-server] -type=exe -repo_id=IDL:Evolution/BookFactory:1.0 IDL:Bonobo/Unknown:1.0 -description=The Personal Addressbook Server -location_info=wombat - -[evolution:calendar-factory] -type=exe -repo_id=IDL:Evolution/Calendar/CalFactory:1.0 IDL:Bonobo/Unknown:1.0 -description=The Personal Calendar Server; calendar factory -location_info=wombat diff --git a/wombat/wombat.idl b/wombat/wombat.idl deleted file mode 100644 index ab13b2cabf..0000000000 --- a/wombat/wombat.idl +++ /dev/null @@ -1,12 +0,0 @@ -/* - * The Evolution Personal Organization Server. - * - * Copyright 2000, Helix Code, Inc. - */ - -module Evolution { - - interface Config { - - }; -}; diff --git a/wombat/wombat.oafinfo b/wombat/wombat.oafinfo deleted file mode 100644 index 1109cc0df6..0000000000 --- a/wombat/wombat.oafinfo +++ /dev/null @@ -1,30 +0,0 @@ -<oaf_info> - -<oaf_server iid="OAFIID:evolution:addressbook-server:0fbc844d-c721-4615-98d0-d67eacf42d80" - type="exe" - location="wombat"> - - <oaf_attribute name="repo_ids" type="stringv"> - <item value="IDL:Evolution/BookFactory:1.0"/> - <item value="IDL:Bonobo/Unknown:1.0"/> - </oaf_attribute> - - <oaf_attribute name="description" type="string" - value="The Personal Addressbook Server"/> -</oaf_server> - -<oaf_server iid="OAFIID:evolution:calendar-factory:1c915858-ece3-4a6f-9d81-ea0f108a9554" - type="exe" - location="wombat"> - - <oaf_attribute name="repo_ids" type="stringv"> - <item value="IDL:Evolution/Calendar/CalFactory:1.0"/> - <item value="IDL:Bonobo/Unknown:1.0"/> - </oaf_attribute> - - <oaf_attribute name="description" type="string" - value="The Personal Calendar Server; calendar factory"/> - -</oaf_server> - -</oaf_info> |