[Galago-commits] r1980 - in branches/libgalago/glib-port: . libgalago tests

galago-commits at freedesktop.org galago-commits at freedesktop.org
Thu Jun 23 21:02:11 PDT 2005


Author: chipx86
Date: 2005-06-23 21:01:51 -0700 (Thu, 23 Jun 2005)
New Revision: 1980

Modified:
   branches/libgalago/glib-port/ChangeLog
   branches/libgalago/glib-port/libgalago/galago-account.c
   branches/libgalago/glib-port/libgalago/galago-account.h
   branches/libgalago/glib-port/libgalago/galago-avatar.c
   branches/libgalago/glib-port/libgalago/galago-core.c
   branches/libgalago/glib-port/libgalago/galago-dbus-compat.h
   branches/libgalago/glib-port/libgalago/galago-dbus.c
   branches/libgalago/glib-port/libgalago/galago-dbus.h
   branches/libgalago/glib-port/libgalago/galago-object.c
   branches/libgalago/glib-port/libgalago/galago-person.c
   branches/libgalago/glib-port/libgalago/galago-person.h
   branches/libgalago/glib-port/libgalago/galago-photo.c
   branches/libgalago/glib-port/libgalago/galago-presence.c
   branches/libgalago/glib-port/libgalago/galago.h
   branches/libgalago/glib-port/tests/check-libgalago.c
   branches/libgalago/glib-port/tests/get-presence.c
   branches/libgalago/glib-port/tests/monitor.c
Log:
The good thing about ending up in the wrong city and being on the bus for three hours is that you end up getting a lot of work done.


Modified: branches/libgalago/glib-port/ChangeLog
===================================================================
--- branches/libgalago/glib-port/ChangeLog	2005-06-23 08:22:03 UTC (rev 1979)
+++ branches/libgalago/glib-port/ChangeLog	2005-06-24 04:01:51 UTC (rev 1980)
@@ -1,3 +1,23 @@
+Thu Jun 23 21:00:24 PDT 2005  Christian Hammond <chipx86 at chipx86.com>
+
+	* libgalago/galago-account.c:
+	* libgalago/galago-account.h:
+	* libgalago/galago-avatar.c:
+	* libgalago/galago-core.c:
+	* libgalago/galago-dbus.c:
+	* libgalago/galago-dbus-compat.h:
+	* libgalago/galago-dbus.h:
+	* libgalago/galago.h:
+	* libgalago/galago-object.c:
+	* libgalago/galago-person.c:
+	* libgalago/galago-person.h:
+	* libgalago/galago-photo.c:
+	* libgalago/galago-presence.c:
+	* tests/check-libgalago.c:
+	* tests/get-presence.c:
+	* tests/monitor.c:
+	  - libgalago now compiles.
+
 Thu Jun 23 01:20:58 PDT 2005  Christian Hammond <chipx86 at chipx86.com>
 
 	* libgalago/Makefile.am:

Modified: branches/libgalago/glib-port/libgalago/galago-account.c
===================================================================
--- branches/libgalago/glib-port/libgalago/galago-account.c	2005-06-23 08:22:03 UTC (rev 1979)
+++ branches/libgalago/glib-port/libgalago/galago-account.c	2005-06-24 04:01:51 UTC (rev 1980)
@@ -84,7 +84,7 @@
 
 	parent_class = g_type_class_peek_parent(klass);
 
-	object_class->dbus_interface = GALAGO_DBUS_AVATAR_INTERFACE;
+	object_class->dbus_interface = GALAGO_DBUS_ACCOUNT_INTERFACE;
 
 	gobject_class->finalize = galago_account_finalize;
 
@@ -225,11 +225,11 @@
 
 	/* Service */
 	galago_dbus_message_iter_append_object(iter,
-		galago_account_get_service(account));
+		GALAGO_OBJECT(galago_account_get_service(account)));
 
 	/* Person */
 	galago_dbus_message_iter_append_object(iter,
-		galago_account_get_person(account));
+		GALAGO_OBJECT(galago_account_get_person(account)));
 
 	/* Username */
 	username = galago_account_get_username(account);

Modified: branches/libgalago/glib-port/libgalago/galago-account.h
===================================================================
--- branches/libgalago/glib-port/libgalago/galago-account.h	2005-06-23 08:22:03 UTC (rev 1979)
+++ branches/libgalago/glib-port/libgalago/galago-account.h	2005-06-24 04:01:51 UTC (rev 1980)
@@ -80,6 +80,8 @@
 #define GALAGO_ACCOUNT_GET_CLASS(obj) \
 		(G_TYPE_INSTANCE_GET_CLASS((obj), GALAGO_TYPE_ACCOUNT, GalagoAccountClass))
 
+#define GALAGO_DBUS_ACCOUNT_INTERFACE "org.freedesktop.Galago.Account"
+
 #ifdef __cplusplus
 extern "C" {
 #endif

Modified: branches/libgalago/glib-port/libgalago/galago-avatar.c
===================================================================
--- branches/libgalago/glib-port/libgalago/galago-avatar.c	2005-06-23 08:22:03 UTC (rev 1979)
+++ branches/libgalago/glib-port/libgalago/galago-avatar.c	2005-06-24 04:01:51 UTC (rev 1980)
@@ -92,7 +92,7 @@
 	size_t image_len;
 
 	galago_dbus_message_iter_append_object(iter,
-		galago_avatar_get_account(avatar));
+		GALAGO_OBJECT(galago_avatar_get_account(avatar)));
 
 	galago_avatar_get_image_data(avatar, &image_data, &image_len);
 	galago_dbus_message_iter_append_byte_array(iter, image_data, image_len);

Modified: branches/libgalago/glib-port/libgalago/galago-core.c
===================================================================
--- branches/libgalago/glib-port/libgalago/galago-core.c	2005-06-23 08:22:03 UTC (rev 1979)
+++ branches/libgalago/glib-port/libgalago/galago-core.c	2005-06-24 04:01:51 UTC (rev 1980)
@@ -64,8 +64,27 @@
 {
 	GalagoObjectClass parent_class;
 
+	/* Signals */
+	void (*registered)(GalagoCore *core);
+	void (*unregistered)(GalagoCore *core);
+	void (*service_added)(GalagoCore *core, GalagoService *service);
+	void (*service_removed)(GalagoCore *core, GalagoService *service);
+	void (*person_added)(GalagoCore *core, GalagoPerson *person);
+	void (*person_removed)(GalagoCore *core, GalagoPerson *person);
+
 } GalagoCoreClass;
 
