summaryrefslogtreecommitdiffstats
path: root/src/ck-manager.c
diff options
context:
space:
mode:
authorWilliam Jon McCann <mccann@jhu.edu>2007-10-21 23:59:32 -0400
committerWilliam Jon McCann <mccann@jhu.edu>2007-10-21 23:59:32 -0400
commite419ced301a9e0d5f98c8cee030fe50158a2d291 (patch)
treecf8b51539f16f06911d11c4ff2ba66eed5fb193c /src/ck-manager.c
parent7880c2eacaa45196b83a9032371f487f6fe312e4 (diff)
add last mode, filtering by user/seat; shorten logged ids
Diffstat (limited to 'src/ck-manager.c')
-rw-r--r--src/ck-manager.c34
1 files changed, 24 insertions, 10 deletions
diff --git a/src/ck-manager.c b/src/ck-manager.c
index 0dba42a..79c7c91 100644
--- a/src/ck-manager.c
+++ b/src/ck-manager.c
@@ -390,6 +390,20 @@ generate_seat_id (CkManager *manager)
return id;
}
+static const char *
+get_object_id_basename (const char *id)
+{
+ const char *base;
+
+ if (id != NULL && g_str_has_prefix (id, CK_DBUS_PATH "/")) {
+ base = id + strlen (CK_DBUS_PATH "/");
+ } else {
+ base = id;
+ }
+
+ return base;
+}
+
static void
log_seat_added_event (CkManager *manager,
CkSeat *seat)
@@ -409,7 +423,7 @@ log_seat_added_event (CkManager *manager,
ck_seat_get_id (seat, &sid, NULL);
ck_seat_get_kind (seat, &seat_kind, NULL);
- event.event.seat_added.seat_id = sid;
+ event.event.seat_added.seat_id = (char *)get_object_id_basename (sid);
event.event.seat_added.seat_kind = (int)seat_kind;
error = NULL;
@@ -441,7 +455,7 @@ log_seat_removed_event (CkManager *manager,
ck_seat_get_id (seat, &sid, NULL);
ck_seat_get_kind (seat, &seat_kind, NULL);
- event.event.seat_removed.seat_id = sid;
+ event.event.seat_removed.seat_id = (char *)get_object_id_basename (sid);
event.event.seat_removed.seat_kind = (int)seat_kind;
error = NULL;
@@ -473,8 +487,8 @@ log_seat_session_added_event (CkManager *manager,
sid = NULL;
ck_seat_get_id (seat, &sid, NULL);
- event.event.seat_session_added.seat_id = sid;
- event.event.seat_session_added.session_id = (char *)ssid;
+ event.event.seat_session_added.seat_id = (char *)get_object_id_basename (sid);
+ event.event.seat_session_added.session_id = (char *)get_object_id_basename (ssid);
session = g_hash_table_lookup (manager->priv->sessions, ssid);
if (session != NULL) {
@@ -528,8 +542,8 @@ log_seat_session_removed_event (CkManager *manager,
sid = NULL;
ck_seat_get_id (seat, &sid, NULL);
- event.event.seat_session_removed.seat_id = sid;
- event.event.seat_session_removed.session_id = (char *)ssid;
+ event.event.seat_session_removed.seat_id = (char *)get_object_id_basename (sid);
+ event.event.seat_session_removed.session_id = (char *)get_object_id_basename (ssid);
session = g_hash_table_lookup (manager->priv->sessions, ssid);
if (session != NULL) {
@@ -581,8 +595,8 @@ log_seat_active_session_changed_event (CkManager *manager,
sid = NULL;
ck_seat_get_id (seat, &sid, NULL);
- event.event.seat_active_session_changed.seat_id = sid;
- event.event.seat_active_session_changed.session_id = (char *)ssid;
+ event.event.seat_active_session_changed.seat_id = (char *)get_object_id_basename (sid);
+ event.event.seat_active_session_changed.session_id = (char *)get_object_id_basename (ssid);
error = NULL;
res = ck_event_logger_queue_event (manager->priv->logger, &event, &error);
@@ -625,7 +639,7 @@ log_seat_device_added_event (CkManager *manager,
1, &device_id,
G_MAXUINT);
- event.event.seat_device_added.seat_id = sid;
+ event.event.seat_device_added.seat_id = (char *)get_object_id_basename (sid);
event.event.seat_device_added.device_id = device_id;
event.event.seat_device_added.device_type = device_type;
@@ -673,7 +687,7 @@ log_seat_device_removed_event (CkManager *manager,
1, &device_id,
G_MAXUINT);
- event.event.seat_device_removed.seat_id = sid;
+ event.event.seat_device_removed.seat_id = (char *)get_object_id_basename (sid);
event.event.seat_device_removed.device_id = device_id;
event.event.seat_device_removed.device_type = device_type;