summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolas Dufresne <nicolas.dufresne@collabora.co.uk>2011-02-10 10:52:51 +0000
committerNicolas Dufresne <nicolas.dufresne@collabora.co.uk>2011-02-10 17:03:36 +0000
commit0bda6a9474ded4368217f42df552955f3fc6e4af (patch)
tree41403db3801650148f2fb06d5bde81556fe8735c
parent2a38f4c8975ff933e1790b7d50bd6c058b459c4a (diff)
Implement clear_account method in LogManager
-rw-r--r--telepathy-logger/log-manager-internal.h2
-rw-r--r--telepathy-logger/log-manager.c18
2 files changed, 20 insertions, 0 deletions
diff --git a/telepathy-logger/log-manager-internal.h b/telepathy-logger/log-manager-internal.h
index 3e268851c..e7062bafb 100644
--- a/telepathy-logger/log-manager-internal.h
+++ b/telepathy-logger/log-manager-internal.h
@@ -82,6 +82,8 @@ gboolean _tpl_log_manager_search_in_identifier_finish (
void _tpl_log_manager_clear (TplLogManager *self);
+void _tpl_log_manager_clear_account (TplLogManager *self, TpAccount *account);
+
TplLogSearchHit * _tpl_log_manager_search_hit_new (TpAccount *account,
const gchar *id,
TplEventSearchType type,
diff --git a/telepathy-logger/log-manager.c b/telepathy-logger/log-manager.c
index 779f41eba..7503113ca 100644
--- a/telepathy-logger/log-manager.c
+++ b/telepathy-logger/log-manager.c
@@ -902,6 +902,24 @@ _tpl_log_manager_clear (TplLogManager *self)
}
+void
+_tpl_log_manager_clear_account (TplLogManager *self,
+ TpAccount *account)
+{
+ GList *l;
+ TplLogManagerPriv *priv;
+
+ g_return_if_fail (TPL_IS_LOG_MANAGER (self));
+
+ priv = self->priv;
+
+ for (l = priv->stores; l != NULL; l = g_list_next (l))
+ {
+ _tpl_log_store_clear_account (TPL_LOG_STORE (l->data), account);
+ }
+}
+
+
/* There is no g_date_copy() */
static GDate *
copy_date (const GDate *date)