+enum
+{
+	REGISTERED,
+	UNREGISTERED,
+	SERVICE_ADDED,
+	SERVICE_REMOVED,
+	PERSON_ADDED,
+	PERSON_REMOVED,
+	LAST_SIGNAL
+};
+
 #define GALAGO_DAEMON_ID "#galago-daemon#"
 
 static void _galago_core_disconnect(void);
@@ -79,17 +98,6 @@
 static GalagoCore *_core = NULL;
 static gboolean first_init = TRUE;
 
-/* D-BUS compatibility */
-typedef dbus_bool_t (*StartServiceFunc)(DBusConnection *, const char *,
-										dbus_uint32_t, dbus_uint32_t *,
-										DBusError *);
-
-#if GALAGO_CHECK_DBUS_VERSION(0, 30)
-StartServiceFunc start_service = dbus_bus_start_service_by_name;
-#else
-StartServiceFunc start_service = dbus_bus_activate_service;
-#endif
-
 static GalagoContextOps context_ops =
 {
 	_galago_dbus_core_add_service,
@@ -101,40 +109,111 @@
 /**************************************************************************
  * Object/Class support
  **************************************************************************/
-#define GALAGO_TYPE_CORE (galago_core_get_class())
+static void galago_core_finalize(GObject *gobject);
 
-GALAGO_REGISTER_CLASS(galago_core, GalagoCore, NULL,
-					  GALAGO_DBUS_CORE_INTERFACE);
+static GalagoObjectClass *parent_class = NULL;
+static guint signals[LAST_SIGNAL] = {0};
 
+#define GALAGO_TYPE_CORE (galago_core_get_type())
+
+G_DEFINE_TYPE(GalagoCore, galago_core, GALAGO_TYPE_OBJECT);
+
 static void
-galago_core_object_init(GalagoCore *core)
+galago_core_class_init(GalagoCoreClass *klass)
 {
-	_core = core;
+	GObjectClass     *gobject_class = G_OBJECT_CLASS(klass);
+	GalagoObjectClass *object_class = GALAGO_OBJECT_CLASS(klass);
 
-	galago_object_set_dbus_path(core, GALAGO_DBUS_CORE_OBJECT);
+	parent_class = g_type_class_peek_parent(klass);
 
-	galago_signals_init();
+	object_class->dbus_interface = GALAGO_DBUS_CORE_INTERFACE;
+
+	gobject_class->finalize = galago_core_finalize;
+
+	signals[REGISTERED] =
+		g_signal_new("registered",
+					 G_TYPE_FROM_CLASS(klass),
+					 G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION,
+					 G_STRUCT_OFFSET(GalagoCoreClass, registered),
+					 NULL, NULL,
+					 g_cclosure_marshal_VOID__VOID,
+					 G_TYPE_NONE, 0);
+
+	signals[UNREGISTERED] =
+		g_signal_new("unregistered",
+					 G_TYPE_FROM_CLASS(klass),
+					 G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION,
+					 G_STRUCT_OFFSET(GalagoCoreClass, unregistered),
+					 NULL, NULL,
+					 g_cclosure_marshal_VOID__VOID,
+					 G_TYPE_NONE, 0);
+
+	signals[SERVICE_ADDED] =
+		g_signal_new("service_added",
+					 G_TYPE_FROM_CLASS(klass),
+					 G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION,
+					 G_STRUCT_OFFSET(GalagoCoreClass, service_added),
+					 NULL, NULL,
+					 g_cclosure_marshal_VOID__POINTER,
+					 G_TYPE_NONE, 1,
+					 G_TYPE_POINTER);
+
+	signals[SERVICE_REMOVED] =
+		g_signal_new("service_removed",
+					 G_TYPE_FROM_CLASS(klass),
+					 G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION,
+					 G_STRUCT_OFFSET(GalagoCoreClass, service_removed),
+					 NULL, NULL,
+					 g_cclosure_marshal_VOID__POINTER,
+					 G_TYPE_NONE, 1,
+					 G_TYPE_POINTER);
+
+	signals[PERSON_ADDED] =
+		g_signal_new("person_added",
+					 G_TYPE_FROM_CLASS(klass),
+					 G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION,
+					 G_STRUCT_OFFSET(GalagoCoreClass, person_added),
+					 NULL, NULL,
+					 g_cclosure_marshal_VOID__POINTER,
+					 G_TYPE_NONE, 1,
+					 G_TYPE_POINTER);
+
+	signals[PERSON_REMOVED] =
+		g_signal_new("person_removed",
+					 G_TYPE_FROM_CLASS(klass),
+					 G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION,
+					 G_STRUCT_OFFSET(GalagoCoreClass, person_removed),
+					 NULL, NULL,
+					 g_cclosure_marshal_VOID__POINTER,
+					 G_TYPE_NONE, 1,
+					 G_TYPE_POINTER);
 }
 
 static void
-galago_core_object_finalize(GalagoObject *object)
+galago_core_init(GalagoCore *core)
 {
+	_core = core;
+
+	galago_object_set_dbus_path(GALAGO_OBJECT(core), GALAGO_DBUS_CORE_OBJECT);
+}
+
+static void
+galago_core_finalize(GObject *object)
+{
 	GalagoContext *context;
 
 	_galago_core_disconnect();
 
 	/*
-	 * Hack to prevent this object from beign removed from the
-	 * soon-to-be destroyed context after this function ends.
+	 * Prevent this object from beign removed from the soon-to-be
+	 * destroyed context after this function ends.
 	 */
-	galago_object_set_dbus_path(object, NULL);
+	galago_object_set_dbus_path(GALAGO_OBJECT(object), NULL);
 
 	context = galago_context_get();
 	galago_context_pop();
 	galago_context_destroy(context);
 
-	galago_signals_uninit();
-
 	if (_core->app_name != NULL)
 		g_free(_core->app_name);
 
@@ -143,31 +222,8 @@
 
 	if (_core->conn_obj_path != NULL)
 		g_free(_core->conn_obj_path);
-}
 
-static void
-galago_core_class_init(GalagoObjectClass *klass)
-{
-	klass->finalize = galago_core_object_finalize;
-
-	galago_signal_register(klass->signal_context, "registered",
-						   galago_marshal_VOID, 0);
-	galago_signal_register(klass->signal_context, "unregistered",
-						   galago_marshal_VOID, 0);
-	galago_signal_register(klass->signal_context, "service-added",
-						   galago_marshal_VOID__BOXED, 1,
-						   GALAGO_VALUE_TYPE_OBJECT);
-	galago_signal_register(klass->signal_context, "service-removed",
-						   galago_marshal_VOID__BOXED, 1,
-						   GALAGO_VALUE_TYPE_OBJECT);
-	galago_signal_register(klass->signal_context, "person-added",
-						   galago_marshal_VOID__BOXED, 1,
-						   GALAGO_VALUE_TYPE_OBJECT);
-	galago_signal_register(klass->signal_context, "person-removed",
-						   galago_marshal_VOID__BOXED, 1,
-						   GALAGO_VALUE_TYPE_OBJECT);
-	galago_signal_register(klass->signal_context, "updated",
-						   galago_marshal_VOID, 0);
+	G_OBJECT_CLASS(parent_class)->finalize(object);
 }
 
 /**************************************************************************
@@ -227,13 +283,14 @@
 			_core->daemon_active = FALSE;
 			_core->registered    = FALSE;
 
-			galago_signal_emit(_core, "unregistered");
+			g_signal_emit(_core, signals[UNREGISTERED], 0);
 		}
 
 		dbus_error_init(&error);
 
-		if (!start_service(_core->dbus_conn, GALAGO_DBUS_SERVICE, 0, NULL,
-						   &error))
+		if (!dbus_bus_start_service_by_name(_core->dbus_conn,
+											GALAGO_DBUS_SERVICE, 0, NULL,
+											&error))
 		{
 			galago_log_error("Received ServiceDoesNotExist, and cannot "
 							 "re-activate daemon. Disconnecting for now.\n");
@@ -306,7 +363,7 @@
 			_core->daemon_active = FALSE;
 			_core->registered    = FALSE;
 
-			galago_signal_emit(_core, "unregistered");
+			g_signal_emit(_core, signals[UNREGISTERED], 0);
 
 			if (galago_core_get_exit_with_daemon())
 			{
@@ -683,7 +740,8 @@
 		return TRUE;
 	}
 
-	if (!start_service(_core->dbus_conn, GALAGO_DBUS_SERVICE, 0, NULL, &error))
+	if (!dbus_bus_start_service_by_name(_core->dbus_conn, GALAGO_DBUS_SERVICE,
+										0, NULL, &error))
 	{
 		galago_log_error("Error activating Galago service: %s\n",
 						 error.message);
@@ -760,7 +818,7 @@
 	_core->registered    = FALSE;
 
 	if (!unregistered_emitted)
-		galago_signal_emit(_core, "unregistered");
+		g_signal_emit(_core, signals[UNREGISTERED], 0);
 }
 
 #ifdef HAVE_SIGNAL_H
@@ -785,7 +843,7 @@
 
 	if (_core != NULL)
 	{
-		galago_object_ref(_core);
+		g_object_ref(_core);
 
 		return TRUE;
 	}
@@ -795,7 +853,7 @@
 
 	galago_context_push(context);
 
-	_core = galago_object_new(GALAGO_TYPE_CORE);
+	_core = g_object_new(GALAGO_TYPE_CORE, NULL);
 
 	_core->app_name = g_strdup(name);
 	_core->feed = feed;
@@ -849,7 +907,8 @@
 	if (!galago_is_initted())
 		return;
 
-	_core = g_object_unref(_core);
+	/* TODO: Will need to check if the object has been finalized somewhere. */
+	g_object_unref(_core);
 }
 
 gboolean
