[folks] telepathy: Port to zeitgeist 2.0
- From: Seif Lotfy <seiflotfy src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [folks] telepathy: Port to zeitgeist 2.0
- Date: Sat, 22 Jun 2013 00:19:02 +0000 (UTC)
commit c26ba6bb8a9e2556e14253a9c2849fd0f2701baf
Author: Rico Tzschichholz <ricotz ubuntu com>
Date: Fri Jun 21 14:52:22 2013 +0200
telepathy: Port to zeitgeist 2.0
Signed-off-by: Seif Lotfy <seif lotfy com>
backends/telepathy/lib/tpf-persona-store.vala | 43 +++++++++++++++++--------
backends/telepathy/lib/tpf-persona.vala | 14 ++++----
configure.ac | 10 +++---
docs/Makefile.am | 2 +-
4 files changed, 42 insertions(+), 27 deletions(-)
---
diff --git a/backends/telepathy/lib/tpf-persona-store.vala b/backends/telepathy/lib/tpf-persona-store.vala
index d1a666d..59ba3a7 100644
--- a/backends/telepathy/lib/tpf-persona-store.vala
+++ b/backends/telepathy/lib/tpf-persona-store.vala
@@ -101,7 +101,7 @@ public class Tpf.PersonaStore : Folks.PersonaStore
private Account _account;
#if HAVE_ZEITGEIST
- private Zeitgeist.Log? _log= null;
+ private Zeitgeist.Log? _log = null;
private Zeitgeist.Monitor? _monitor = null;
#endif
@@ -296,6 +296,13 @@ public class Tpf.PersonaStore : Folks.PersonaStore
this._account_manager_invalidated_cb);
this._account_manager = null;
}
+#if HAVE_ZEITGEIST
+ if (this._monitor != null)
+ {
+ this._log.remove_monitor (this._monitor);
+ this._monitor = null;
+ }
+#endif
}
private string _format_maybe_bool (MaybeBool input)
@@ -1738,14 +1745,14 @@ public class Tpf.PersonaStore : Folks.PersonaStore
{
for (var i = 1; i < e.num_subjects (); i++)
{
- var id = this._get_iid_from_event_metadata (e.get_subject (i).get_uri ());
- var interaction_type = e.get_subject (0).get_interpretation ();
+ var id = this._get_iid_from_event_metadata (e.get_subject (i).uri);
+ var interaction_type = e.get_subject (0).interpretation;
this._increase_persona_counter (id, interaction_type, e);
}
}
}
- private PtrArray _get_zeitgeist_event_templates ()
+ private GLib.GenericArray<Zeitgeist.Event> _get_zeitgeist_event_templates ()
{
/* To fetch events from Zeitgeist about the interaction with contacts we
* create templates reflecting how the telepathy-logger stores events in
@@ -1753,9 +1760,9 @@ public class Tpf.PersonaStore : Folks.PersonaStore
var origin = this.id.replace (TelepathyGLib.ACCOUNT_OBJECT_PATH_BASE,
"x-telepathy-account-path:");
Event ev1 = new Event.full ("", "", "dbus://org.freedesktop.Telepathy.Logger.service");
- ev1.set_origin (origin);
- var templates = new PtrArray ();
- templates.add (ev1.ref ());
+ ev1.origin = origin;
+ var templates = new GLib.GenericArray<Zeitgeist.Event> ();
+ templates.add (ev1);
return templates;
}
@@ -1776,10 +1783,10 @@ public class Tpf.PersonaStore : Folks.PersonaStore
/* We want events from the last 30 days only, A day has 86400 seconds.
* start_timestamp = end_timestamp - 30 days in seconds*/
int64 start_timestamp = end_timestamp - (86400 * 30);
- PtrArray events = this._get_zeitgeist_event_templates ();
+ GLib.GenericArray<Zeitgeist.Event> events = this._get_zeitgeist_event_templates ();
var results = yield this._log.find_events (
new TimeRange (start_timestamp * 1000, end_timestamp * 1000),
- (owned) events, StorageState.ANY, 0, ResultType.MOST_RECENT_EVENTS,
+ events, StorageState.ANY, 0, ResultType.MOST_RECENT_EVENTS,
null);
foreach (var persona in this._personas.values)
{
@@ -1788,10 +1795,10 @@ public class Tpf.PersonaStore : Folks.PersonaStore
}
foreach (var e in results)
{
- var interaction_type = e.get_subject (0).get_interpretation ();
+ var interaction_type = e.get_subject (0).interpretation;
for (var i = 1; i < e.num_subjects (); i++)
{
- var id = this._get_iid_from_event_metadata (e.get_subject (i).get_uri ());
+ var id = this._get_iid_from_event_metadata (e.get_subject (i).uri);
this._increase_persona_counter (id, interaction_type, e);
}
}
@@ -1809,11 +1816,19 @@ public class Tpf.PersonaStore : Folks.PersonaStore
* counters upon interaction changes.*/
if (this._monitor == null)
{
- PtrArray monitor_events = this._get_zeitgeist_event_templates ();
+ GLib.GenericArray<Zeitgeist.Event> monitor_events = this._get_zeitgeist_event_templates ();
this._monitor = new Zeitgeist.Monitor (new Zeitgeist.TimeRange.from_now (),
- (owned) monitor_events);
+ monitor_events);
this._monitor.events_inserted.connect (this._handle_new_interaction);
- this._log.install_monitor (this._monitor);
+ try
+ {
+ this._log.install_monitor (this._monitor);
+ }
+ catch
+ {
+ warning ("Failed to install monitor for Zeitgeist");
+ this._monitor = null;
+ }
}
this._notify_if_is_quiescent ();
diff --git a/backends/telepathy/lib/tpf-persona.vala b/backends/telepathy/lib/tpf-persona.vala
index 3b5d78a..57cdb1b 100644
--- a/backends/telepathy/lib/tpf-persona.vala
+++ b/backends/telepathy/lib/tpf-persona.vala
@@ -1379,14 +1379,14 @@ public class Tpf.Persona : Folks.Persona,
#if HAVE_ZEITGEIST
internal void _increase_counter (string id, string interaction_type, Event event)
{
- var timestamp = (uint) (event.get_timestamp () / 1000);
+ var timestamp = (uint) (event.timestamp / 1000);
var converted_datetime = new DateTime.from_unix_utc (timestamp);
- var interpretation = event.get_interpretation ();
+ var interpretation = event.interpretation;
/* Only count send/receive for IM interactions */
- if (interaction_type == Zeitgeist.NMO_IMMESSAGE &&
- (interpretation == Zeitgeist.ZG_SEND_EVENT ||
- interpretation == Zeitgeist.ZG_RECEIVE_EVENT))
+ if (interaction_type == Zeitgeist.NMO.IMMESSAGE &&
+ (interpretation == Zeitgeist.ZG.SEND_EVENT ||
+ interpretation == Zeitgeist.ZG.RECEIVE_EVENT))
{
this._im_interaction_count++;
this.notify_property ("im-interaction-count");
@@ -1400,8 +1400,8 @@ public class Tpf.Persona : Folks.Persona,
id, this._im_interaction_count, this._last_im_interaction_datetime.format ("%H %M %S - %d %m
%y"));
}
/* Only count successful call for call interactions */
- else if (interaction_type == Zeitgeist.NFO_AUDIO &&
- interpretation == Zeitgeist.ZG_LEAVE_EVENT)
+ else if (interaction_type == Zeitgeist.NFO.AUDIO &&
+ interpretation == Zeitgeist.ZG.LEAVE_EVENT)
{
this._call_interaction_count++;
this.notify_property ("call-interaction-count");
diff --git a/configure.ac b/configure.ac
index 64bda1d..53f5d27 100644
--- a/configure.ac
+++ b/configure.ac
@@ -185,7 +185,7 @@ TRACKER_SPARQL_MAJOR=0.16
TRACKER_SPARQL_REQUIRED=0.15.2
EBOOK_REQUIRED=3.8.1
EDATASERVER_REQUIRED=3.5.3.1
-ZEITGEIST_REQUIRED=0.3.14
+ZEITGEIST_REQUIRED=0.9.14
GEE_REQUIRED=0.8.4
AC_SUBST([TRACKER_SPARQL_MAJOR])
@@ -207,14 +207,14 @@ AS_IF([test x$enable_telepathy_backend = xyes], [
case "x$enable_zeitgeist" in
xyes)
AS_IF([test x$enable_telepathy_backend = xyes],
- [PKG_CHECK_MODULES([ZEITGEIST], [zeitgeist-1.0 >= $ZEITGEIST_REQUIRED],
+ [PKG_CHECK_MODULES([ZEITGEIST], [zeitgeist-2.0 >= $ZEITGEIST_REQUIRED],
,
[AC_MSG_ERROR([Zeitgeist support requires Zeitgeist development package])])])
have_zeitgeist=yes
;;
xauto)
AS_IF([test x$enable_telepathy_backend = xyes],
- [PKG_CHECK_MODULES([ZEITGEIST], [zeitgeist-1.0 >= $ZEITGEIST_REQUIRED],
+ [PKG_CHECK_MODULES([ZEITGEIST], [zeitgeist-2.0 >= $ZEITGEIST_REQUIRED],
have_zeitgeist="yes",have_zeitgeist="no")],
[have_zeitgeist=no])
;;
@@ -228,7 +228,7 @@ esac
AS_IF([test "x$have_zeitgeist" == "xyes"], [
ZEITGEIST_VALAFLAGS="-D HAVE_ZEITGEIST"
AC_SUBST([ZEITGEIST_VALAFLAGS])
- ZEITGEIST_PKG="--pkg zeitgeist-1.0"
+ ZEITGEIST_PKG="--pkg zeitgeist-2.0"
AC_SUBST([ZEITGEIST_PKG])
])
@@ -333,7 +333,7 @@ AS_IF([test "x$enable_vala" = "xyes"], [
AS_IF([test x$enable_telepathy_backend = xyes], [
VALA_CHECK_PACKAGES([telepathy-glib])
AS_IF([test "x$have_zeitgeist" == "xyes"], [
- VALA_CHECK_PACKAGES([zeitgeist-1.0])
+ VALA_CHECK_PACKAGES([zeitgeist-2.0])
])
])
diff --git a/docs/Makefile.am b/docs/Makefile.am
index 575c93a..364280f 100644
--- a/docs/Makefile.am
+++ b/docs/Makefile.am
@@ -134,7 +134,7 @@ folks_telepathy_doc_deps = \
gio-2.0 \
gee-0.8 \
telepathy-glib \
- zeitgeist-1.0 \
+ zeitgeist-2.0 \
tp-lowlevel \
build-conf \
folks \
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]