From e504870c44f30b89276793ef13905315c9495b95 Mon Sep 17 00:00:00 2001 From: JP Rosevear Date: Tue, 24 Oct 2000 16:21:10 +0000 Subject: Lookup a pid by uid. (e_pilot_map_lookup_uid): Lookup a uid by pid. Now 2000-10-23 JP Rosevear * e-pilot-map.c (e_pilot_map_lookup_pid): Lookup a pid by uid. (e_pilot_map_lookup_uid): Lookup a uid by pid. Now this is wrapped, we can store archive info internally * e-pilot-map.h: New accessor prototype 2000-10-23 JP Rosevear * conduits/todo/todo-conduit.c (local_record_from_comp): Use new e-pilot-map lookup function (match): ditto * conduits/calendar/calendar-conduit.c (local_record_from_comp): Use new e-pilot-map lookup function (match): ditto svn path=/trunk/; revision=6146 --- calendar/ChangeLog | 10 ++++++++++ calendar/conduits/calendar/calendar-conduit.c | 23 +++++------------------ calendar/conduits/todo/todo-conduit.c | 24 ++++++------------------ e-util/ChangeLog | 8 ++++++++ e-util/e-pilot-map.c | 25 ++++++++++++++++++++++++- e-util/e-pilot-map.h | 4 +++- 6 files changed, 56 insertions(+), 38 deletions(-) diff --git a/calendar/ChangeLog b/calendar/ChangeLog index 03b6968ac8..6da5bcb51b 100644 --- a/calendar/ChangeLog +++ b/calendar/ChangeLog @@ -1,3 +1,13 @@ +2000-10-23 JP Rosevear + + * conduits/todo/todo-conduit.c (local_record_from_comp): Use + new e-pilot-map lookup function + (match): ditto + + * conduits/calendar/calendar-conduit.c (local_record_from_comp): Use + new e-pilot-map lookup function + (match): ditto + 2000-10-23 Dan Winship * pcs/Makefile.am (INCLUDES): diff --git a/calendar/conduits/calendar/calendar-conduit.c b/calendar/conduits/calendar/calendar-conduit.c index f5ef766648..ac3bd515c3 100644 --- a/calendar/conduits/calendar/calendar-conduit.c +++ b/calendar/conduits/calendar/calendar-conduit.c @@ -235,19 +235,6 @@ get_ical_day (int day) return ICAL_NO_WEEKDAY; } -static void -compute_pid (ECalConduitContext *ctxt, ECalLocalRecord *local, const char *uid) -{ - guint32 *pid; - - pid = g_hash_table_lookup (ctxt->map->uid_map, uid); - - if (pid) - local->local.ID = *pid; - else - local->local.ID = 0; -} - static void compute_status (ECalConduitContext *ctxt, ECalLocalRecord *local, const char *uid) { @@ -314,7 +301,7 @@ local_record_from_comp (ECalLocalRecord *local, CalComponent *comp, ECalConduitC local->comp = comp; cal_component_get_uid (local->comp, &uid); - compute_pid (ctxt, local, uid); + local->local.ID = e_pilot_map_lookup_pid (ctxt->map, uid); compute_status (ctxt, local, uid); local->appt = g_new0 (struct Appointment,1); @@ -403,7 +390,7 @@ local_record_from_comp (ECalLocalRecord *local, CalComponent *comp, ECalConduitC static void local_record_from_uid (ECalLocalRecord *local, - char *uid, + const char *uid, ECalConduitContext *ctxt) { CalComponent *comp; @@ -651,7 +638,7 @@ pre_sync (GnomePilotConduit *conduit, switch (coc->type) { case CALOBJ_UPDATED: - if (g_hash_table_lookup (ctxt->map->uid_map, coc->uid)) + if (e_pilot_map_lookup_pid (ctxt->map, coc->uid) > 0) g_hash_table_insert (ctxt->modified, coc->uid, coc); else g_hash_table_insert (ctxt->added, coc->uid, coc); @@ -965,7 +952,7 @@ match (GnomePilotConduitSyncAbs *conduit, ECalLocalRecord **local, ECalConduitContext *ctxt) { - char *uid; + const char *uid; LOG ("match: looking for local copy of %s\n", print_remote (remote)); @@ -974,7 +961,7 @@ match (GnomePilotConduitSyncAbs *conduit, g_return_val_if_fail (remote != NULL, -1); *local = NULL; - uid = g_hash_table_lookup (ctxt->map->pid_map, &remote->ID); + uid = e_pilot_map_lookup_uid (ctxt->map, remote->ID); if (!uid) return 0; diff --git a/calendar/conduits/todo/todo-conduit.c b/calendar/conduits/todo/todo-conduit.c index 9158f55c30..d4b715f4e8 100644 --- a/calendar/conduits/todo/todo-conduit.c +++ b/calendar/conduits/todo/todo-conduit.c @@ -214,19 +214,6 @@ map_name (EToDoConduitContext *ctxt) return filename; } -static void -compute_pid (EToDoConduitContext *ctxt, EToDoLocalRecord *local, const char *uid) -{ - guint32 *pid; - - pid = g_hash_table_lookup (ctxt->map->uid_map, uid); - - if (pid) - local->local.ID = *pid; - else - local->local.ID = 0; -} - static void compute_status (EToDoConduitContext *ctxt, EToDoLocalRecord *local, const char *uid) { @@ -294,7 +281,8 @@ local_record_from_comp (EToDoLocalRecord *local, CalComponent *comp, EToDoCondui local->comp = comp; cal_component_get_uid (local->comp, &uid); - compute_pid (ctxt, local, uid); + local->local.ID = e_pilot_map_lookup_pid (ctxt->map, uid); + compute_status (ctxt, local, uid); local->todo = g_new0 (struct ToDo,1); @@ -350,7 +338,7 @@ local_record_from_comp (EToDoLocalRecord *local, CalComponent *comp, EToDoCondui static void local_record_from_uid (EToDoLocalRecord *local, - char *uid, + const char *uid, EToDoConduitContext *ctxt) { CalComponent *comp; @@ -530,7 +518,7 @@ pre_sync (GnomePilotConduit *conduit, switch (coc->type) { case CALOBJ_UPDATED: - if (g_hash_table_lookup (ctxt->map->uid_map, coc->uid)) + if (e_pilot_map_lookup_pid (ctxt->map, coc->uid) > 0) g_hash_table_insert (ctxt->modified, coc->uid, coc); else g_hash_table_insert (ctxt->added, coc->uid, coc); @@ -845,7 +833,7 @@ match (GnomePilotConduitSyncAbs *conduit, EToDoLocalRecord **local, EToDoConduitContext *ctxt) { - char *uid; + const char *uid; LOG ("match: looking for local copy of %s\n", print_remote (remote)); @@ -854,7 +842,7 @@ match (GnomePilotConduitSyncAbs *conduit, g_return_val_if_fail (remote != NULL, -1); *local = NULL; - uid = g_hash_table_lookup (ctxt->map->pid_map, &remote->ID); + uid = e_pilot_map_lookup_uid (ctxt->map, remote->ID); if (!uid) return 0; diff --git a/e-util/ChangeLog b/e-util/ChangeLog index 5851b7f508..ede4147b9f 100644 --- a/e-util/ChangeLog +++ b/e-util/ChangeLog @@ -1,3 +1,11 @@ +2000-10-23 JP Rosevear + + * e-pilot-map.c (e_pilot_map_lookup_pid): Lookup a pid by uid. + (e_pilot_map_lookup_uid): Lookup a uid by pid. + Now this is wrapped, we can store archive info internally + + * e-pilot-map.h: New accessor prototypes + 2000-10-23 Dan Winship * ename/Makefile.am (INCLUDES): Remove unused GNOMELOCALEDIR diff --git a/e-util/e-pilot-map.c b/e-util/e-pilot-map.c index 4b364f39bd..3a1b660c60 100644 --- a/e-util/e-pilot-map.c +++ b/e-util/e-pilot-map.c @@ -98,7 +98,7 @@ map_write_foreach (gpointer key, gpointer value, gpointer data) } gboolean -e_pilot_map_pid_is_archived (EPilotMap *map, guint32 pilot_id) +e_pilot_map_pid_is_archived (EPilotMap *map, guint32 pid) { return FALSE; } @@ -122,6 +122,29 @@ e_pilot_map_insert (EPilotMap *map, guint32 pid, const char *uid, gboolean archi g_hash_table_insert (map->uid_map, new_uid, new_pid); } +guint32 +e_pilot_map_lookup_pid (EPilotMap *map, const char *uid) +{ + guint32 *pid; + + pid = g_hash_table_lookup (map->uid_map, uid); + + if (pid == NULL) + return 0; + + return *pid; +} + +const char * +e_pilot_map_lookup_uid (EPilotMap *map, guint32 pid) +{ + const char *uid; + + uid = g_hash_table_lookup (map->pid_map, &pid); + + return uid; +} + int e_pilot_map_read (const char *filename, EPilotMap **map) { diff --git a/e-util/e-pilot-map.h b/e-util/e-pilot-map.h index e910f43317..8e3d2b71f6 100644 --- a/e-util/e-pilot-map.h +++ b/e-util/e-pilot-map.h @@ -36,10 +36,12 @@ struct _EPilotMap time_t since; }; -gboolean e_pilot_map_pid_is_archived (EPilotMap *map, guint32 pilot_id); +gboolean e_pilot_map_pid_is_archived (EPilotMap *map, guint32 pid); gboolean e_pilot_map_uid_is_archived (EPilotMap *map, const char *uid); void e_pilot_map_insert (EPilotMap *map, guint32 pid, const char *uid, gboolean archived); +guint32 e_pilot_map_lookup_pid (EPilotMap *map, const char *uid); +const char * e_pilot_map_lookup_uid (EPilotMap *map, guint32 pid); int e_pilot_map_read (const char *filename, EPilotMap **map); int e_pilot_map_write (const char *filename, EPilotMap *map); -- cgit v1.2.3