@@ -1019,7 +1078,7 @@
 	g_return_if_fail(galago_is_initted());
 	g_return_if_fail(service != NULL);
 
-	galago_context_push(galago_object_get_context(_core));
+	galago_context_push(galago_object_get_context(GALAGO_OBJECT(_core)));
 	galago_context_add_service(service);
 	galago_context_pop();
 }
@@ -1030,7 +1089,7 @@
 	g_return_if_fail(galago_is_initted());
 	g_return_if_fail(service != NULL);
 
-	galago_context_push(galago_object_get_context(_core));
+	galago_context_push(galago_object_get_context(GALAGO_OBJECT(_core)));
 	galago_context_remove_service(service);
 	galago_context_pop();
 }
@@ -1043,21 +1102,19 @@
 	g_return_val_if_fail(galago_is_initted(), NULL);
 	g_return_val_if_fail(id != NULL,          NULL);
 
-	galago_context_push(galago_object_get_context(_core));
+	galago_context_push(galago_object_get_context(GALAGO_OBJECT(_core)));
 
 	service = galago_context_get_service(id, native);
 
 	if (query && service == NULL && !native && !galago_is_daemon() &&
 		galago_is_connected())
 	{
-		GalagoSignalContext *signal_context = GALAGO_SIGNAL_CONTEXT(_core);
-
-		galago_signal_context_freeze(signal_context);
+		/* TODO: Freeze signals */
 		service = galago_dbus_send_message_with_reply(_core, "GetService",
-			galago_value_new(GALAGO_VALUE_TYPE_OBJECT, NULL, GALAGO_TYPE_SERVICE),
+			galago_value_new_object(GALAGO_TYPE_SERVICE, NULL),
 			galago_value_new(GALAGO_VALUE_TYPE_STRING, &id, NULL),
 			NULL);
-		galago_signal_context_thaw(signal_context);
+		/* TODO: Thaw signals */
 	}
 
 	galago_context_pop();
@@ -1070,25 +1127,24 @@
 {
 	GList *services;
 
-	galago_context_push(galago_object_get_context(_core));
+	galago_context_push(galago_object_get_context(GALAGO_OBJECT(_core)));
 	services = galago_context_get_services(native);
 
 	if (query && !native && !galago_is_daemon() && galago_is_connected())
 	{
-		GalagoSignalContext *signal_context = GALAGO_SIGNAL_CONTEXT(_core);
 		GList *temp;
 
-		galago_signal_context_freeze(signal_context);
+		/* TODO: Freeze signals */
 
 		temp = galago_dbus_send_message_with_reply(_core, "GetServices",
 			galago_value_new_list(GALAGO_VALUE_TYPE_OBJECT, NULL,
-								  GALAGO_TYPE_SERVICE),
+								  (void *)GALAGO_TYPE_SERVICE),
 			NULL);
 		g_list_free(temp);
 
 		services = galago_context_get_services(native);
 
-		galago_signal_context_thaw(signal_context);
+		/* TODO: Thaw signals */
 	}
 
 	galago_context_pop();
@@ -1102,7 +1158,7 @@
 	g_return_if_fail(galago_is_initted());
 	g_return_if_fail(person != NULL);
 
-	galago_context_push(galago_object_get_context(_core));
+	galago_context_push(galago_object_get_context(GALAGO_OBJECT(_core)));
 	galago_context_add_person(person);
 	galago_context_pop();
 }
@@ -1113,7 +1169,7 @@
 	g_return_if_fail(galago_is_initted());
 	g_return_if_fail(person != NULL);
 
-	galago_context_push(galago_object_get_context(_core));
+	galago_context_push(galago_object_get_context(GALAGO_OBJECT(_core)));
 	galago_context_remove_person(person);
 	galago_context_pop();
 }
@@ -1126,21 +1182,19 @@
 	g_return_val_if_fail(galago_is_initted(), NULL);
 	g_return_val_if_fail(id != NULL,          NULL);
 
-	galago_context_push(galago_object_get_context(_core));
+	galago_context_push(galago_object_get_context(GALAGO_OBJECT(_core)));
 
 	person = galago_context_get_person(id, native);
 
 	if (query && person == NULL && !native && !galago_is_daemon() &&
 		galago_is_connected())
 	{
-		GalagoSignalContext *signal_context = GALAGO_SIGNAL_CONTEXT(_core);
-
-		galago_signal_context_freeze(signal_context);
+		/* TODO: Freeze signals */
 		person = galago_dbus_send_message_with_reply(_core, "GetPerson",
-			galago_value_new(GALAGO_VALUE_TYPE_OBJECT, NULL, GALAGO_TYPE_PERSON),
+			galago_value_new_object(GALAGO_TYPE_PERSON, NULL),
 			galago_value_new(GALAGO_VALUE_TYPE_STRING, &id, NULL),
 			NULL);
-		galago_signal_context_thaw(signal_context);
+		/* TODO: Thaw signals */
 	}
 
 	galago_context_pop();
@@ -1153,25 +1207,24 @@
 {
 	GList *people;
 
-	galago_context_push(galago_object_get_context(_core));
+	galago_context_push(galago_object_get_context(GALAGO_OBJECT(_core)));
 	people = galago_context_get_people(native);
 
 	if (query && !native && !galago_is_daemon() && galago_is_connected())
 	{
-		GalagoSignalContext *signal_context = GALAGO_SIGNAL_CONTEXT(_core);
 		GList *temp;
 
-		galago_signal_context_freeze(signal_context);
+		/* TODO: Freeze signals */
 
 		temp = galago_dbus_send_message_with_reply(_core, "GetPeople",
 			galago_value_new_list(GALAGO_VALUE_TYPE_OBJECT, NULL,
-								  GALAGO_TYPE_PERSON),
+								  (void *)GALAGO_TYPE_PERSON),
 			NULL);
 		g_list_free(temp);
 
 		people = galago_context_get_people(native);
 
-		galago_signal_context_thaw(signal_context);
+		/* TODO: Thaw signals */
 	}
 
 	galago_context_pop();
@@ -1186,20 +1239,18 @@
 
 	g_return_val_if_fail(galago_is_initted(), NULL);
 
-	galago_context_push(galago_object_get_context(_core));
+	galago_context_push(galago_object_get_context(GALAGO_OBJECT(_core)));
 
 	me = galago_core_get_person(GALAGO_ME_ID, native, FALSE);
 
 	if (query && me == NULL && !native && !galago_is_daemon() &&
 		galago_is_connected())
 	{
-		GalagoSignalContext *signal_context = GALAGO_SIGNAL_CONTEXT(_core);
-
-		galago_signal_context_freeze(signal_context);
+		/* TODO: Freeze signals */
 		me = galago_dbus_send_message_with_reply(_core, "GetMe",
-			galago_value_new(GALAGO_VALUE_TYPE_OBJECT, NULL, GALAGO_TYPE_PERSON),
+			galago_value_new_object(GALAGO_TYPE_PERSON, NULL),
 			NULL);
-		galago_signal_context_thaw(signal_context);
+		/* TODO: Thaw signals */
 	}
 
 	galago_context_pop();
@@ -1256,7 +1307,7 @@
 	galago_core_set_watch_all(TRUE);
 	_core->registered = TRUE;
 
-	galago_signal_emit(_core, "registered");
+	g_signal_emit(_core, signals[REGISTERED], 0);
 
 	return TRUE;
 }
@@ -1277,7 +1328,7 @@
 
 	_core->registered = FALSE;
 
-	galago_signal_emit(_core, "unregistered");
+	g_signal_emit(_core, signals[UNREGISTERED], 0);
 }
 
 static void
@@ -1287,8 +1338,7 @@
 	DBusMessage *message;
 	DBusMessageIter iter;
 
-	galago_signal_emit(_core, "service-added", service);
-	galago_signal_emit(_core, "updated");
+	g_signal_emit(_core, signals[SERVICE_ADDED], 0, service);
 
 	if (!galago_is_connected() || !galago_core_is_feed() ||
 		!galago_service_is_native(service))
@@ -1308,7 +1358,7 @@
 	dbus_message_set_no_reply(message, TRUE);
 
 	dbus_message_iter_init_append(message, &iter);
-	galago_dbus_message_iter_append_object(&iter, service);
+	galago_dbus_message_iter_append_object(&iter, GALAGO_OBJECT(service));
 
 	dbus_connection_send(dbus_conn, message, NULL);
 	dbus_message_unref(message);
@@ -1321,8 +1371,7 @@
 	DBusMessage *message;
 	DBusMessageIter iter;
 
-	galago_signal_emit(_core, "service-removed", service);
-	galago_signal_emit(_core, "updated");
+	g_signal_emit(_core, signals[SERVICE_REMOVED], 0, service);
 
 	if (!galago_is_connected() || !galago_core_is_feed() ||
 		!galago_service_is_native(service))
@@ -1342,7 +1391,7 @@
 	dbus_message_set_no_reply(message, TRUE);
 
 	dbus_message_iter_init_append(message, &iter);
-	galago_dbus_message_iter_append_object(&iter, service);
+	galago_dbus_message_iter_append_object(&iter, GALAGO_OBJECT(service));
 
 	dbus_connection_send(dbus_conn, message, NULL);
 	dbus_message_unref(message);
@@ -1355,8 +1404,7 @@
 	DBusMessage *message;
 	DBusMessageIter iter;
 
-	galago_signal_emit(_core, "person-added", person);
-	galago_signal_emit(_core, "updated");
+	g_signal_emit(_core, signals[PERSON_ADDED], 0, person);
 
 	if (!galago_is_connected() || !galago_core_is_feed() ||
 		!galago_person_is_native(person))
@@ -1376,7 +1424,7 @@
 	dbus_message_set_no_reply(message, TRUE);
 
 	dbus_message_iter_init_append(message, &iter);
-	galago_dbus_message_iter_append_object(&iter, person);
+	galago_dbus_message_iter_append_object(&iter, GALAGO_OBJECT(person));
 
 	dbus_connection_send(dbus_conn, message, NULL);
 	dbus_message_unref(message);
@@ -1389,8 +1437,7 @@
 	DBusMessage *message;
 	DBusMessageIter iter;
 
-	galago_signal_emit(_core, "person-removed", person);
-	galago_signal_emit(_core, "updated");
+	g_signal_emit(_core, signals[PERSON_REMOVED], 0, person);
 
 	if (!galago_is_connected() || !galago_core_is_feed() ||
 		!galago_person_is_native(person))
@@ -1410,7 +1457,7 @@
 	dbus_message_set_no_reply(message, TRUE);
 
 	dbus_message_iter_init_append(message, &iter);
-	galago_dbus_message_iter_append_object(&iter, person);
+	galago_dbus_message_iter_append_object(&iter, GALAGO_OBJECT(person));
 
 	dbus_connection_send(dbus_conn, message, NULL);
 	dbus_message_unref(message);

Modified: branches/libgalago/glib-port/libgalago/galago-dbus-compat.h
===================================================================
--- branches/libgalago/glib-port/libgalago/galago-dbus-compat.h	2005-06-23 08:22:03 UTC (rev 1979)
+++ branches/libgalago/glib-port/libgalago/galago-dbus-compat.h	2005-06-24 04:01:51 UTC (rev 1980)
@@ -87,6 +87,8 @@
 
 # define dbus_message_iter_init_append(msg, iter) \
 	dbus_message_iter_init(msg, iter)
+# define dbus_bus_start_service_by_name(dbus_conn, service, flags, reply, error) \
+	dbus_bus_activate_service((dbus_conn), (service), (flags), (reply), (error))
 
 # define galago_dbus_message_iter_append_byte(iter, val) \
 	dbus_message_iter_append_byte((iter), (val))

Modified: branches/libgalago/glib-port/libgalago/galago-dbus.c
===================================================================
--- branches/libgalago/glib-port/libgalago/galago-dbus.c	2005-06-23 08:22:03 UTC (rev 1979)
+++ branches/libgalago/glib-port/libgalago/galago-dbus.c	2005-06-24 04:01:51 UTC (rev 1980)
@@ -61,14 +61,14 @@
 
 void
 galago_dbus_message_iter_append_object(DBusMessageIter *iter,
-									   const void *object)
+									   const GalagoObject *object)
 {
 	GalagoObjectClass *klass;
 
 	g_return_if_fail(iter != NULL);
 	g_return_if_fail(object != NULL && GALAGO_IS_OBJECT(object));
 
-	klass = GALAGO_OBJECT_CLASS(object);
+	klass = GALAGO_OBJECT_GET_CLASS(object);
 
 	if (klass->dbus_message_append != NULL)
 	{
@@ -88,7 +88,7 @@
 		galago_log_error("Class type %s passed to "
 						 "galago_dbus_message_iter_append_object does not "
 						 "implement dbus_message_append!\n",
-						 galago_class_get_name(klass));
+						 g_type_name(G_OBJECT_CLASS_TYPE(klass)));
 	}
 }
 
@@ -135,22 +135,26 @@
 }
 
 void *
-galago_dbus_message_iter_get_object(DBusMessageIter *iter, GType *type)
+galago_dbus_message_iter_get_object(DBusMessageIter *iter, GType type)
 {
 	GalagoObject *object;
+	GalagoObjectClass *klass;
 #if GALAGO_CHECK_DBUS_VERSION(0, 30)
 	DBusMessageIter temp_iter;
 #endif
 
-	g_return_val_if_fail(iter  != NULL, NULL);
-	g_return_val_if_fail(klass != NULL, NULL);
+	g_return_val_if_fail(iter != NULL, NULL);
 
+	klass = g_type_class_ref(type);
+
 	if (klass->dbus_message_get == NULL)
 	{
 		galago_log_error("Class type %s passed to "
 						 "galago_dbus_message_iter_get_object does not "
 						 "implement dbus_message_get!\n",
-						 galago_class_get_name(klass));
+						 g_type_name(type));
+
+		g_type_class_unref(klass);
 		return NULL;
 	}
 
@@ -161,6 +165,7 @@
 
 	object = klass->dbus_message_get(iter);
 
+	g_type_class_unref(klass);
 	return object;
 }
 
@@ -175,7 +180,6 @@
 #endif
 
 	g_return_val_if_fail(iter  != NULL, NULL);
-	g_return_val_if_fail(klass != NULL, NULL);
 
 #if 0 && GALAGO_CHECK_DBUS_VERSION(0, 30)
 	dbus_message_iter_recurse(iter, &array_iter);
@@ -414,14 +418,14 @@
 	klass = GALAGO_OBJECT_CLASS(object);
 
 	obj_path = galago_object_get_dbus_path(object);
-	iface    = galago_class_get_dbus_iface(klass);
+	iface    = klass->dbus_interface;
 
 	if (obj_path == NULL)
 	{
 		galago_log_error(
 			"No object path was registered for class '%s'. "
 			"Please report this.\n",
-			galago_class_get_name(klass));
+			g_type_name(G_OBJECT_CLASS_TYPE(klass)));
 
 		return NULL;
 	}
@@ -431,7 +435,7 @@
 		galago_log_error(
 			"No D-BUS interface was registered for class '%s'. "
 			"Please report this.\n",
-			galago_class_get_name(klass));
+			g_type_name(G_OBJECT_CLASS_TYPE(klass)));
 
 		return NULL;
 	}
@@ -535,7 +539,7 @@
 			{
 				case GALAGO_VALUE_TYPE_OBJECT:
 					retval = galago_dbus_message_iter_get_object_list(iter,
-						galago_value_get_object_class(value));
+						galago_value_get_gtype(value));
 					break;
 
 				default:
@@ -548,7 +552,7 @@
 
 		case GALAGO_VALUE_TYPE_OBJECT:
 			retval = galago_dbus_message_iter_get_object(iter,
-				galago_value_get_object_class(value));
+				galago_value_get_gtype(value));
 			break;
 
 		default:
@@ -622,7 +626,7 @@
 		if (!dbus_error_has_name(&error, GALAGO_DBUS_ERROR_OBJECT_NOT_FOUND))
 		{
 			galago_log_error("Error sending %s.%s: %s\n",
-							 galago_class_get_name(GALAGO_OBJECT_CLASS(object)),
+							 g_type_name(G_OBJECT_TYPE(object)),
 							 name, error.message);
 		}
 
@@ -707,7 +711,7 @@
 		galago_log_error("Class type %s passed to "
 						 "galago_dbus_object_push_full does not "
 						 "implement dbus_push_full!\n",
-						 galago_class_get_name(klass));
+						 g_type_name(G_OBJECT_CLASS_TYPE(klass)));
 	}
 }
 

Modified: branches/libgalago/glib-port/libgalago/galago-dbus.h
===================================================================
--- branches/libgalago/glib-port/libgalago/galago-dbus.h	2005-06-23 08:22:03 UTC (rev 1979)
+++ branches/libgalago/glib-port/libgalago/galago-dbus.h	2005-06-24 04:01:51 UTC (rev 1980)
@@ -68,7 +68,7 @@
  * @param object The object to append.
  */
 void galago_dbus_message_iter_append_object(DBusMessageIter *iter,
-											const void *object);
+											const GalagoObject *object);
 
 /**
  * Appends a list of objects to a D-BUS message.

Modified: branches/libgalago/glib-port/libgalago/galago-object.c
===================================================================
--- branches/libgalago/glib-port/libgalago/galago-object.c	2005-06-23 08:22:03 UTC (rev 1979)
+++ branches/libgalago/glib-port/libgalago/galago-object.c	2005-06-24 04:01:51 UTC (rev 1980)
@@ -38,7 +38,16 @@
 	gboolean watched;
 };
 
+enum
+{
+	PROP_CONTEXT
+};
+
 static void galago_object_finalize(GObject *gobject);
+static void galago_object_set_property(GObject *gobject, guint prop_id,
+									   const GValue *value, GParamSpec *pspec);
+static void galago_object_get_property(GObject *gobject, guint prop_id,
+									   GValue *value, GParamSpec *pspec);
 
 static GObjectClass *parent_class = NULL;
 
@@ -51,13 +60,21 @@
 
 	parent_class = g_type_class_peek_parent(klass);
 
-	gobject_class->finalize = galago_object_finalize;
+	gobject_class->finalize     = galago_object_finalize;
+	gobject_class->set_property = galago_object_set_property;
+	gobject_class->get_property = galago_object_get_property;
+
+	g_object_class_install_property(gobject_class, PROP_CONTEXT,
+		g_param_spec_pointer("context", "Context",
+							 "The GalagoContext this object belongs to",
+							 G_PARAM_READABLE));
 }
 
 static void
 galago_object_init(GalagoObject *object)
 {
 	object->priv = g_new0(GalagoObjectPrivate, 1);
+	object->priv->context = galago_context_get();
 }
 
 static void
@@ -67,8 +84,42 @@
 
 	if (object->priv != NULL)
 		g_free(object->priv);
+
+	G_OBJECT_CLASS(parent_class)->finalize(gobject);
 }
 
+static void
+galago_object_set_property(GObject *gobject, guint prop_id,
+						   const GValue *value, GParamSpec *pspec)
+{
+	/* GalagoObject *object = GALAGO_OBJECT(gobject); */
+
+	switch (prop_id)
+	{
+		default:
+			G_OBJECT_WARN_INVALID_PROPERTY_ID(gobject, prop_id, pspec);
+			break;
+	}
+}
+
+static void
+galago_object_get_property(GObject *gobject, guint prop_id, GValue *value,
+						   GParamSpec *pspec)
+{
+	GalagoObject *object = GALAGO_OBJECT(gobject);
+
+	switch (prop_id)
+	{
+		case PROP_CONTEXT:
+			g_value_set_pointer(value, galago_object_get_context(object));
+			break;
+
+		default:
+			G_OBJECT_WARN_INVALID_PROPERTY_ID(gobject, prop_id, pspec);
+			break;
+	}
+}
+
 void
 galago_object_set_dbus_path(GalagoObject *object, const gchar *obj_path)
 {

Modified: branches/libgalago/glib-port/libgalago/galago-person.c
===================================================================
--- branches/libgalago/glib-port/libgalago/galago-person.c	2005-06-23 08:22:03 UTC (rev 1979)
+++ branches/libgalago/glib-port/libgalago/galago-person.c	2005-06-24 04:01:51 UTC (rev 1980)
@@ -52,6 +52,12 @@
 
 } AccountCacheKey;
 
+enum
+{
+	PHOTO_SET,
+	LAST_SIGNAL
+};
+
 static GalagoPerson *_galago_person_new_common(const char *id,
 											   gboolean native,
 											   gboolean me,
@@ -68,10 +74,45 @@
 /**************************************************************************
  * Object/Class support
  **************************************************************************/
-GALAGO_REGISTER_CLASS(galago_person, GalagoPerson, NULL,
-					  GALAGO_DBUS_PERSON_INTERFACE);
+static void galago_person_finalize(GObject *gobject);
+static void galago_person_dbus_message_append(DBusMessageIter *iter,
+											   const GalagoObject *object);
+static void *galago_person_dbus_message_get(DBusMessageIter *iter);
+static void galago_person_dbus_push_full(GalagoObject *object);
 
+static GalagoObjectClass *parent_class = NULL;
+static guint signals[LAST_SIGNAL] = {0};
+
+G_DEFINE_TYPE(GalagoPerson, galago_person, GALAGO_TYPE_OBJECT);
+
 static void
+galago_person_class_init(GalagoPersonClass *klass)
+{
+	GObjectClass     *gobject_class = G_OBJECT_CLASS(klass);
+	GalagoObjectClass *object_class = GALAGO_OBJECT_CLASS(klass);
+
+	parent_class = g_type_class_peek_parent(klass);
+
+	object_class->dbus_interface = GALAGO_DBUS_PERSON_INTERFACE;
+
+	gobject_class->finalize = galago_person_finalize;
+
+	object_class->dbus_message_append = galago_person_dbus_message_append;
+	object_class->dbus_message_get    = galago_person_dbus_message_get;
+	object_class->dbus_push_full      = galago_person_dbus_push_full;
+
+	signals[PHOTO_SET] =
+		g_signal_new("photo_set",
+					 G_TYPE_FROM_CLASS(klass),
+					 G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION,
+					 G_STRUCT_OFFSET(GalagoPersonClass, photo_set),
+					 NULL, NULL,
+					 g_cclosure_marshal_VOID__POINTER,
+					 G_TYPE_NONE, 1,
+					 G_TYPE_POINTER);
+}
+
+static void
 cache_key_free(AccountCacheKey *key)
 {
 	if (key->username != NULL)
@@ -81,7 +122,7 @@
 }
 
 static void
-galago_person_object_init(GalagoPerson *person)
+galago_person_init(GalagoPerson *person)
 {
 	person->priv = g_new0(GalagoPersonPrivate, 1);
 
@@ -91,7 +132,7 @@
 }
 
 static void
-galago_person_object_finalize(GalagoObject *object)
+galago_person_finalize(GObject *object)
 {
 	GalagoPerson *person = (GalagoPerson *)object;
 
@@ -107,7 +148,7 @@
 	if (person->priv->properties_table != NULL)
 		g_hash_table_destroy(person->priv->properties_table);
 
-	galago_context_push(galago_object_get_context(person));
+	galago_context_push(galago_object_get_context(GALAGO_OBJECT(person)));
 	galago_context_remove_person(person);
 	galago_context_pop();
 
@@ -115,6 +156,8 @@
 		g_free(person->priv->id);
 
 	g_free(person->priv);
+
+	G_OBJECT_CLASS(parent_class)->finalize(object);
 }
 
 static void
@@ -125,7 +168,7 @@
 	const char *obj_path, *id;
 	gboolean is_me;
 
-	obj_path = galago_object_get_dbus_path(person);
+	obj_path = galago_object_get_dbus_path(GALAGO_OBJECT(person));
 	id       = galago_person_get_id(person);
 	is_me    = galago_person_is_me(person);
 
@@ -186,22 +229,7 @@
 	/* NOTE: Accounts are already handled by this point. */
 }
 
-static void
-galago_person_class_init(GalagoObjectClass *klass)
-{
-	klass->finalize            = galago_person_object_finalize;
-	klass->dbus_message_append = galago_person_dbus_message_append;
-	klass->dbus_message_get    = galago_person_dbus_message_get;
-	klass->dbus_push_full      = galago_person_dbus_push_full;
 
-	galago_signal_register(klass->signal_context, "photo-set",
-						   galago_marshal_VOID__POINTER, 1,
-						   GALAGO_VALUE_TYPE_OBJECT);
-	galago_signal_register(klass->signal_context, "updated",
-						   galago_marshal_VOID, 0);
-}
-
-
 /**************************************************************************
  * GalagoPerson API
  **************************************************************************/
@@ -220,7 +248,8 @@
 	{
 		const char *obj_prefix;
 
-		person = galago_object_new(GALAGO_TYPE_PERSON);
+		/* TODO: Context */
+		person = g_object_new(GALAGO_TYPE_PERSON, NULL);
 
 		person->priv->id     = g_strdup(id);
 		person->priv->native = native;
@@ -228,7 +257,7 @@
 
 		if (obj_path != NULL)
 		{
-			galago_object_set_dbus_path(person, obj_path);
+			galago_object_set_dbus_path(GALAGO_OBJECT(person), obj_path);
 		}
 		else if ((obj_prefix = galago_context_get_obj_path_prefix()) != NULL)
 		{
@@ -248,7 +277,7 @@
 			snprintf(new_obj_path, len, "%s/people/%s", obj_prefix,
 					 escaped_id);
 
-			galago_object_set_dbus_path(person, new_obj_path);
+			galago_object_set_dbus_path(GALAGO_OBJECT(person), new_obj_path);
 
 			g_free(new_obj_path);
 		}
@@ -370,8 +399,7 @@
 	if (galago_person_is_native(person))
 		_galago_dbus_person_set_photo(person, photo);
 
-	galago_signal_emit(person, "photo-set", photo);
-	galago_signal_emit(person, "updated");
+	g_signal_emit(person, signals[PHOTO_SET], 0, photo);
 }
 
 GalagoPhoto *
@@ -384,14 +412,12 @@
 		!galago_person_is_native(person) && !galago_is_daemon() &&
 		galago_is_connected())
 	{
-		GalagoSignalContext *signal_context = GALAGO_SIGNAL_CONTEXT(person);
-
-		galago_signal_context_freeze(signal_context);
+		/* TODO: Freeze signals */
 		person->priv->photo =
 			galago_dbus_send_message_with_reply(person, "GetPhoto",
-				galago_value_new(GALAGO_VALUE_TYPE_OBJECT, NULL, GALAGO_TYPE_PHOTO),
+				galago_value_new_object(GALAGO_TYPE_PHOTO, NULL),
 				NULL);
-		galago_signal_context_thaw(signal_context);
+		/* TODO: Thaw signals */
 	}
 
 	return person->priv->photo;
@@ -430,12 +456,12 @@
 	{
 		GList *temp;
 
-		galago_context_push(galago_object_get_context(person));
+		galago_context_push(galago_object_get_context(GALAGO_OBJECT(person)));
 		/* galago_signal_context_freeze(signal_context); */
 
 		temp = galago_dbus_send_message_with_reply(person, "GetAccounts",
 			galago_value_new_list(GALAGO_VALUE_TYPE_OBJECT, NULL,
-								  GALAGO_TYPE_ACCOUNT),
+								  (void *)GALAGO_TYPE_ACCOUNT),
 			NULL);
 		g_list_free(temp);
 
@@ -515,8 +541,7 @@
 	person->priv->accounts = g_list_append(person->priv->accounts, account);
 
 #if 0
-	galago_signal_emit(service, "account-added", account);
-	galago_signal_emit(service, "updated");
+	g_signal_emit(person, signals[ACCOUNT_ADDED], 0, account);
 #endif
 }
 
@@ -545,8 +570,7 @@
 	person->priv->accounts = g_list_remove(person->priv->accounts, account);
 
 #if 0
-	galago_signal_emit(person, "account-removed", account);
-	galago_signal_emit(person, "updated");
+	g_signal_emit(person, signals[ACCOUNT_REMOVED], 0, account);
 #endif
 }
 
@@ -577,13 +601,12 @@
 		!galago_person_is_native(person) && !galago_is_daemon() &&
 		galago_is_connected())
 	{
-		galago_context_push(galago_object_get_context(person));
+		galago_context_push(galago_object_get_context(GALAGO_OBJECT(person)));
 		/* galago_signal_context_freeze(signal_context); */
 
 		account = galago_dbus_send_message_with_reply(person, "GetAccount",
-			galago_value_new(GALAGO_VALUE_TYPE_OBJECT, NULL, GALAGO_TYPE_ACCOUNT),
-			galago_value_new(GALAGO_VALUE_TYPE_OBJECT, &service,
-							 GALAGO_TYPE_SERVICE),
+			galago_value_new_object(GALAGO_TYPE_ACCOUNT, NULL),
+			galago_value_new_object(GALAGO_TYPE_SERVICE, G_OBJECT(service)),
 			galago_value_new(GALAGO_VALUE_TYPE_STRING, &username, NULL),
 			NULL);
 
@@ -796,7 +819,7 @@
 	else
 	{
 		galago_dbus_send_message(person, "SetPhoto",
-			galago_value_new(GALAGO_VALUE_TYPE_OBJECT, &photo, GALAGO_TYPE_PHOTO),
+			galago_value_new_object(GALAGO_TYPE_PHOTO, G_OBJECT(photo)),
 			NULL);
 	}
 }

Modified: branches/libgalago/glib-port/libgalago/galago-person.h
===================================================================
--- branches/libgalago/glib-port/libgalago/galago-person.h	2005-06-23 08:22:03 UTC (rev 1979)
+++ branches/libgalago/glib-port/libgalago/galago-person.h	2005-06-24 04:01:51 UTC (rev 1980)
@@ -53,6 +53,9 @@
 {
 	GalagoObjectClass parent_class;
 
+	/* Signals */
+	void (*photo_set)(GalagoPerson *person, GalagoPhoto *photo);
+
 	void (*reserved_1)(void);
 	void (*reserved_2)(void);
 	void (*reserved_3)(void);

Modified: branches/libgalago/glib-port/libgalago/galago-photo.c
===================================================================
--- branches/libgalago/glib-port/libgalago/galago-photo.c	2005-06-23 08:22:03 UTC (rev 1979)
+++ branches/libgalago/glib-port/libgalago/galago-photo.c	2005-06-24 04:01:51 UTC (rev 1980)
@@ -91,7 +91,7 @@
 	size_t image_len;
 
 	galago_dbus_message_iter_append_object(iter,
-		galago_photo_get_person(photo));
+		GALAGO_OBJECT(galago_photo_get_person(photo)));
 
 	galago_photo_get_image_data(photo, &image_data, &image_len);
 	galago_dbus_message_iter_append_byte_array(iter, image_data, image_len);

Modified: branches/libgalago/glib-port/libgalago/galago-presence.c
===================================================================
--- branches/libgalago/glib-port/libgalago/galago-presence.c	2005-06-23 08:22:03 UTC (rev 1979)
+++ branches/libgalago/glib-port/libgalago/galago-presence.c	2005-06-24 04:01:51 UTC (rev 1980)
@@ -170,7 +170,7 @@
 	dbus_uint32_t idle_time;
 
 	galago_dbus_message_iter_append_object(iter,
-		galago_presence_get_account(presence));
+		GALAGO_OBJECT(galago_presence_get_account(presence)));
 
 	is_idle = galago_presence_is_idle(presence);
 	galago_dbus_message_iter_append_boolean(iter, is_idle);

Modified: branches/libgalago/glib-port/libgalago/galago.h
===================================================================
--- branches/libgalago/glib-port/libgalago/galago.h	2005-06-23 08:22:03 UTC (rev 1979)
+++ branches/libgalago/glib-port/libgalago/galago.h	2005-06-24 04:01:51 UTC (rev 1980)
@@ -29,12 +29,10 @@
 #include <libgalago/galago-dbus.h>
 #include <libgalago/galago-log.h>
 #include <libgalago/galago-object.h>
-#include <libgalago/galago-object-utils.h>
 #include <libgalago/galago-person.h>
 #include <libgalago/galago-photo.h>
 #include <libgalago/galago-presence.h>
 #include <libgalago/galago-service.h>
-#include <libgalago/galago-signals.h>
 #include <libgalago/galago-status.h>
 #include <libgalago/galago-utils.h>
 

Modified: branches/libgalago/glib-port/tests/check-libgalago.c
===================================================================
--- branches/libgalago/glib-port/tests/check-libgalago.c	2005-06-23 08:22:03 UTC (rev 1979)
+++ branches/libgalago/glib-port/tests/check-libgalago.c	2005-06-24 04:01:51 UTC (rev 1980)
@@ -60,21 +60,6 @@
 
 
 /**************************************************************************
- * Object tests
- **************************************************************************/
-START_TEST(test_object_abstract)
-{
-	galago_log_set_enabled(GALAGO_LOG_ERROR, FALSE);
-
-	fail_unless(galago_object_new(GALAGO_CLASS_IMAGE) == NULL,
-				"Created abstract object. This shouldn't happen!");
-
-	galago_log_set_enabled(GALAGO_LOG_ERROR, TRUE);
-}
-END_TEST
-
-
-/**************************************************************************
  * Core tests
  **************************************************************************/
 START_TEST(test_core)
@@ -105,9 +90,6 @@
 	/* libgalago tests */
 	ADD_TCASE("init_reinit", test_init_reinit);
 
-	/* object tests */
-	ADD_TCASE("object_abstract", test_object_abstract);
-
 	return s;
 }
 

Modified: branches/libgalago/glib-port/tests/get-presence.c
===================================================================
--- branches/libgalago/glib-port/tests/get-presence.c	2005-06-23 08:22:03 UTC (rev 1979)
+++ branches/libgalago/glib-port/tests/get-presence.c	2005-06-24 04:01:51 UTC (rev 1980)
@@ -103,7 +103,7 @@
 			status = (GalagoStatus *)l->data;
 
 			printf("\tType:    %s\n",
-				   get_name_from_status_type(galago_status_get_type(status)));
+				   get_name_from_status_type(galago_status_get_primitive(status)));
 			printf("\tID:      %s\n", galago_status_get_id(status));
 			printf("\tName:    %s\n", galago_status_get_name(status));
 		}

Modified: branches/libgalago/glib-port/tests/monitor.c
===================================================================
--- branches/libgalago/glib-port/tests/monitor.c	2005-06-23 08:22:03 UTC (rev 1979)
+++ branches/libgalago/glib-port/tests/monitor.c	2005-06-24 04:01:51 UTC (rev 1980)
@@ -23,6 +23,7 @@
 #include <stdio.h>
 #include <string.h>
 
+#if 0
 static void
 account_added_cb(GalagoService *service, const char *property,
 				 GalagoAccount *account, void *user_data)
@@ -40,6 +41,7 @@
 		   galago_account_get_username(account),
 		   galago_service_get_id(service));
 }
+#endif
 
 int
 main(int argc, char **argv)
@@ -59,10 +61,12 @@
 
 	galago_core_set_watch_all(TRUE);
 
+#if 0
 	galago_signal_connect_class(GALAGO_CLASS_SERVICE, "account-added",
 								G_CALLBACK(account_added_cb), NULL);
 	galago_signal_connect_class(GALAGO_CLASS_SERVICE, "account-removed",
 								G_CALLBACK(account_removed_cb), NULL);
+#endif
 
 	g_main_loop_run(loop);
 



More information about the galago-commits mailing list