diff -Nru libzeitgeist-0.2.2/aclocal.m4 libzeitgeist-0.2.8/aclocal.m4 --- libzeitgeist-0.2.2/aclocal.m4 2010-06-23 12:16:09.000000000 +0100 +++ libzeitgeist-0.2.8/aclocal.m4 2010-08-24 13:18:27.000000000 +0100 @@ -13,8 +13,8 @@ m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl -m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.65],, -[m4_warning([this file was generated for autoconf 2.65. +m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.67],, +[m4_warning([this file was generated for autoconf 2.67. You have another version of autoconf. It may work, but is not guaranteed to. If you have problems, you may need to regenerate the build system entirely. To do so, use the procedure documented by the package, typically `autoreconf'.])]) @@ -8048,6 +8048,7 @@ m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])]) # pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- +# serial 1 (pkg-config-0.24) # # Copyright © 2004 Scott James Remnant . # @@ -8075,7 +8076,10 @@ AC_DEFUN([PKG_PROG_PKG_CONFIG], [m4_pattern_forbid([^_?PKG_[A-Z_]+$]) m4_pattern_allow([^PKG_CONFIG(_PATH)?$]) -AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])dnl +AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility]) +AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path]) +AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path]) + if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) fi @@ -8088,7 +8092,6 @@ AC_MSG_RESULT([no]) PKG_CONFIG="" fi - fi[]dnl ])# PKG_PROG_PKG_CONFIG @@ -8097,34 +8100,31 @@ # Check to see whether a particular set of modules exists. Similar # to PKG_CHECK_MODULES(), but does not set variables or print errors. # -# -# Similar to PKG_CHECK_MODULES, make sure that the first instance of -# this or PKG_CHECK_MODULES is called, or make sure to call -# PKG_CHECK_EXISTS manually +# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) +# only at the first occurence in configure.ac, so if the first place +# it's called might be skipped (such as if it is within an "if", you +# have to call PKG_CHECK_EXISTS manually # -------------------------------------------------------------- AC_DEFUN([PKG_CHECK_EXISTS], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl if test -n "$PKG_CONFIG" && \ AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then - m4_ifval([$2], [$2], [:]) + m4_default([$2], [:]) m4_ifvaln([$3], [else $3])dnl fi]) - # _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) # --------------------------------------------- m4_define([_PKG_CONFIG], -[if test -n "$PKG_CONFIG"; then - if test -n "$$1"; then - pkg_cv_[]$1="$$1" - else - PKG_CHECK_EXISTS([$3], - [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`], - [pkg_failed=yes]) - fi -else - pkg_failed=untried +[if test -n "$$1"; then + pkg_cv_[]$1="$$1" + elif test -n "$PKG_CONFIG"; then + PKG_CHECK_EXISTS([$3], + [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`], + [pkg_failed=yes]) + else + pkg_failed=untried fi[]dnl ])# _PKG_CONFIG @@ -8166,16 +8166,17 @@ See the pkg-config man page for more details.]) if test $pkg_failed = yes; then + AC_MSG_RESULT([no]) _PKG_SHORT_ERRORS_SUPPORTED if test $_pkg_short_errors_supported = yes; then - $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "$2"` + $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$2" 2>&1` else - $1[]_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"` + $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors "$2" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD - ifelse([$4], , [AC_MSG_ERROR(dnl + m4_default([$4], [AC_MSG_ERROR( [Package requirements ($2) were not met: $$1_PKG_ERRORS @@ -8183,25 +8184,24 @@ Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. -_PKG_TEXT -])], - [AC_MSG_RESULT([no]) - $4]) +_PKG_TEXT])dnl + ]) elif test $pkg_failed = untried; then - ifelse([$4], , [AC_MSG_FAILURE(dnl + AC_MSG_RESULT([no]) + m4_default([$4], [AC_MSG_FAILURE( [The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. _PKG_TEXT -To get pkg-config, see .])], - [$4]) +To get pkg-config, see .])dnl + ]) else $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS $1[]_LIBS=$pkg_cv_[]$1[]_LIBS AC_MSG_RESULT([yes]) - ifelse([$3], , :, [$3]) + $3 fi[]dnl ])# PKG_CHECK_MODULES diff -Nru libzeitgeist-0.2.2/bindings/generate_vapi libzeitgeist-0.2.8/bindings/generate_vapi --- libzeitgeist-0.2.2/bindings/generate_vapi 2010-06-23 12:15:54.000000000 +0100 +++ libzeitgeist-0.2.8/bindings/generate_vapi 2010-08-24 13:18:07.000000000 +0100 @@ -8,3 +8,7 @@ cd $(dirname $0) vala-gen-introspect zeitgeist-1.0 . vapigen --pkg gobject-2.0 --pkg glib-2.0 --pkg gio-2.0 --library zeitgeist-1.0 zeitgeist-1.0.gi zeitgeist-1.0-custom.vala +# nasty hack to force usage of PtrArray in recent versions of vapigen +sed -i 's/GenericArray/PtrArray/g' zeitgeist-1.0.vapi +# workaround a bug introduced in vapigen 0.9.3 +sed -i 's/void \(insert_events_from_ptrarray\)\(.*\);/GLib.Array \1\2 throws GLib.Error;/' zeitgeist-1.0.vapi diff -Nru libzeitgeist-0.2.2/bindings/Makefile.in libzeitgeist-0.2.8/bindings/Makefile.in --- libzeitgeist-0.2.2/bindings/Makefile.in 2010-06-23 12:16:11.000000000 +0100 +++ libzeitgeist-0.2.8/bindings/Makefile.in 2010-08-24 13:18:30.000000000 +0100 @@ -104,8 +104,10 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GIO_UNIX_CFLAGS = @GIO_UNIX_CFLAGS@ -GIO_UNIX_LIBS = @GIO_UNIX_LIBS@ +GIO2_CFLAGS = @GIO2_CFLAGS@ +GIO2_LIBS = @GIO2_LIBS@ +GIO_UNIX2_CFLAGS = @GIO_UNIX2_CFLAGS@ +GIO_UNIX2_LIBS = @GIO_UNIX2_LIBS@ GLIB2_CFLAGS = @GLIB2_CFLAGS@ GLIB2_LIBS = @GLIB2_LIBS@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ @@ -131,6 +133,7 @@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ +MAINTAINER_CFLAGS = @MAINTAINER_CFLAGS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ NM = @NM@ @@ -148,6 +151,8 @@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ @@ -155,6 +160,8 @@ STRIP = @STRIP@ VERSION = @VERSION@ ZEITGEIST_CFLAGS = @ZEITGEIST_CFLAGS@ +ZEITGEIST_GIOMODULE_CFLAGS = @ZEITGEIST_GIOMODULE_CFLAGS@ +ZEITGEIST_GIOMODULE_LIBS = @ZEITGEIST_GIOMODULE_LIBS@ ZEITGEIST_LIBS = @ZEITGEIST_LIBS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ @@ -179,6 +186,7 @@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ +giomodulesdir = @giomodulesdir@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ diff -Nru libzeitgeist-0.2.2/bindings/zeitgeist-1.0-custom.vala libzeitgeist-0.2.8/bindings/zeitgeist-1.0-custom.vala --- libzeitgeist-0.2.2/bindings/zeitgeist-1.0-custom.vala 2010-06-23 12:15:54.000000000 +0100 +++ libzeitgeist-0.2.8/bindings/zeitgeist-1.0-custom.vala 2010-08-24 13:18:07.000000000 +0100 @@ -32,6 +32,18 @@ } } +namespace Zeitgeist.Symbol +{ + [CCode (cheader_filename = "zeitgeist.h")] + public static GLib.List get_all_children (string symbol); + [CCode (cheader_filename = "zeitgeist.h")] + public static GLib.List get_children (string symbol); + [CCode (cheader_filename = "zeitgeist.h")] + public static GLib.List get_parents (string symbol); + [CCode (cheader_filename = "zeitgeist.h")] + public static bool is_a (string symbol, string parent); +} + namespace Zeitgeist.Timestamp { [CCode (cname = "ZEITGEIST_TIMESTAMP_SECOND", cheader_filename = "zeitgeist.h")] diff -Nru libzeitgeist-0.2.2/bindings/zeitgeist-1.0.gi libzeitgeist-0.2.8/bindings/zeitgeist-1.0.gi --- libzeitgeist-0.2.2/bindings/zeitgeist-1.0.gi 2010-06-23 12:15:54.000000000 +0100 +++ libzeitgeist-0.2.8/bindings/zeitgeist-1.0.gi 2010-08-24 13:18:07.000000000 +0100 @@ -34,6 +34,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + + @@ -63,6 +88,18 @@ + + + + + + + + + + + + @@ -93,7 +130,11 @@ - + + + + + @@ -101,6 +142,192 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -438,6 +665,12 @@ + + + + + + @@ -476,6 +709,7 @@ + @@ -830,12 +1064,6 @@ - - - - - - diff -Nru libzeitgeist-0.2.2/bindings/zeitgeist-1.0.metadata libzeitgeist-0.2.8/bindings/zeitgeist-1.0.metadata --- libzeitgeist-0.2.2/bindings/zeitgeist-1.0.metadata 2010-06-23 12:15:54.000000000 +0100 +++ libzeitgeist-0.2.8/bindings/zeitgeist-1.0.metadata 2010-08-24 13:18:07.000000000 +0100 @@ -1,5 +1,12 @@ Zeitgeist cheader_filename="zeitgeist.h" Zeitgeist.Timestamp cheader_filename="zeitgeist.h" +zeitgeist_data_source_new_full.event_templates transfer_ownership="1" +zeitgeist_data_source_set_event_templates.event_templates transfer_ownership="1" +zeitgeist_data_source_registry_get_data_sources async="1" +zeitgeist_data_source_registry_get_data_sources_finish transfer_ownership="1" +zeitgeist_data_source_registry_register_data_source async="1" +zeitgeist_data_source_registry_register_data_source.source transfer_ownership="1" +zeitgeist_data_source_registry_set_data_source_enabled async="1" zeitgeist_index_search async="1" zeitgeist_index_search.event_templates transfer_ownership="1" zeitgeist_index_search_finish transfer_ownership="1" @@ -33,6 +40,11 @@ zeitgeist_event_set_payload.payload transfer_ownership="1" zeitgeist_monitor_new.event_templates transfer_ownership="1" +Zeitgeist.Symbol cheader_filename="zeitgeist.h" +zeitgeist_symbol_get* hidden="1" #transfer_ownership="1" type_arguments="unowned string" +zeitgeist_symbol_is_a hidden="1" + +zeitgeist_data_source_registry_*.cancellable nullable="1" zeitgeist_log_*.cancellable nullable="1" zeitgeist_index_*.cancellable nullable="1" diff -Nru libzeitgeist-0.2.2/bindings/zeitgeist-1.0.vapi libzeitgeist-0.2.8/bindings/zeitgeist-1.0.vapi --- libzeitgeist-0.2.2/bindings/zeitgeist-1.0.vapi 2010-06-23 12:15:54.000000000 +0100 +++ libzeitgeist-0.2.8/bindings/zeitgeist-1.0.vapi 2010-08-24 13:18:07.000000000 +0100 @@ -2,6 +2,17 @@ [CCode (cprefix = "Zeitgeist", lower_case_cprefix = "zeitgeist_")] namespace Zeitgeist { + [CCode (cprefix = "ZeitgeistSymbol", lower_case_cprefix = "zeitgeist_symbol_")] + namespace Symbol { + [CCode (cheader_filename = "zeitgeist.h")] + public static GLib.List get_all_children (string symbol); + [CCode (cheader_filename = "zeitgeist.h")] + public static GLib.List get_children (string symbol); + [CCode (cheader_filename = "zeitgeist.h")] + public static GLib.List get_parents (string symbol); + [CCode (cheader_filename = "zeitgeist.h")] + public static bool is_a (string symbol, string parent); + } [CCode (cprefix = "ZeitgeistTimestamp", lower_case_cprefix = "zeitgeist_timestamp_")] namespace Timestamp { [CCode (cname = "ZEITGEIST_TIMESTAMP_DAY", cheader_filename = "zeitgeist.h")] @@ -24,18 +35,50 @@ public static int64 from_iso8601 (string datetime); [CCode (cheader_filename = "zeitgeist.h")] public static int64 from_timeval (GLib.TimeVal tv); + [CCode (cheader_filename = "zeitgeist.h")] + public static int64 next_midnight (int64 timestamp); [CCode (cname = "zeitgeist_timestamp_for_now", cheader_filename = "zeitgeist.h")] public static int64 now (); [CCode (cheader_filename = "zeitgeist.h")] + public static int64 prev_midnight (int64 timestamp); + [CCode (cheader_filename = "zeitgeist.h")] public static int64 to_date (int64 timestamp, out GLib.Date date); [CCode (cheader_filename = "zeitgeist.h")] public static string to_iso8601 (int64 timestamp); [CCode (cheader_filename = "zeitgeist.h")] public static int64 to_timeval (int64 timestamp, out GLib.TimeVal tv); - [CCode (cheader_filename = "zeitgeist.h")] - public static int64 next_midnight (int64 timestamp); - [CCode (cheader_filename = "zeitgeist.h")] - public static int64 prev_midnight (int64 timestamp); + } + [CCode (cheader_filename = "zeitgeist.h")] + public class DataSource : GLib.InitiallyUnowned { + [CCode (has_construct_function = false)] + public DataSource (); + [CCode (has_construct_function = false)] + public DataSource.full (string id, string name, string desc, owned GLib.PtrArray event_templates); + public unowned string get_description (); + public unowned GLib.PtrArray get_event_templates (); + public unowned string get_name (); + public int64 get_timestamp (); + public unowned string get_unique_id (); + public bool is_enabled (); + public bool is_running (); + public void set_description (string description); + public void set_enabled (bool enabled); + public void set_event_templates (owned GLib.PtrArray event_templates); + public void set_name (string name); + public void set_running (bool running); + public void set_timestamp (int64 timestamp); + public void set_unique_id (string unique_id); + } + [CCode (cheader_filename = "zeitgeist.h")] + public class DataSourceRegistry : GLib.Object { + [CCode (has_construct_function = false)] + public DataSourceRegistry (); + public async GLib.PtrArray get_data_sources (GLib.Cancellable? cancellable) throws GLib.Error; + public async bool register_data_source (owned Zeitgeist.DataSource source, GLib.Cancellable? cancellable) throws GLib.Error; + public async void set_data_source_enabled (string unique_id, bool enabled, GLib.Cancellable? cancellable) throws GLib.Error; + public virtual signal void source_disconnected (Zeitgeist.DataSource source); + public virtual signal void source_enabled (string unique_id, bool enabled); + public virtual signal void source_registered (Zeitgeist.DataSource source); } [CCode (cheader_filename = "zeitgeist.h")] public class Event : GLib.InitiallyUnowned { @@ -67,37 +110,28 @@ [CCode (has_construct_function = false)] public Index (); public async Zeitgeist.ResultSet search (string query, Zeitgeist.TimeRange time_range, owned GLib.PtrArray event_templates, uint32 offset, uint32 num_events, Zeitgeist.ResultType result_type, GLib.Cancellable? cancellable) throws GLib.Error; - public Zeitgeist.ResultSet search_finish (GLib.AsyncResult res) throws GLib.Error; } [CCode (cheader_filename = "zeitgeist.h")] public class Log : GLib.Object { [CCode (has_construct_function = false)] public Log (); public async bool delete_events (owned GLib.Array event_ids, GLib.Cancellable? cancellable) throws GLib.Error; - public bool delete_events_finish (GLib.AsyncResult res) throws GLib.Error; public async bool delete_log (GLib.Cancellable? cancellable) throws GLib.Error; - public bool delete_log_finish (GLib.AsyncResult res) throws GLib.Error; public async GLib.Array find_event_ids (Zeitgeist.TimeRange time_range, owned GLib.PtrArray event_templates, Zeitgeist.StorageState storage_state, uint32 num_events, Zeitgeist.ResultType result_type, GLib.Cancellable? cancellable) throws GLib.Error; - public GLib.Array find_event_ids_finish (GLib.AsyncResult res) throws GLib.Error; public async Zeitgeist.ResultSet find_events (Zeitgeist.TimeRange time_range, owned GLib.PtrArray event_templates, Zeitgeist.StorageState storage_state, uint32 num_events, Zeitgeist.ResultType result_type, GLib.Cancellable? cancellable) throws GLib.Error; - public Zeitgeist.ResultSet find_events_finish (GLib.AsyncResult res) throws GLib.Error; [CCode (array_length = false, array_null_terminated = true)] public async string[] find_related_uris (Zeitgeist.TimeRange time_range, owned GLib.PtrArray event_templates, owned GLib.PtrArray result_event_templates, Zeitgeist.StorageState storage_state, uint32 num_events, Zeitgeist.ResultType result_type, GLib.Cancellable? cancellable) throws GLib.Error; - [CCode (array_length = false, array_null_terminated = true)] - public string[] find_related_uris_finish (GLib.AsyncResult res) throws GLib.Error; public async Zeitgeist.ResultSet get_events (owned GLib.Array event_ids, GLib.Cancellable? cancellable) throws GLib.Error; - public Zeitgeist.ResultSet get_events_finish (GLib.AsyncResult res) throws GLib.Error; public async GLib.Array insert_events (GLib.Cancellable? cancellable, ...) throws GLib.Error; - public GLib.Array insert_events_finish (GLib.AsyncResult res) throws GLib.Error; [CCode (finish_name = "zeitgeist_log_insert_events_finish")] public async GLib.Array insert_events_from_ptrarray (owned GLib.PtrArray events, GLib.Cancellable? cancellable) throws GLib.Error; public void insert_events_no_reply (...); public async bool install_monitor (Zeitgeist.Monitor monitor, GLib.Cancellable? cancellable) throws GLib.Error; - public bool install_monitor_finish (GLib.AsyncResult res) throws GLib.Error; + public bool is_connected (); public async bool quit (GLib.Cancellable? cancellable) throws GLib.Error; - public bool quit_finish (GLib.AsyncResult res) throws GLib.Error; public async bool remove_monitor (Zeitgeist.Monitor monitor, GLib.Cancellable? cancellable) throws GLib.Error; - public bool remove_monitor_finish (GLib.AsyncResult res) throws GLib.Error; + [NoAccessorMethod] + public bool connected { get; } } [CCode (cheader_filename = "zeitgeist.h")] public class Monitor : GLib.Object, Zeitgeist.EggZeitgeistMonitor { @@ -177,6 +211,10 @@ LEAST_POPULAR_ACTOR, MOST_RECENT_ACTOR, LEAST_RECENT_ACTOR, + MOST_RECENT_ORIGIN, + LEAST_RECENT_ORIGIN, + MOST_POPULAR_ORIGIN, + LEAST_POPULAR_ORIGIN, RELEVANCY } [CCode (cprefix = "ZEITGEIST_STORAGE_STATE_", cheader_filename = "zeitgeist.h")] diff -Nru libzeitgeist-0.2.2/config.guess libzeitgeist-0.2.8/config.guess --- libzeitgeist-0.2.2/config.guess 2010-06-23 12:16:11.000000000 +0100 +++ libzeitgeist-0.2.8/config.guess 2010-08-24 13:18:29.000000000 +0100 @@ -1,10 +1,10 @@ #! /bin/sh # Attempt to guess a canonical system name. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 +# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 # Free Software Foundation, Inc. -timestamp='2009-06-10' +timestamp='2009-12-30' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -27,16 +27,16 @@ # the same distribution terms that you use for the rest of that program. -# Originally written by Per Bothner . -# Please send patches to . Submit a context -# diff and a properly formatted ChangeLog entry. +# Originally written by Per Bothner. Please send patches (context +# diff format) to and include a ChangeLog +# entry. # # This script attempts to guess a canonical system name similar to # config.sub. If it succeeds, it prints the system name on stdout, and # exits with 0. Otherwise, it exits with 1. # -# The plan is that this can be called by configure scripts if you -# don't specify an explicit build system type. +# You can get the latest version of this script from: +# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD me=`echo "$0" | sed -e 's,.*/,,'` @@ -56,8 +56,9 @@ GNU config.guess ($timestamp) Originally written by Per Bothner. -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, -2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, +2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free +Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -333,6 +334,9 @@ sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; + i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) + echo i386-pc-auroraux${UNAME_RELEASE} + exit ;; i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) eval $set_cc_for_build SUN_ARCH="i386" @@ -807,12 +811,12 @@ i*:PW*:*) echo ${UNAME_MACHINE}-pc-pw32 exit ;; - *:Interix*:[3456]*) + *:Interix*:*) case ${UNAME_MACHINE} in x86) echo i586-pc-interix${UNAME_RELEASE} exit ;; - EM64T | authenticamd | genuineintel) + authenticamd | genuineintel | EM64T) echo x86_64-unknown-interix${UNAME_RELEASE} exit ;; IA64) @@ -854,6 +858,20 @@ i*86:Minix:*:*) echo ${UNAME_MACHINE}-pc-minix exit ;; + alpha:Linux:*:*) + case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in + EV5) UNAME_MACHINE=alphaev5 ;; + EV56) UNAME_MACHINE=alphaev56 ;; + PCA56) UNAME_MACHINE=alphapca56 ;; + PCA57) UNAME_MACHINE=alphapca56 ;; + EV6) UNAME_MACHINE=alphaev6 ;; + EV67) UNAME_MACHINE=alphaev67 ;; + EV68*) UNAME_MACHINE=alphaev68 ;; + esac + objdump --private-headers /bin/sh | grep -q ld.so.1 + if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi + echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} + exit ;; arm*:Linux:*:*) eval $set_cc_for_build if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ @@ -876,6 +894,17 @@ frv:Linux:*:*) echo frv-unknown-linux-gnu exit ;; + i*86:Linux:*:*) + LIBC=gnu + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #ifdef __dietlibc__ + LIBC=dietlibc + #endif +EOF + eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` + echo "${UNAME_MACHINE}-pc-linux-${LIBC}" + exit ;; ia64:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; @@ -901,39 +930,18 @@ #endif #endif EOF - eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' - /^CPU/{ - s: ::g - p - }'`" + eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } ;; or32:Linux:*:*) echo or32-unknown-linux-gnu exit ;; - ppc:Linux:*:*) - echo powerpc-unknown-linux-gnu - exit ;; - ppc64:Linux:*:*) - echo powerpc64-unknown-linux-gnu - exit ;; - alpha:Linux:*:*) - case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in - EV5) UNAME_MACHINE=alphaev5 ;; - EV56) UNAME_MACHINE=alphaev56 ;; - PCA56) UNAME_MACHINE=alphapca56 ;; - PCA57) UNAME_MACHINE=alphapca56 ;; - EV6) UNAME_MACHINE=alphaev6 ;; - EV67) UNAME_MACHINE=alphaev67 ;; - EV68*) UNAME_MACHINE=alphaev68 ;; - esac - objdump --private-headers /bin/sh | grep -q ld.so.1 - if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi - echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} - exit ;; padre:Linux:*:*) echo sparc-unknown-linux-gnu exit ;; + parisc64:Linux:*:* | hppa64:Linux:*:*) + echo hppa64-unknown-linux-gnu + exit ;; parisc:Linux:*:* | hppa:Linux:*:*) # Look for CPU level case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in @@ -942,8 +950,11 @@ *) echo hppa-unknown-linux-gnu ;; esac exit ;; - parisc64:Linux:*:* | hppa64:Linux:*:*) - echo hppa64-unknown-linux-gnu + ppc64:Linux:*:*) + echo powerpc64-unknown-linux-gnu + exit ;; + ppc:Linux:*:*) + echo powerpc-unknown-linux-gnu exit ;; s390:Linux:*:* | s390x:Linux:*:*) echo ${UNAME_MACHINE}-ibm-linux @@ -966,58 +977,6 @@ xtensa*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; - i*86:Linux:*:*) - # The BFD linker knows what the default object file format is, so - # first see if it will tell us. cd to the root directory to prevent - # problems with other programs or directories called `ld' in the path. - # Set LC_ALL=C to ensure ld outputs messages in English. - ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ - | sed -ne '/supported targets:/!d - s/[ ][ ]*/ /g - s/.*supported targets: *// - s/ .*// - p'` - case "$ld_supported_targets" in - elf32-i386) - TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" - ;; - esac - # Determine whether the default compiler is a.out or elf - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #include - #ifdef __ELF__ - # ifdef __GLIBC__ - # if __GLIBC__ >= 2 - LIBC=gnu - # else - LIBC=gnulibc1 - # endif - # else - LIBC=gnulibc1 - # endif - #else - #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC) - LIBC=gnu - #else - LIBC=gnuaout - #endif - #endif - #ifdef __dietlibc__ - LIBC=dietlibc - #endif -EOF - eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' - /^LIBC/{ - s: ::g - p - }'`" - test x"${LIBC}" != x && { - echo "${UNAME_MACHINE}-pc-linux-${LIBC}" - exit - } - test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; } - ;; i*86:DYNIX/ptx:4*:*) # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. # earlier versions are messed up and put the nodename in both @@ -1247,6 +1206,16 @@ *:Darwin:*:*) UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown case $UNAME_PROCESSOR in + i386) + eval $set_cc_for_build + if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then + if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ + (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_64BIT_ARCH >/dev/null + then + UNAME_PROCESSOR="x86_64" + fi + fi ;; unknown) UNAME_PROCESSOR=powerpc ;; esac echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} diff -Nru libzeitgeist-0.2.2/config.h.in libzeitgeist-0.2.8/config.h.in --- libzeitgeist-0.2.2/config.h.in 2010-06-23 12:16:11.000000000 +0100 +++ libzeitgeist-0.2.8/config.h.in 2010-08-24 13:18:29.000000000 +0100 @@ -3,6 +3,9 @@ /* build with extra debug information */ #undef ENABLE_DEBUG +/* build GIO extension point module */ +#undef ENABLE_GIOMODULE + /* Define to 1 if you have the header file. */ #undef HAVE_DLFCN_H diff -Nru libzeitgeist-0.2.2/config.sub libzeitgeist-0.2.8/config.sub --- libzeitgeist-0.2.2/config.sub 2010-06-23 12:16:11.000000000 +0100 +++ libzeitgeist-0.2.8/config.sub 2010-08-24 13:18:29.000000000 +0100 @@ -1,10 +1,10 @@ #! /bin/sh # Configuration validation subroutine script. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 +# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 # Free Software Foundation, Inc. -timestamp='2009-06-11' +timestamp='2010-01-22' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software @@ -32,13 +32,16 @@ # Please send patches to . Submit a context -# diff and a properly formatted ChangeLog entry. +# diff and a properly formatted GNU ChangeLog entry. # # Configuration subroutine to validate and canonicalize a configuration type. # Supply the specified configuration type as an argument. # If it is invalid, we print an error message on stderr and exit with code 1. # Otherwise, we print the canonical config type on stdout and succeed. +# You can get the latest version of this script from: +# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD + # This file is supposed to be the same for all GNU packages # and recognize all the CPU types, system types and aliases # that are meaningful with *any* GNU software. @@ -72,8 +75,9 @@ version="\ GNU config.sub ($timestamp) -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, -2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, +2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free +Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -149,7 +153,7 @@ -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ - -apple | -axis | -knuth | -cray) + -apple | -axis | -knuth | -cray | -microblaze) os= basic_machine=$1 ;; @@ -284,6 +288,7 @@ | pdp10 | pdp11 | pj | pjl \ | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ | pyramid \ + | rx \ | score \ | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ | sh64 | sh64le \ @@ -291,13 +296,14 @@ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ | spu | strongarm \ | tahoe | thumb | tic4x | tic80 | tron \ + | ubicom32 \ | v850 | v850e \ | we32k \ | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ | z8k | z80) basic_machine=$basic_machine-unknown ;; - m6811 | m68hc11 | m6812 | m68hc12) + m6811 | m68hc11 | m6812 | m68hc12 | picochip) # Motorola 68HC11/12. basic_machine=$basic_machine-unknown os=-none @@ -340,7 +346,7 @@ | lm32-* \ | m32c-* | m32r-* | m32rle-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ - | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ + | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ | mips16-* \ | mips64-* | mips64el-* \ @@ -368,15 +374,17 @@ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ | pyramid-* \ - | romp-* | rs6000-* \ + | romp-* | rs6000-* | rx-* \ | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ | sparclite-* \ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ | tahoe-* | thumb-* \ - | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \ + | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ + | tile-* | tilegx-* \ | tron-* \ + | ubicom32-* \ | v850-* | v850e-* | vax-* \ | we32k-* \ | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ @@ -726,6 +734,9 @@ basic_machine=ns32k-utek os=-sysv ;; + microblaze) + basic_machine=microblaze-xilinx + ;; mingw32) basic_machine=i386-pc os=-mingw32 @@ -1076,6 +1087,11 @@ basic_machine=tic6x-unknown os=-coff ;; + # This must be matched before tile*. + tilegx*) + basic_machine=tilegx-unknown + os=-linux-gnu + ;; tile*) basic_machine=tile-unknown os=-linux-gnu @@ -1247,6 +1263,9 @@ # First match some system type aliases # that might get confused with valid system types. # -solaris* is a basic system type, with this one exception. + -auroraux) + os=-auroraux + ;; -solaris1 | -solaris1.*) os=`echo $os | sed -e 's|solaris1|sunos4|'` ;; @@ -1268,8 +1287,8 @@ # -sysv* is not here because it comes later, after sysvr4. -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ - | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ - | -kopensolaris* \ + | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ + | -sym* | -kopensolaris* \ | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ | -aos* | -aros* \ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ @@ -1290,7 +1309,7 @@ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ - | -skyos* | -haiku* | -rdos* | -toppers* | -drops*) + | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) # Remember, each alternative MUST END IN *, to match a version number. ;; -qnx*) @@ -1423,6 +1442,8 @@ -dicos*) os=-dicos ;; + -nacl*) + ;; -none) ;; *) diff -Nru libzeitgeist-0.2.2/configure libzeitgeist-0.2.8/configure --- libzeitgeist-0.2.2/configure 2010-06-23 12:16:10.000000000 +0100 +++ libzeitgeist-0.2.8/configure 2010-08-24 13:18:28.000000000 +0100 @@ -1,11 +1,11 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.65 for libzeitgeist 0.2.2. +# Generated by GNU Autoconf 2.67 for libzeitgeist 0.2.8. # # # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, -# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, -# Inc. +# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software +# Foundation, Inc. # # # This configure script is free software; the Free Software Foundation @@ -316,7 +316,7 @@ test -d "$as_dir" && break done test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || as_fn_error "cannot create directory $as_dir" + } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" } # as_fn_mkdir_p @@ -356,19 +356,19 @@ fi # as_fn_arith -# as_fn_error ERROR [LINENO LOG_FD] -# --------------------------------- +# as_fn_error STATUS ERROR [LINENO LOG_FD] +# ---------------------------------------- # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are # provided, also output the error to LOG_FD, referencing LINENO. Then exit the -# script with status $?, using 1 if that was 0. +# script with STATUS, using 1 if that was 0. as_fn_error () { - as_status=$?; test $as_status -eq 0 && as_status=1 - if test "$3"; then - as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - $as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3 + as_status=$1; test $as_status -eq 0 && as_status=1 + if test "$4"; then + as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 fi - $as_echo "$as_me: error: $1" >&2 + $as_echo "$as_me: error: $2" >&2 as_fn_exit $as_status } # as_fn_error @@ -679,7 +679,7 @@ exec 6>&1 # Name of the host. -# hostname on some systems (SVR3.2, Linux) returns a bogus exit status, +# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status, # so uname gets run too. ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` @@ -698,8 +698,8 @@ # Identity of this package. PACKAGE_NAME='libzeitgeist' PACKAGE_TARNAME='libzeitgeist' -PACKAGE_VERSION='0.2.2' -PACKAGE_STRING='libzeitgeist 0.2.2' +PACKAGE_VERSION='0.2.8' +PACKAGE_STRING='libzeitgeist 0.2.8' PACKAGE_BUGREPORT='' PACKAGE_URL='' @@ -760,17 +760,27 @@ GTKDOC_MKPDF GTKDOC_REBASE GTKDOC_CHECK +giomodulesdir +ZEITGEIST_GIOMODULE_LIBS +ZEITGEIST_GIOMODULE_CFLAGS ZEITGEIST_LIBS ZEITGEIST_CFLAGS -GIO_UNIX_LIBS -GIO_UNIX_CFLAGS EGGDBUS_LIBS EGGDBUS_CFLAGS +GIO_UNIX2_LIBS +GIO_UNIX2_CFLAGS +GIO2_LIBS +GIO2_CFLAGS GOBJECT2_LIBS GOBJECT2_CFLAGS GLIB2_LIBS GLIB2_CFLAGS +PKG_CONFIG_LIBDIR +PKG_CONFIG_PATH PKG_CONFIG +ENABLE_GIOMODULE_FALSE +ENABLE_GIOMODULE_TRUE +MAINTAINER_CFLAGS ENABLE_DEBUG_FALSE ENABLE_DEBUG_TRUE OTOOL64 @@ -896,6 +906,8 @@ with_gnu_ld enable_libtool_lock enable_debug +enable_maintainer_flags +enable_module with_html_dir enable_gtk_doc enable_gtk_doc_html @@ -911,14 +923,18 @@ CPPFLAGS CPP PKG_CONFIG +PKG_CONFIG_PATH +PKG_CONFIG_LIBDIR GLIB2_CFLAGS GLIB2_LIBS GOBJECT2_CFLAGS GOBJECT2_LIBS +GIO2_CFLAGS +GIO2_LIBS +GIO_UNIX2_CFLAGS +GIO_UNIX2_LIBS EGGDBUS_CFLAGS -EGGDBUS_LIBS -GIO_UNIX_CFLAGS -GIO_UNIX_LIBS' +EGGDBUS_LIBS' # Initialize some variables set by options. @@ -981,8 +997,9 @@ fi case $ac_option in - *=*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; - *) ac_optarg=yes ;; + *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; + *=) ac_optarg= ;; + *) ac_optarg=yes ;; esac # Accept the important Cygnus configure options, so we can diagnose typos. @@ -1027,7 +1044,7 @@ ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error "invalid feature name: $ac_useropt" + as_fn_error $? "invalid feature name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in @@ -1053,7 +1070,7 @@ ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error "invalid feature name: $ac_useropt" + as_fn_error $? "invalid feature name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in @@ -1257,7 +1274,7 @@ ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error "invalid package name: $ac_useropt" + as_fn_error $? "invalid package name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in @@ -1273,7 +1290,7 @@ ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error "invalid package name: $ac_useropt" + as_fn_error $? "invalid package name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in @@ -1303,8 +1320,8 @@ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) x_libraries=$ac_optarg ;; - -*) as_fn_error "unrecognized option: \`$ac_option' -Try \`$0 --help' for more information." + -*) as_fn_error $? "unrecognized option: \`$ac_option' +Try \`$0 --help' for more information" ;; *=*) @@ -1312,7 +1329,7 @@ # Reject names that are not valid shell variable names. case $ac_envvar in #( '' | [0-9]* | *[!_$as_cr_alnum]* ) - as_fn_error "invalid variable name: \`$ac_envvar'" ;; + as_fn_error $? "invalid variable name: \`$ac_envvar'" ;; esac eval $ac_envvar=\$ac_optarg export $ac_envvar ;; @@ -1330,13 +1347,13 @@ if test -n "$ac_prev"; then ac_option=--`echo $ac_prev | sed 's/_/-/g'` - as_fn_error "missing argument to $ac_option" + as_fn_error $? "missing argument to $ac_option" fi if test -n "$ac_unrecognized_opts"; then case $enable_option_checking in no) ;; - fatal) as_fn_error "unrecognized options: $ac_unrecognized_opts" ;; + fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;; *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; esac fi @@ -1359,7 +1376,7 @@ [\\/$]* | ?:[\\/]* ) continue;; NONE | '' ) case $ac_var in *prefix ) continue;; esac;; esac - as_fn_error "expected an absolute directory name for --$ac_var: $ac_val" + as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val" done # There might be people who depend on the old broken behavior: `$host' @@ -1373,8 +1390,8 @@ if test "x$host_alias" != x; then if test "x$build_alias" = x; then cross_compiling=maybe - $as_echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. - If a cross compiler is detected then cross compile mode will be used." >&2 + $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host. + If a cross compiler is detected then cross compile mode will be used" >&2 elif test "x$build_alias" != "x$host_alias"; then cross_compiling=yes fi @@ -1389,9 +1406,9 @@ ac_pwd=`pwd` && test -n "$ac_pwd" && ac_ls_di=`ls -di .` && ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || - as_fn_error "working directory cannot be determined" + as_fn_error $? "working directory cannot be determined" test "X$ac_ls_di" = "X$ac_pwd_ls_di" || - as_fn_error "pwd does not report name of working directory" + as_fn_error $? "pwd does not report name of working directory" # Find the source files, if location was not specified. @@ -1430,11 +1447,11 @@ fi if test ! -r "$srcdir/$ac_unique_file"; then test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." - as_fn_error "cannot find sources ($ac_unique_file) in $srcdir" + as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir" fi ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" ac_abs_confdir=`( - cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error "$ac_msg" + cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg" pwd)` # When building in place, set srcdir=. if test "$ac_abs_confdir" = "$ac_pwd"; then @@ -1460,7 +1477,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures libzeitgeist 0.2.2 to adapt to many kinds of systems. +\`configure' configures libzeitgeist 0.2.8 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1474,7 +1491,7 @@ --help=short display options specific to this package --help=recursive display the short help of all the included packages -V, --version display version information and exit - -q, --quiet, --silent do not print \`checking...' messages + -q, --quiet, --silent do not print \`checking ...' messages --cache-file=FILE cache test results in FILE [disabled] -C, --config-cache alias for \`--cache-file=config.cache' -n, --no-create do not create output files @@ -1530,7 +1547,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of libzeitgeist 0.2.2:";; + short | recursive ) echo "Configuration of libzeitgeist 0.2.8:";; esac cat <<\_ACEOF @@ -1550,6 +1567,10 @@ optimize for fast installation [default=yes] --disable-libtool-lock avoid locking (might break parallel builds) --enable-debug build with debug symbols + --enable-maintainer-flags=[no/yes] + Use strict compiler flags [default=no] + --enable-module=[yes/no] + build GIO extension point module [default=yes] --enable-gtk-doc use gtk-doc to build documentation [[default=no]] --enable-gtk-doc-html build documentation in html format [[default=yes]] --enable-gtk-doc-pdf build documentation in pdf format [[default=no]] @@ -1572,6 +1593,10 @@ you have headers in a nonstandard directory CPP C preprocessor PKG_CONFIG path to pkg-config utility + PKG_CONFIG_PATH + directories to add to pkg-config's search path + PKG_CONFIG_LIBDIR + path overriding pkg-config's built-in search path GLIB2_CFLAGS C compiler flags for GLIB2, overriding pkg-config GLIB2_LIBS linker flags for GLIB2, overriding pkg-config @@ -1579,14 +1604,16 @@ C compiler flags for GOBJECT2, overriding pkg-config GOBJECT2_LIBS linker flags for GOBJECT2, overriding pkg-config + GIO2_CFLAGS C compiler flags for GIO2, overriding pkg-config + GIO2_LIBS linker flags for GIO2, overriding pkg-config + GIO_UNIX2_CFLAGS + C compiler flags for GIO_UNIX2, overriding pkg-config + GIO_UNIX2_LIBS + linker flags for GIO_UNIX2, overriding pkg-config EGGDBUS_CFLAGS C compiler flags for EGGDBUS, overriding pkg-config EGGDBUS_LIBS linker flags for EGGDBUS, overriding pkg-config - GIO_UNIX_CFLAGS - C compiler flags for GIO_UNIX, overriding pkg-config - GIO_UNIX_LIBS - linker flags for GIO_UNIX, overriding pkg-config Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. @@ -1654,10 +1681,10 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -libzeitgeist configure 0.2.2 -generated by GNU Autoconf 2.65 +libzeitgeist configure 0.2.8 +generated by GNU Autoconf 2.67 -Copyright (C) 2009 Free Software Foundation, Inc. +Copyright (C) 2010 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. _ACEOF @@ -1773,7 +1800,7 @@ mv -f conftest.er1 conftest.err fi $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } >/dev/null && { + test $ac_status = 0; } > conftest.i && { test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || test ! -s conftest.err }; then : @@ -1840,7 +1867,7 @@ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } -if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : +if eval "test \"\${$3+set}\"" = set; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -1870,7 +1897,7 @@ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } -if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : +if eval "test \"\${$3+set}\"" = set; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -1932,8 +1959,8 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by libzeitgeist $as_me 0.2.2, which was -generated by GNU Autoconf 2.65. Invocation command line was +It was created by libzeitgeist $as_me 0.2.8, which was +generated by GNU Autoconf 2.67. Invocation command line was $ $0 $@ @@ -2043,11 +2070,9 @@ { echo - cat <<\_ASBOX -## ---------------- ## + $as_echo "## ---------------- ## ## Cache variables. ## -## ---------------- ## -_ASBOX +## ---------------- ##" echo # The following way of writing the cache mishandles newlines in values, ( @@ -2081,11 +2106,9 @@ ) echo - cat <<\_ASBOX -## ----------------- ## + $as_echo "## ----------------- ## ## Output variables. ## -## ----------------- ## -_ASBOX +## ----------------- ##" echo for ac_var in $ac_subst_vars do @@ -2098,11 +2121,9 @@ echo if test -n "$ac_subst_files"; then - cat <<\_ASBOX -## ------------------- ## + $as_echo "## ------------------- ## ## File substitutions. ## -## ------------------- ## -_ASBOX +## ------------------- ##" echo for ac_var in $ac_subst_files do @@ -2116,11 +2137,9 @@ fi if test -s confdefs.h; then - cat <<\_ASBOX -## ----------- ## + $as_echo "## ----------- ## ## confdefs.h. ## -## ----------- ## -_ASBOX +## ----------- ##" echo cat confdefs.h echo @@ -2175,7 +2194,12 @@ ac_site_file1=NONE ac_site_file2=NONE if test -n "$CONFIG_SITE"; then - ac_site_file1=$CONFIG_SITE + # We do not want a PATH search for config.site. + case $CONFIG_SITE in #(( + -*) ac_site_file1=./$CONFIG_SITE;; + */*) ac_site_file1=$CONFIG_SITE;; + *) ac_site_file1=./$CONFIG_SITE;; + esac elif test "x$prefix" != xNONE; then ac_site_file1=$prefix/share/config.site ac_site_file2=$prefix/etc/config.site @@ -2190,7 +2214,11 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 $as_echo "$as_me: loading site script $ac_site_file" >&6;} sed 's/^/| /' "$ac_site_file" >&5 - . "$ac_site_file" + . "$ac_site_file" \ + || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "failed to load site script $ac_site_file +See \`config.log' for more details" "$LINENO" 5 ; } fi done @@ -2266,7 +2294,7 @@ $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 $as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} - as_fn_error "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 + as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 fi ## -------------------- ## ## Main body of script. ## @@ -2284,16 +2312,22 @@ ac_aux_dir= for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do - for ac_t in install-sh install.sh shtool; do - if test -f "$ac_dir/$ac_t"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/$ac_t -c" - break 2 - fi - done + if test -f "$ac_dir/install-sh"; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install-sh -c" + break + elif test -f "$ac_dir/install.sh"; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install.sh -c" + break + elif test -f "$ac_dir/shtool"; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/shtool install -c" + break + fi done if test -z "$ac_aux_dir"; then - as_fn_error "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5 + as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5 fi # These three variables are undocumented and unsupported, @@ -2409,11 +2443,11 @@ ' case `pwd` in *[\\\"\#\$\&\'\`$am_lf]*) - as_fn_error "unsafe absolute working directory name" "$LINENO" 5;; + as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5 ;; esac case $srcdir in *[\\\"\#\$\&\'\`$am_lf\ \ ]*) - as_fn_error "unsafe srcdir value: \`$srcdir'" "$LINENO" 5;; + as_fn_error $? "unsafe srcdir value: \`$srcdir'" "$LINENO" 5 ;; esac # Do `set' in a subshell so we don't clobber the current shell's @@ -2435,7 +2469,7 @@ # if, for instance, CONFIG_SHELL is bash and it inherits a # broken ls alias from the environment. This has actually # happened. Such a system could not be considered "sane". - as_fn_error "ls -t appears to fail. Make sure there is not a broken + as_fn_error $? "ls -t appears to fail. Make sure there is not a broken alias in your environment" "$LINENO" 5 fi @@ -2445,7 +2479,7 @@ # Ok. : else - as_fn_error "newly created file is older than distributed files! + as_fn_error $? "newly created file is older than distributed files! Check your system clock" "$LINENO" 5 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 @@ -2683,7 +2717,7 @@ $as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } set x ${MAKE-make} ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` -if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then : +if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\"" = set; then : $as_echo_n "(cached) " >&6 else cat >conftest.make <<\_ACEOF @@ -2691,7 +2725,7 @@ all: @echo '@@@%%%=$(MAKE)=@@@%%%' _ACEOF -# GNU make sometimes prints "make[1]: Entering...", which would confuse us. +# GNU make sometimes prints "make[1]: Entering ...", which would confuse us. case `${MAKE-make} -f conftest.make 2>/dev/null` in *@@@%%%=?*=@@@%%%*) eval ac_cv_prog_make_${ac_make}_set=yes;; @@ -2725,7 +2759,7 @@ am__isrc=' -I$(srcdir)' # test to see if srcdir already configured if test -f $srcdir/config.status; then - as_fn_error "source directory already configured; run \"make distclean\" there first" "$LINENO" 5 + as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5 fi fi @@ -2741,7 +2775,7 @@ # Define the identity of the package. PACKAGE=libzeitgeist - VERSION=0.2.2 + VERSION=0.2.8 cat >>confdefs.h <<_ACEOF @@ -3187,8 +3221,8 @@ test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error "no acceptable C compiler found in \$PATH -See \`config.log' for more details." "$LINENO" 5; } +as_fn_error $? "no acceptable C compiler found in \$PATH +See \`config.log' for more details" "$LINENO" 5 ; } # Provide some information about the compiler. $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 @@ -3302,9 +3336,8 @@ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -{ as_fn_set_status 77 -as_fn_error "C compiler cannot create executables -See \`config.log' for more details." "$LINENO" 5; }; } +as_fn_error 77 "C compiler cannot create executables +See \`config.log' for more details" "$LINENO" 5 ; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } @@ -3346,8 +3379,8 @@ else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error "cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." "$LINENO" 5; } +as_fn_error $? "cannot compute suffix of executables: cannot compile and link +See \`config.log' for more details" "$LINENO" 5 ; } fi rm -f conftest conftest$ac_cv_exeext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 @@ -3404,9 +3437,9 @@ else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error "cannot run C compiled programs. +as_fn_error $? "cannot run C compiled programs. If you meant to cross compile, use \`--host'. -See \`config.log' for more details." "$LINENO" 5; } +See \`config.log' for more details" "$LINENO" 5 ; } fi fi fi @@ -3457,8 +3490,8 @@ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error "cannot compute suffix of object files: cannot compile -See \`config.log' for more details." "$LINENO" 5; } +as_fn_error $? "cannot compute suffix of object files: cannot compile +See \`config.log' for more details" "$LINENO" 5 ; } fi rm -f conftest.$ac_cv_objext conftest.$ac_ext fi @@ -4162,8 +4195,8 @@ test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error "no acceptable C compiler found in \$PATH -See \`config.log' for more details." "$LINENO" 5; } +as_fn_error $? "no acceptable C compiler found in \$PATH +See \`config.log' for more details" "$LINENO" 5 ; } # Provide some information about the compiler. $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 @@ -4829,8 +4862,8 @@ test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error "no acceptable C compiler found in \$PATH -See \`config.log' for more details." "$LINENO" 5; } +as_fn_error $? "no acceptable C compiler found in \$PATH +See \`config.log' for more details" "$LINENO" 5 ; } # Provide some information about the compiler. $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 @@ -5241,7 +5274,7 @@ # Broken: fails on valid input. continue fi -rm -f conftest.err conftest.$ac_ext +rm -f conftest.err conftest.i conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. @@ -5257,11 +5290,11 @@ ac_preproc_ok=: break fi -rm -f conftest.err conftest.$ac_ext +rm -f conftest.err conftest.i conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.err conftest.$ac_ext +rm -f conftest.i conftest.err conftest.$ac_ext if $ac_preproc_ok; then : break fi @@ -5300,7 +5333,7 @@ # Broken: fails on valid input. continue fi -rm -f conftest.err conftest.$ac_ext +rm -f conftest.err conftest.i conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. @@ -5316,18 +5349,18 @@ ac_preproc_ok=: break fi -rm -f conftest.err conftest.$ac_ext +rm -f conftest.err conftest.i conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.err conftest.$ac_ext +rm -f conftest.i conftest.err conftest.$ac_ext if $ac_preproc_ok; then : else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error "C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." "$LINENO" 5; } +as_fn_error $? "C preprocessor \"$CPP\" fails sanity check +See \`config.log' for more details" "$LINENO" 5 ; } fi ac_ext=c @@ -5388,7 +5421,7 @@ done IFS=$as_save_IFS if test -z "$ac_cv_path_GREP"; then - as_fn_error "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_GREP=$GREP @@ -5454,7 +5487,7 @@ done IFS=$as_save_IFS if test -z "$ac_cv_path_EGREP"; then - as_fn_error "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_EGREP=$EGREP @@ -5606,7 +5639,7 @@ # Make sure we can run config.sub. $SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || - as_fn_error "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 + as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 $as_echo_n "checking build system type... " >&6; } @@ -5617,16 +5650,16 @@ test "x$ac_build_alias" = x && ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` test "x$ac_build_alias" = x && - as_fn_error "cannot guess build type; you must specify one" "$LINENO" 5 + as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5 ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || - as_fn_error "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 + as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 $as_echo "$ac_cv_build" >&6; } case $ac_cv_build in *-*-*) ;; -*) as_fn_error "invalid value of canonical build" "$LINENO" 5;; +*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5 ;; esac build=$ac_cv_build ac_save_IFS=$IFS; IFS='-' @@ -5651,7 +5684,7 @@ ac_cv_host=$ac_cv_build else ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || - as_fn_error "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 + as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 fi fi @@ -5659,7 +5692,7 @@ $as_echo "$ac_cv_host" >&6; } case $ac_cv_host in *-*-*) ;; -*) as_fn_error "invalid value of canonical host" "$LINENO" 5;; +*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5 ;; esac host=$ac_cv_host ac_save_IFS=$IFS; IFS='-' @@ -5732,7 +5765,7 @@ done IFS=$as_save_IFS if test -z "$ac_cv_path_SED"; then - as_fn_error "no acceptable sed could be found in \$PATH" "$LINENO" 5 + as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5 fi else ac_cv_path_SED=$SED @@ -5811,7 +5844,7 @@ done IFS=$as_save_IFS if test -z "$ac_cv_path_FGREP"; then - as_fn_error "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + as_fn_error $? "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_FGREP=$FGREP @@ -5927,7 +5960,7 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi -test -z "$LD" && as_fn_error "no acceptable ld found in \$PATH" "$LINENO" 5 +test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 $as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } if test "${lt_cv_prog_gnu_ld+set}" = set; then : @@ -6129,13 +6162,13 @@ else lt_cv_nm_interface="BSD nm" echo "int some_variable = 0;" > conftest.$ac_ext - (eval echo "\"\$as_me:6132: $ac_compile\"" >&5) + (eval echo "\"\$as_me:6165: $ac_compile\"" >&5) (eval "$ac_compile" 2>conftest.err) cat conftest.err >&5 - (eval echo "\"\$as_me:6135: $NM \\\"conftest.$ac_objext\\\"\"" >&5) + (eval echo "\"\$as_me:6168: $NM \\\"conftest.$ac_objext\\\"\"" >&5) (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) cat conftest.err >&5 - (eval echo "\"\$as_me:6138: output\"" >&5) + (eval echo "\"\$as_me:6171: output\"" >&5) cat conftest.out >&5 if $GREP 'External.*some_variable' conftest.out > /dev/null; then lt_cv_nm_interface="MS dumpbin" @@ -7340,7 +7373,7 @@ ;; *-*-irix6*) # Find out which ABI we are using. - echo '#line 7343 "configure"' > conftest.$ac_ext + echo '#line 7376 "configure"' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? @@ -8094,8 +8127,7 @@ as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default " -eval as_val=\$$as_ac_Header - if test "x$as_val" = x""yes; then : +if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF @@ -8616,11 +8648,11 @@ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:8619: $lt_compile\"" >&5) + (eval echo "\"\$as_me:8651: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:8623: \$? = $ac_status" >&5 + echo "$as_me:8655: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -8955,11 +8987,11 @@ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:8958: $lt_compile\"" >&5) + (eval echo "\"\$as_me:8990: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:8962: \$? = $ac_status" >&5 + echo "$as_me:8994: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -9060,11 +9092,11 @@ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:9063: $lt_compile\"" >&5) + (eval echo "\"\$as_me:9095: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:9067: \$? = $ac_status" >&5 + echo "$as_me:9099: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -9115,11 +9147,11 @@ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:9118: $lt_compile\"" >&5) + (eval echo "\"\$as_me:9150: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:9122: \$? = $ac_status" >&5 + echo "$as_me:9154: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -11499,7 +11531,7 @@ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11502 "configure" +#line 11534 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -11595,7 +11627,7 @@ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11598 "configure" +#line 11630 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -11851,6 +11883,53 @@ fi + + +#################################################################### +# Maintainer C flags +#################################################################### + +# Check whether --enable-maintainer-flags was given. +if test "${enable_maintainer_flags+set}" = set; then : + enableval=$enable_maintainer_flags; +else + enable_maintainer_flags=no +fi + +if test "x$enable_maintainer_flags" = "xyes" && test "x$GCC" = "xyes"; then : + + MAINTAINER_CFLAGS="-g -Werror -Wcast-align -Wno-uninitialized -Wempty-body -Wformat-security -Winit-self" + + +fi + + +#################################################################### +# Check whether to build GIO extension point module +#################################################################### +# Check whether --enable-module was given. +if test "${enable_module+set}" = set; then : + enableval=$enable_module; +else + enable_module=yes +fi + + +if test "x$enable_module" = "xyes"; then + +$as_echo "#define ENABLE_GIOMODULE 1" >>confdefs.h + +fi + + if test "$enable_module" = "yes"; then + ENABLE_GIOMODULE_TRUE= + ENABLE_GIOMODULE_FALSE='#' +else + ENABLE_GIOMODULE_TRUE='#' + ENABLE_GIOMODULE_FALSE= +fi + + #################################################################### # Check library deps #################################################################### @@ -11859,6 +11938,9 @@ + + + if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. @@ -11971,18 +12053,16 @@ $as_echo "no" >&6; } PKG_CONFIG="" fi - fi pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GLIB2" >&5 $as_echo_n "checking for GLIB2... " >&6; } -if test -n "$PKG_CONFIG"; then - if test -n "$GLIB2_CFLAGS"; then - pkg_cv_GLIB2_CFLAGS="$GLIB2_CFLAGS" - else - if test -n "$PKG_CONFIG" && \ +if test -n "$GLIB2_CFLAGS"; then + pkg_cv_GLIB2_CFLAGS="$GLIB2_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_REQUIRED \""; } >&5 ($PKG_CONFIG --exists --print-errors "glib-2.0 >= $GLIB_REQUIRED ") 2>&5 ac_status=$? @@ -11992,15 +12072,13 @@ else pkg_failed=yes fi - fi -else - pkg_failed=untried + else + pkg_failed=untried fi -if test -n "$PKG_CONFIG"; then - if test -n "$GLIB2_LIBS"; then - pkg_cv_GLIB2_LIBS="$GLIB2_LIBS" - else - if test -n "$PKG_CONFIG" && \ +if test -n "$GLIB2_LIBS"; then + pkg_cv_GLIB2_LIBS="$GLIB2_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_REQUIRED \""; } >&5 ($PKG_CONFIG --exists --print-errors "glib-2.0 >= $GLIB_REQUIRED ") 2>&5 ac_status=$? @@ -12010,14 +12088,15 @@ else pkg_failed=yes fi - fi -else - pkg_failed=untried + else + pkg_failed=untried fi if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes @@ -12025,14 +12104,14 @@ _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - GLIB2_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "glib-2.0 >= $GLIB_REQUIRED "` + GLIB2_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "glib-2.0 >= $GLIB_REQUIRED " 2>&1` else - GLIB2_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "glib-2.0 >= $GLIB_REQUIRED "` + GLIB2_PKG_ERRORS=`$PKG_CONFIG --print-errors "glib-2.0 >= $GLIB_REQUIRED " 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$GLIB2_PKG_ERRORS" >&5 - as_fn_error "Package requirements (glib-2.0 >= $GLIB_REQUIRED ) were not met: + as_fn_error $? "Package requirements (glib-2.0 >= $GLIB_REQUIRED ) were not met: $GLIB2_PKG_ERRORS @@ -12041,12 +12120,13 @@ Alternatively, you may set the environment variables GLIB2_CFLAGS and GLIB2_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. -" "$LINENO" 5 +See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error "The pkg-config script could not be found or is too old. Make sure it +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. @@ -12055,24 +12135,23 @@ See the pkg-config man page for more details. To get pkg-config, see . -See \`config.log' for more details." "$LINENO" 5; } +See \`config.log' for more details" "$LINENO" 5 ; } else GLIB2_CFLAGS=$pkg_cv_GLIB2_CFLAGS GLIB2_LIBS=$pkg_cv_GLIB2_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - : + fi pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GOBJECT2" >&5 $as_echo_n "checking for GOBJECT2... " >&6; } -if test -n "$PKG_CONFIG"; then - if test -n "$GOBJECT2_CFLAGS"; then - pkg_cv_GOBJECT2_CFLAGS="$GOBJECT2_CFLAGS" - else - if test -n "$PKG_CONFIG" && \ +if test -n "$GOBJECT2_CFLAGS"; then + pkg_cv_GOBJECT2_CFLAGS="$GOBJECT2_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gobject-2.0 >= \$GLIB_REQUIRED \""; } >&5 ($PKG_CONFIG --exists --print-errors "gobject-2.0 >= $GLIB_REQUIRED ") 2>&5 ac_status=$? @@ -12082,15 +12161,13 @@ else pkg_failed=yes fi - fi -else - pkg_failed=untried + else + pkg_failed=untried fi -if test -n "$PKG_CONFIG"; then - if test -n "$GOBJECT2_LIBS"; then - pkg_cv_GOBJECT2_LIBS="$GOBJECT2_LIBS" - else - if test -n "$PKG_CONFIG" && \ +if test -n "$GOBJECT2_LIBS"; then + pkg_cv_GOBJECT2_LIBS="$GOBJECT2_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gobject-2.0 >= \$GLIB_REQUIRED \""; } >&5 ($PKG_CONFIG --exists --print-errors "gobject-2.0 >= $GLIB_REQUIRED ") 2>&5 ac_status=$? @@ -12100,14 +12177,15 @@ else pkg_failed=yes fi - fi -else - pkg_failed=untried + else + pkg_failed=untried fi if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes @@ -12115,14 +12193,14 @@ _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - GOBJECT2_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "gobject-2.0 >= $GLIB_REQUIRED "` + GOBJECT2_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "gobject-2.0 >= $GLIB_REQUIRED " 2>&1` else - GOBJECT2_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "gobject-2.0 >= $GLIB_REQUIRED "` + GOBJECT2_PKG_ERRORS=`$PKG_CONFIG --print-errors "gobject-2.0 >= $GLIB_REQUIRED " 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$GOBJECT2_PKG_ERRORS" >&5 - as_fn_error "Package requirements (gobject-2.0 >= $GLIB_REQUIRED ) were not met: + as_fn_error $? "Package requirements (gobject-2.0 >= $GLIB_REQUIRED ) were not met: $GOBJECT2_PKG_ERRORS @@ -12131,12 +12209,13 @@ Alternatively, you may set the environment variables GOBJECT2_CFLAGS and GOBJECT2_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. -" "$LINENO" 5 +See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error "The pkg-config script could not be found or is too old. Make sure it +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. @@ -12145,59 +12224,57 @@ See the pkg-config man page for more details. To get pkg-config, see . -See \`config.log' for more details." "$LINENO" 5; } +See \`config.log' for more details" "$LINENO" 5 ; } else GOBJECT2_CFLAGS=$pkg_cv_GOBJECT2_CFLAGS GOBJECT2_LIBS=$pkg_cv_GOBJECT2_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - : + fi pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for EGGDBUS" >&5 -$as_echo_n "checking for EGGDBUS... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GIO2" >&5 +$as_echo_n "checking for GIO2... " >&6; } -if test -n "$PKG_CONFIG"; then - if test -n "$EGGDBUS_CFLAGS"; then - pkg_cv_EGGDBUS_CFLAGS="$EGGDBUS_CFLAGS" - else - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eggdbus-1 >= \$EGGDBUS_REQUIRED \""; } >&5 - ($PKG_CONFIG --exists --print-errors "eggdbus-1 >= $EGGDBUS_REQUIRED ") 2>&5 +if test -n "$GIO2_CFLAGS"; then + pkg_cv_GIO2_CFLAGS="$GIO2_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gio-2.0 >= \$GLIB_REQUIRED \""; } >&5 + ($PKG_CONFIG --exists --print-errors "gio-2.0 >= $GLIB_REQUIRED ") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then - pkg_cv_EGGDBUS_CFLAGS=`$PKG_CONFIG --cflags "eggdbus-1 >= $EGGDBUS_REQUIRED " 2>/dev/null` + pkg_cv_GIO2_CFLAGS=`$PKG_CONFIG --cflags "gio-2.0 >= $GLIB_REQUIRED " 2>/dev/null` else pkg_failed=yes fi - fi -else - pkg_failed=untried + else + pkg_failed=untried fi -if test -n "$PKG_CONFIG"; then - if test -n "$EGGDBUS_LIBS"; then - pkg_cv_EGGDBUS_LIBS="$EGGDBUS_LIBS" - else - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eggdbus-1 >= \$EGGDBUS_REQUIRED \""; } >&5 - ($PKG_CONFIG --exists --print-errors "eggdbus-1 >= $EGGDBUS_REQUIRED ") 2>&5 +if test -n "$GIO2_LIBS"; then + pkg_cv_GIO2_LIBS="$GIO2_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gio-2.0 >= \$GLIB_REQUIRED \""; } >&5 + ($PKG_CONFIG --exists --print-errors "gio-2.0 >= $GLIB_REQUIRED ") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then - pkg_cv_EGGDBUS_LIBS=`$PKG_CONFIG --libs "eggdbus-1 >= $EGGDBUS_REQUIRED " 2>/dev/null` + pkg_cv_GIO2_LIBS=`$PKG_CONFIG --libs "gio-2.0 >= $GLIB_REQUIRED " 2>/dev/null` else pkg_failed=yes fi - fi -else - pkg_failed=untried + else + pkg_failed=untried fi if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes @@ -12205,89 +12282,88 @@ _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - EGGDBUS_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "eggdbus-1 >= $EGGDBUS_REQUIRED "` + GIO2_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "gio-2.0 >= $GLIB_REQUIRED " 2>&1` else - EGGDBUS_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "eggdbus-1 >= $EGGDBUS_REQUIRED "` + GIO2_PKG_ERRORS=`$PKG_CONFIG --print-errors "gio-2.0 >= $GLIB_REQUIRED " 2>&1` fi # Put the nasty error message in config.log where it belongs - echo "$EGGDBUS_PKG_ERRORS" >&5 + echo "$GIO2_PKG_ERRORS" >&5 - as_fn_error "Package requirements (eggdbus-1 >= $EGGDBUS_REQUIRED ) were not met: + as_fn_error $? "Package requirements (gio-2.0 >= $GLIB_REQUIRED ) were not met: -$EGGDBUS_PKG_ERRORS +$GIO2_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. -Alternatively, you may set the environment variables EGGDBUS_CFLAGS -and EGGDBUS_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. -" "$LINENO" 5 +Alternatively, you may set the environment variables GIO2_CFLAGS +and GIO2_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error "The pkg-config script could not be found or is too old. Make sure it +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. -Alternatively, you may set the environment variables EGGDBUS_CFLAGS -and EGGDBUS_LIBS to avoid the need to call pkg-config. +Alternatively, you may set the environment variables GIO2_CFLAGS +and GIO2_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . -See \`config.log' for more details." "$LINENO" 5; } +See \`config.log' for more details" "$LINENO" 5 ; } else - EGGDBUS_CFLAGS=$pkg_cv_EGGDBUS_CFLAGS - EGGDBUS_LIBS=$pkg_cv_EGGDBUS_LIBS + GIO2_CFLAGS=$pkg_cv_GIO2_CFLAGS + GIO2_LIBS=$pkg_cv_GIO2_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - : + fi pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GIO_UNIX" >&5 -$as_echo_n "checking for GIO_UNIX... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GIO_UNIX2" >&5 +$as_echo_n "checking for GIO_UNIX2... " >&6; } -if test -n "$PKG_CONFIG"; then - if test -n "$GIO_UNIX_CFLAGS"; then - pkg_cv_GIO_UNIX_CFLAGS="$GIO_UNIX_CFLAGS" - else - if test -n "$PKG_CONFIG" && \ +if test -n "$GIO_UNIX2_CFLAGS"; then + pkg_cv_GIO_UNIX2_CFLAGS="$GIO_UNIX2_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gio-unix-2.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "gio-unix-2.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then - pkg_cv_GIO_UNIX_CFLAGS=`$PKG_CONFIG --cflags "gio-unix-2.0" 2>/dev/null` + pkg_cv_GIO_UNIX2_CFLAGS=`$PKG_CONFIG --cflags "gio-unix-2.0" 2>/dev/null` else pkg_failed=yes fi - fi -else - pkg_failed=untried + else + pkg_failed=untried fi -if test -n "$PKG_CONFIG"; then - if test -n "$GIO_UNIX_LIBS"; then - pkg_cv_GIO_UNIX_LIBS="$GIO_UNIX_LIBS" - else - if test -n "$PKG_CONFIG" && \ +if test -n "$GIO_UNIX2_LIBS"; then + pkg_cv_GIO_UNIX2_LIBS="$GIO_UNIX2_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gio-unix-2.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "gio-unix-2.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then - pkg_cv_GIO_UNIX_LIBS=`$PKG_CONFIG --libs "gio-unix-2.0" 2>/dev/null` + pkg_cv_GIO_UNIX2_LIBS=`$PKG_CONFIG --libs "gio-unix-2.0" 2>/dev/null` else pkg_failed=yes fi - fi -else - pkg_failed=untried + else + pkg_failed=untried fi if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes @@ -12295,50 +12371,149 @@ _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - GIO_UNIX_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "gio-unix-2.0"` + GIO_UNIX2_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "gio-unix-2.0" 2>&1` else - GIO_UNIX_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "gio-unix-2.0"` + GIO_UNIX2_PKG_ERRORS=`$PKG_CONFIG --print-errors "gio-unix-2.0" 2>&1` fi # Put the nasty error message in config.log where it belongs - echo "$GIO_UNIX_PKG_ERRORS" >&5 + echo "$GIO_UNIX2_PKG_ERRORS" >&5 - as_fn_error "Package requirements (gio-unix-2.0) were not met: + as_fn_error $? "Package requirements (gio-unix-2.0) were not met: -$GIO_UNIX_PKG_ERRORS +$GIO_UNIX2_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. -Alternatively, you may set the environment variables GIO_UNIX_CFLAGS -and GIO_UNIX_LIBS to avoid the need to call pkg-config. +Alternatively, you may set the environment variables GIO_UNIX2_CFLAGS +and GIO_UNIX2_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables GIO_UNIX2_CFLAGS +and GIO_UNIX2_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. -" "$LINENO" 5 + +To get pkg-config, see . +See \`config.log' for more details" "$LINENO" 5 ; } +else + GIO_UNIX2_CFLAGS=$pkg_cv_GIO_UNIX2_CFLAGS + GIO_UNIX2_LIBS=$pkg_cv_GIO_UNIX2_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for EGGDBUS" >&5 +$as_echo_n "checking for EGGDBUS... " >&6; } + +if test -n "$EGGDBUS_CFLAGS"; then + pkg_cv_EGGDBUS_CFLAGS="$EGGDBUS_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eggdbus-1 >= \$EGGDBUS_REQUIRED \""; } >&5 + ($PKG_CONFIG --exists --print-errors "eggdbus-1 >= $EGGDBUS_REQUIRED ") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_EGGDBUS_CFLAGS=`$PKG_CONFIG --cflags "eggdbus-1 >= $EGGDBUS_REQUIRED " 2>/dev/null` +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$EGGDBUS_LIBS"; then + pkg_cv_EGGDBUS_LIBS="$EGGDBUS_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eggdbus-1 >= \$EGGDBUS_REQUIRED \""; } >&5 + ($PKG_CONFIG --exists --print-errors "eggdbus-1 >= $EGGDBUS_REQUIRED ") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_EGGDBUS_LIBS=`$PKG_CONFIG --libs "eggdbus-1 >= $EGGDBUS_REQUIRED " 2>/dev/null` +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + EGGDBUS_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "eggdbus-1 >= $EGGDBUS_REQUIRED " 2>&1` + else + EGGDBUS_PKG_ERRORS=`$PKG_CONFIG --print-errors "eggdbus-1 >= $EGGDBUS_REQUIRED " 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$EGGDBUS_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (eggdbus-1 >= $EGGDBUS_REQUIRED ) were not met: + +$EGGDBUS_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables EGGDBUS_CFLAGS +and EGGDBUS_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error "The pkg-config script could not be found or is too old. Make sure it +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. -Alternatively, you may set the environment variables GIO_UNIX_CFLAGS -and GIO_UNIX_LIBS to avoid the need to call pkg-config. +Alternatively, you may set the environment variables EGGDBUS_CFLAGS +and EGGDBUS_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . -See \`config.log' for more details." "$LINENO" 5; } +See \`config.log' for more details" "$LINENO" 5 ; } else - GIO_UNIX_CFLAGS=$pkg_cv_GIO_UNIX_CFLAGS - GIO_UNIX_LIBS=$pkg_cv_GIO_UNIX_LIBS + EGGDBUS_CFLAGS=$pkg_cv_EGGDBUS_CFLAGS + EGGDBUS_LIBS=$pkg_cv_EGGDBUS_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - : + fi -ZEITGEIST_CFLAGS="$GLIB2_CFLAGS $GOBJECT2_CFLAGS $EGGDBUS_CFLAGS" -ZEITGEIST_LIBS="$GLIB2_LIBS $GOBJECT2_LIBS $EGGDBUS_LIBS" +ZEITGEIST_CFLAGS="$GLIB2_CFLAGS $GOBJECT2_CFLAGS $GIO2_CFLAGS $GIO_UNIX2_CFLAGS $EGGDBUS_CFLAGS" +ZEITGEIST_LIBS="$GLIB2_LIBS $GOBJECT2_LIBS $GIO2_LIBS $GIO_UNIX2_LIBS $EGGDBUS_LIBS" + + + +ZEITGEIST_GIOMODULE_CFLAGS="$GLIB2_CFLAGS $GOBJECT2_CFLAGS $GIO2_CFLAGS $GIO_UNIX2_CFLAGS $ZEITGEIST_CFLAGS" +ZEITGEIST_GIOMODULE_LIBS="$GLIB2_LIBS $GOBJECT2_LIBS $GIO2_LIBS $GIO_UNIX2_LIBS $ZEITGEIST_LIBS" +# Make giomodulesdir honour 'prefix', so that distcheck works. +origgiomodulesdir=`pkg-config --variable=giomoduledir gio-2.0` +giomodulesdir=`echo "$origgiomodulesdir" | sed 's|/usr|${prefix}|'` + @@ -12497,7 +12672,7 @@ test $ac_status = 0; }; then : else - as_fn_error "You need to have gtk-doc >= 1.0 installed to build $PACKAGE_NAME" "$LINENO" 5 + as_fn_error $? "You need to have gtk-doc >= 1.0 installed to build $PACKAGE_NAME" "$LINENO" 5 fi fi @@ -12694,7 +12869,7 @@ -ac_config_files="$ac_config_files zeitgeist-1.0.pc Makefile bindings/Makefile doc/Makefile doc/reference/Makefile examples/Makefile src/Makefile tests/Makefile" +ac_config_files="$ac_config_files zeitgeist-1.0.pc Makefile bindings/Makefile doc/Makefile doc/reference/Makefile examples/Makefile src/Makefile tests/Makefile module/Makefile" cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure @@ -12779,6 +12954,7 @@ ac_libobjs= ac_ltlibobjs= +U= for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue # 1. Remove the extension, and $U if already installed. ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' @@ -12802,47 +12978,51 @@ fi if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then - as_fn_error "conditional \"MAINTAINER_MODE\" was never defined. + as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then - as_fn_error "conditional \"AMDEP\" was never defined. + as_fn_error $? "conditional \"AMDEP\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then - as_fn_error "conditional \"am__fastdepCC\" was never defined. + as_fn_error $? "conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then - as_fn_error "conditional \"am__fastdepCC\" was never defined. + as_fn_error $? "conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then - as_fn_error "conditional \"am__fastdepCC\" was never defined. + as_fn_error $? "conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_DEBUG_TRUE}" && test -z "${ENABLE_DEBUG_FALSE}"; then - as_fn_error "conditional \"ENABLE_DEBUG\" was never defined. + as_fn_error $? "conditional \"ENABLE_DEBUG\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${ENABLE_GIOMODULE_TRUE}" && test -z "${ENABLE_GIOMODULE_FALSE}"; then + as_fn_error $? "conditional \"ENABLE_GIOMODULE\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_GTK_DOC_TRUE}" && test -z "${ENABLE_GTK_DOC_FALSE}"; then - as_fn_error "conditional \"ENABLE_GTK_DOC\" was never defined. + as_fn_error $? "conditional \"ENABLE_GTK_DOC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${GTK_DOC_BUILD_HTML_TRUE}" && test -z "${GTK_DOC_BUILD_HTML_FALSE}"; then - as_fn_error "conditional \"GTK_DOC_BUILD_HTML\" was never defined. + as_fn_error $? "conditional \"GTK_DOC_BUILD_HTML\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${GTK_DOC_BUILD_PDF_TRUE}" && test -z "${GTK_DOC_BUILD_PDF_FALSE}"; then - as_fn_error "conditional \"GTK_DOC_BUILD_PDF\" was never defined. + as_fn_error $? "conditional \"GTK_DOC_BUILD_PDF\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${GTK_DOC_USE_LIBTOOL_TRUE}" && test -z "${GTK_DOC_USE_LIBTOOL_FALSE}"; then - as_fn_error "conditional \"GTK_DOC_USE_LIBTOOL\" was never defined. + as_fn_error $? "conditional \"GTK_DOC_USE_LIBTOOL\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${GTK_DOC_USE_REBASE_TRUE}" && test -z "${GTK_DOC_USE_REBASE_FALSE}"; then - as_fn_error "conditional \"GTK_DOC_USE_REBASE\" was never defined. + as_fn_error $? "conditional \"GTK_DOC_USE_REBASE\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi @@ -12992,19 +13172,19 @@ (unset CDPATH) >/dev/null 2>&1 && unset CDPATH -# as_fn_error ERROR [LINENO LOG_FD] -# --------------------------------- +# as_fn_error STATUS ERROR [LINENO LOG_FD] +# ---------------------------------------- # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are # provided, also output the error to LOG_FD, referencing LINENO. Then exit the -# script with status $?, using 1 if that was 0. +# script with STATUS, using 1 if that was 0. as_fn_error () { - as_status=$?; test $as_status -eq 0 && as_status=1 - if test "$3"; then - as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - $as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3 + as_status=$1; test $as_status -eq 0 && as_status=1 + if test "$4"; then + as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 fi - $as_echo "$as_me: error: $1" >&2 + $as_echo "$as_me: error: $2" >&2 as_fn_exit $as_status } # as_fn_error @@ -13200,7 +13380,7 @@ test -d "$as_dir" && break done test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || as_fn_error "cannot create directory $as_dir" + } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" } # as_fn_mkdir_p @@ -13253,8 +13433,8 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by libzeitgeist $as_me 0.2.2, which was -generated by GNU Autoconf 2.65. Invocation command line was +This file was extended by libzeitgeist $as_me 0.2.8, which was +generated by GNU Autoconf 2.67. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS @@ -13319,11 +13499,11 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -libzeitgeist config.status 0.2.2 -configured by $0, generated by GNU Autoconf 2.65, +libzeitgeist config.status 0.2.8 +configured by $0, generated by GNU Autoconf 2.67, with options \\"\$ac_cs_config\\" -Copyright (C) 2009 Free Software Foundation, Inc. +Copyright (C) 2010 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." @@ -13341,11 +13521,16 @@ while test $# != 0 do case $1 in - --*=*) + --*=?*) ac_option=`expr "X$1" : 'X\([^=]*\)='` ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` ac_shift=: ;; + --*=) + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg= + ac_shift=: + ;; *) ac_option=$1 ac_optarg=$2 @@ -13367,6 +13552,7 @@ $ac_shift case $ac_optarg in *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + '') as_fn_error $? "missing file argument" ;; esac as_fn_append CONFIG_FILES " '$ac_optarg'" ac_need_defaults=false;; @@ -13379,7 +13565,7 @@ ac_need_defaults=false;; --he | --h) # Conflict between --help and --header - as_fn_error "ambiguous option: \`$1' + as_fn_error $? "ambiguous option: \`$1' Try \`$0 --help' for more information.";; --help | --hel | -h ) $as_echo "$ac_cs_usage"; exit ;; @@ -13388,7 +13574,7 @@ ac_cs_silent=: ;; # This is an error. - -*) as_fn_error "unrecognized option: \`$1' + -*) as_fn_error $? "unrecognized option: \`$1' Try \`$0 --help' for more information." ;; *) as_fn_append ac_config_targets " $1" @@ -13708,8 +13894,9 @@ "examples/Makefile") CONFIG_FILES="$CONFIG_FILES examples/Makefile" ;; "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; "tests/Makefile") CONFIG_FILES="$CONFIG_FILES tests/Makefile" ;; + "module/Makefile") CONFIG_FILES="$CONFIG_FILES module/Makefile" ;; - *) as_fn_error "invalid argument: \`$ac_config_target'" "$LINENO" 5;; + *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5 ;; esac done @@ -13747,7 +13934,7 @@ { tmp=./conf$$-$RANDOM (umask 077 && mkdir "$tmp") -} || as_fn_error "cannot create a temporary directory in ." "$LINENO" 5 +} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 # Set up the scripts for CONFIG_FILES section. # No need to generate them if there are no CONFIG_FILES. @@ -13764,7 +13951,7 @@ fi ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then - ac_cs_awk_cr='\r' + ac_cs_awk_cr='\\r' else ac_cs_awk_cr=$ac_cr fi @@ -13778,18 +13965,18 @@ echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && echo "_ACEOF" } >conf$$subs.sh || - as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5 -ac_delim_num=`echo "$ac_subst_vars" | grep -c '$'` + as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 +ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'` ac_delim='%!_!# ' for ac_last_try in false false false false false :; do . ./conf$$subs.sh || - as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5 + as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` if test $ac_delim_n = $ac_delim_num; then break elif $ac_last_try; then - as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5 + as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 else ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi @@ -13878,20 +14065,28 @@ else cat fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \ - || as_fn_error "could not setup config files machinery" "$LINENO" 5 + || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 _ACEOF -# VPATH may cause trouble with some makes, so we remove $(srcdir), -# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and +# VPATH may cause trouble with some makes, so we remove sole $(srcdir), +# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and # trailing colons and then remove the whole line if VPATH becomes empty # (actually we leave an empty line to preserve line numbers). if test "x$srcdir" = x.; then - ac_vpsub='/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/ -s/:*\${srcdir}:*/:/ -s/:*@srcdir@:*/:/ -s/^\([^=]*=[ ]*\):*/\1/ + ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{ +h +s/// +s/^/:/ +s/[ ]*$/:/ +s/:\$(srcdir):/:/g +s/:\${srcdir}:/:/g +s/:@srcdir@:/:/g +s/^:*// s/:*$// +x +s/\(=[ ]*\).*/\1/ +G +s/\n// s/^[^=]*=[ ]*$// }' fi @@ -13919,7 +14114,7 @@ if test -z "$ac_t"; then break elif $ac_last_try; then - as_fn_error "could not make $CONFIG_HEADERS" "$LINENO" 5 + as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5 else ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi @@ -14004,7 +14199,7 @@ _ACAWK _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 - as_fn_error "could not setup config headers machinery" "$LINENO" 5 + as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 fi # test -n "$CONFIG_HEADERS" @@ -14017,7 +14212,7 @@ esac case $ac_mode$ac_tag in :[FHL]*:*);; - :L* | :C*:*) as_fn_error "invalid tag \`$ac_tag'" "$LINENO" 5;; + :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5 ;; :[FH]-) ac_tag=-:-;; :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; esac @@ -14045,7 +14240,7 @@ [\\/$]*) false;; *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; esac || - as_fn_error "cannot find input file: \`$ac_f'" "$LINENO" 5;; + as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5 ;; esac case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac as_fn_append ac_file_inputs " '$ac_f'" @@ -14072,7 +14267,7 @@ case $ac_tag in *:-:* | *:-) cat >"$tmp/stdin" \ - || as_fn_error "could not create $ac_file" "$LINENO" 5 ;; + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; esac ;; esac @@ -14209,22 +14404,22 @@ $ac_datarootdir_hack " eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \ - || as_fn_error "could not create $ac_file" "$LINENO" 5 + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined." >&5 +which seems to be undefined. Please make sure it is defined" >&5 $as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined." >&2;} +which seems to be undefined. Please make sure it is defined" >&2;} rm -f "$tmp/stdin" case $ac_file in -) cat "$tmp/out" && rm -f "$tmp/out";; *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";; esac \ - || as_fn_error "could not create $ac_file" "$LINENO" 5 + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; :H) # @@ -14235,19 +14430,19 @@ $as_echo "/* $configure_input */" \ && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" } >"$tmp/config.h" \ - || as_fn_error "could not create $ac_file" "$LINENO" 5 + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 $as_echo "$as_me: $ac_file is unchanged" >&6;} else rm -f "$ac_file" mv "$tmp/config.h" "$ac_file" \ - || as_fn_error "could not create $ac_file" "$LINENO" 5 + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 fi else $as_echo "/* $configure_input */" \ && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \ - || as_fn_error "could not create -" "$LINENO" 5 + || as_fn_error $? "could not create -" "$LINENO" 5 fi # Compute "$ac_file"'s index in $config_headers. _am_arg="$ac_file" @@ -15032,7 +15227,7 @@ ac_clean_files=$ac_clean_files_save test $ac_write_fail = 0 || - as_fn_error "write failure creating $CONFIG_STATUS" "$LINENO" 5 + as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5 # configure is writing to config.log, and then calls config.status. @@ -15053,10 +15248,38 @@ exec 5>>config.log # Use ||, not &&, to avoid exiting from the if with $? = 1, which # would make configure fail if this is the last instruction. - $ac_cs_success || as_fn_exit $? + $ac_cs_success || as_fn_exit 1 fi if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: + + LibZeitgeist $VERSION + ------------------ + + Prefix : ${prefix} + + Build API docs : ${enable_gtk_doc} + + Build GIO module : ${enable_module} + + Extra CFlags : ${CPPFLAGS} $MAINTAINER_CFLAGS +" >&5 +$as_echo "$as_me: + + LibZeitgeist $VERSION + ------------------ + + Prefix : ${prefix} + + Build API docs : ${enable_gtk_doc} + + Build GIO module : ${enable_module} + + Extra CFlags : ${CPPFLAGS} $MAINTAINER_CFLAGS +" >&6;} + diff -Nru libzeitgeist-0.2.2/configure.ac libzeitgeist-0.2.8/configure.ac --- libzeitgeist-0.2.2/configure.ac 2010-06-23 12:15:54.000000000 +0100 +++ libzeitgeist-0.2.8/configure.ac 2010-08-24 13:18:07.000000000 +0100 @@ -1,4 +1,4 @@ -AC_INIT(libzeitgeist, 0.2.2) +AC_INIT(libzeitgeist, 0.2.8) AM_INIT_AUTOMAKE(AC_PACKAGE_NAME, AC_PACKAGE_VERSION) AM_CONFIG_HEADER(config.h) @@ -32,22 +32,61 @@ AM_CONDITIONAL(ENABLE_DEBUG, test "$enable_debug" = "yes") + + +#################################################################### +# Maintainer C flags +#################################################################### +m4_define([maintainer_flags_default], [no]) +AC_ARG_ENABLE([maintainer-flags], + [AS_HELP_STRING([--enable-maintainer-flags=@<:@no/yes@:>@],[Use strict compiler flags @<:@default=no@:>@])], + [], + [enable_maintainer_flags=maintainer_flags_default]) +AS_IF([test "x$enable_maintainer_flags" = "xyes" && test "x$GCC" = "xyes"], + [ + MAINTAINER_CFLAGS="-g -Werror -Wcast-align -Wno-uninitialized -Wempty-body -Wformat-security -Winit-self" + ] +) +AC_SUBST(MAINTAINER_CFLAGS) + +#################################################################### +# Check whether to build GIO extension point module +#################################################################### +AC_ARG_ENABLE([module], + AS_HELP_STRING([--enable-module=@<:@yes/no@:>@],[build GIO extension point module @<:@default=yes@:>@]),, + [enable_module=yes]) + +if test "x$enable_module" = "xyes"; then + AC_DEFINE(ENABLE_GIOMODULE, 1, [build GIO extension point module]) +fi + +AM_CONDITIONAL(ENABLE_GIOMODULE, test "$enable_module" = "yes") + #################################################################### # Check library deps #################################################################### GLIB_REQUIRED=2.20 EGGDBUS_REQUIRED=0.5 - PKG_CHECK_MODULES(GLIB2, [glib-2.0 >= $GLIB_REQUIRED ]) PKG_CHECK_MODULES(GOBJECT2, [gobject-2.0 >= $GLIB_REQUIRED ]) +PKG_CHECK_MODULES(GIO2, [gio-2.0 >= $GLIB_REQUIRED ]) +PKG_CHECK_MODULES(GIO_UNIX2, [gio-unix-2.0]) PKG_CHECK_MODULES(EGGDBUS, [eggdbus-1 >= $EGGDBUS_REQUIRED ]) -PKG_CHECK_MODULES(GIO_UNIX, [gio-unix-2.0]) -ZEITGEIST_CFLAGS="$GLIB2_CFLAGS $GOBJECT2_CFLAGS $EGGDBUS_CFLAGS" -ZEITGEIST_LIBS="$GLIB2_LIBS $GOBJECT2_LIBS $EGGDBUS_LIBS" +ZEITGEIST_CFLAGS="$GLIB2_CFLAGS $GOBJECT2_CFLAGS $GIO2_CFLAGS $GIO_UNIX2_CFLAGS $EGGDBUS_CFLAGS" +ZEITGEIST_LIBS="$GLIB2_LIBS $GOBJECT2_LIBS $GIO2_LIBS $GIO_UNIX2_LIBS $EGGDBUS_LIBS" AC_SUBST(ZEITGEIST_CFLAGS) AC_SUBST(ZEITGEIST_LIBS) +ZEITGEIST_GIOMODULE_CFLAGS="$GLIB2_CFLAGS $GOBJECT2_CFLAGS $GIO2_CFLAGS $GIO_UNIX2_CFLAGS $ZEITGEIST_CFLAGS" +ZEITGEIST_GIOMODULE_LIBS="$GLIB2_LIBS $GOBJECT2_LIBS $GIO2_LIBS $GIO_UNIX2_LIBS $ZEITGEIST_LIBS" +AC_SUBST(ZEITGEIST_GIOMODULE_CFLAGS) +AC_SUBST(ZEITGEIST_GIOMODULE_LIBS) + +# Make giomodulesdir honour 'prefix', so that distcheck works. +origgiomodulesdir=`pkg-config --variable=giomoduledir gio-2.0` +giomodulesdir=`echo "$origgiomodulesdir" | sed 's|/usr|${prefix}|'` +AC_SUBST(giomodulesdir) GTK_DOC_CHECK(1.0) @@ -69,4 +108,20 @@ examples/Makefile src/Makefile tests/Makefile +module/Makefile ]) + +AC_MSG_NOTICE([ + + LibZeitgeist $VERSION + ------------------ + + Prefix : ${prefix} + + Build API docs : ${enable_gtk_doc} + + Build GIO module : ${enable_module} + + Extra CFlags : ${CPPFLAGS} $MAINTAINER_CFLAGS +]) + diff -Nru libzeitgeist-0.2.2/debian/changelog libzeitgeist-0.2.8/debian/changelog --- libzeitgeist-0.2.2/debian/changelog 2010-09-05 23:48:37.000000000 +0100 +++ libzeitgeist-0.2.8/debian/changelog 2010-09-05 23:48:10.000000000 +0100 @@ -1,11 +1,57 @@ -libzeitgeist (0.2.2-0ubuntu1~lucid~ppa1) lucid; urgency=low +libzeitgeist (0.2.8-0ubuntu1~ppa1) lucid; urgency=low - * Backport. + * Initial upload to Debian (Closes: #595639). + * debian/control: + - Change Maintainer and improve the long descriptions. + * debian/copyright: + - Update and switch to the machine-readable copyright format. + * Change to 3.0 (quilt) source format. + * Disable building of the GIO extension point (won't compile on Debian). - -- Siegfried-Angel Gevatter Pujals Sat, 26 Jun 2010 18:39:15 +0200 + -- Siegfried-Angel Gevatter Pujals Sun, 05 Sep 2010 15:02:12 +0200 + +libzeitgeist (0.2.8-0ubuntu1) maverick; urgency=low + + * New upstream version with GIO integration. + * debian/control, debian/libzeigeist-gio.install: + - Install the new GIO code there. + * debian/rules: + - Correct target naming (-fixup-arch => -post-install-arch). + + -- Sebastien Bacher Tue, 24 Aug 2010 23:58:11 +0200 + +libzeitgeist (0.2.6-0ubuntu1) maverick; urgency=low + + * New upstream release. + * Add debian/libzeitgeist-1.0-0.symbols. + + -- Didier Roche Fri, 13 Aug 2010 12:51:46 +0200 + +libzeitgeist (0.2.4-0ubuntu1) maverick; urgency=low + + * New upstream release "Hemlock" + - New ResultTypes to sort by subject origin as supported by Zeitgeist 0.5.0 + - Fix nasty bug (LP: #559350) causing an integer overflow in Zeitgeist + (Michal Hruby) + * debian/control: + - Bump Standards-Version to latest. + + -- Didier Roche Thu, 05 Aug 2010 17:38:48 +0200 + +libzeitgeist (0.2.3-0ubuntu1) maverick; urgency=low + + * New upstream release. + - New API to talk to the Data Source Registry extension of Zeitgeist + (Michal Hruby) + - A new "connected" property on ZeitgeistLog telling you whether or + not the Zeitgeist daemon is running (Michal Hruby) + - Fix a crasher when finalizing a ZeitgeistLog with active monitors + installed (Michal Hruby) + + -- Didier Roche Mon, 02 Aug 2010 18:22:32 +0200 libzeitgeist (0.2.2-0ubuntu1) maverick; urgency=low - * Initial packaging + * Initial packaging. -- Didier Roche Thu, 24 Jun 2010 20:38:23 +0200 diff -Nru libzeitgeist-0.2.2/debian/control libzeitgeist-0.2.8/debian/control --- libzeitgeist-0.2.2/debian/control 2010-09-05 23:48:37.000000000 +0100 +++ libzeitgeist-0.2.8/debian/control 2010-09-05 23:35:48.000000000 +0100 @@ -1,24 +1,33 @@ Source: libzeitgeist Section: libs Priority: optional -Maintainer: Ubuntu Core Developers +Maintainer: Siegfried-Angel Gevatter Pujals Build-Depends: cdbs, - debhelper (>= 5.0), - libglib2.0-dev (>= 2.24.0), - libeggdbus-1-dev (>= 0.5), - libdbus-1-dev (>= 1.0), - gtk-doc-tools -Standards-Version: 3.8.4 + debhelper (>= 5.0), + libglib2.0-dev (>= 2.24.0), + libeggdbus-1-dev (>= 0.5), + libdbus-1-dev (>= 1.0), + gtk-doc-tools +Standards-Version: 3.9.1 +Vcs-Bzr: bzr+ssh://bazaar.launchpad.net/~zeitgeist-packagers/libzeitgeist/debian +Vcs-Browser: https://code.edge.launchpad.net/~zeitgeist-packagers/libzeitgeist/debian Homepage: https://launchpad.net/libzeitgeist Package: libzeitgeist-1.0-0 -Section: libs Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends} -Recommends: zeitgeist +Recommends: zeitgeist | zeitgeist-core Description: library to access Zeitgeist - shared library - Client library to access and manage the Zeitgeist event log. + Zeitgeist is a service which logs the user's activities and events (files + opened, websites visited, conversations hold with other people, etc.) and + makes the relevant information available to other applications. + . + It serves as a comprehensive activity log and also makes it possible to + determine relationships between items based on usage patterns. + . + Libzeitgeist is a client library to access and manage the Zeitgeist event + log from languages such as C and Vala. . This package contains shared libraries to be used by applications. @@ -30,7 +39,15 @@ libglib2.0-dev (>= 2.24.0) Suggests: libzeitgeist-doc Description: library to access Zeitgeist - development files - Client library to access and manage the Zeitgeist event log. + Zeitgeist is a service which logs the user's activities and events (files + opened, websites visited, conversations hold with other people, etc.) and + makes the relevant information available to other applications. + . + It serves as a comprehensive activity log and also makes it possible to + determine relationships between items based on usage patterns. + . + Libzeitgeist is a client library to access and manage the Zeitgeist event + log from languages such as C and Vala. . This package contains files that are needed to build applications. @@ -41,7 +58,15 @@ Depends: ${misc:Depends}, libzeitgeist-1.0-0 (= ${binary:Version}), Description: library to access Zeitgeist - debugging symbols - Client library to access and manage the Zeitgeist event log. + Zeitgeist is a service which logs the user's activities and events (files + opened, websites visited, conversations hold with other people, etc.) and + makes the relevant information available to other applications. + . + It serves as a comprehensive activity log and also makes it possible to + determine relationships between items based on usage patterns. + . + Libzeitgeist is a client library to access and manage the Zeitgeist event + log from languages such as C and Vala. . This package contains debugging symbols. @@ -51,6 +76,32 @@ Depends: ${misc:Depends} Suggests: devhelp Description: library to access Zeitgeist - documentation - Client library to access and manage the Zeitgeist event log. + Zeitgeist is a service which logs the user's activities and events (files + opened, websites visited, conversations hold with other people, etc.) and + makes the relevant information available to other applications. + . + It serves as a comprehensive activity log and also makes it possible to + determine relationships between items based on usage patterns. + . + Libzeitgeist is a client library to access and manage the Zeitgeist event + log from languages such as C and Vala. . This package contains the documentation. + +#Package: libzeitgeist-gio +#Architecture: any +#Depends: ${shlibs:Depends}, +# ${misc:Depends} +#Recommends: zeitgeist +#Description: library to access Zeitgeist - GIO integration +# Zeitgeist is a service which logs the user's activities and events (files +# opened, websites visited, conversations hold with other people, etc.) and +# makes the relevant information available to other applications. +# . +# It serves as a comprehensive activity log and also makes it possible to +# determine relationships between items based on usage patterns. +# . +# Libzeitgeist is a client library to access and manage the Zeitgeist event +# log from languages such as C and Vala. +# . +# This package contains GIO integration for Zeitgeist diff -Nru libzeitgeist-0.2.2/debian/copyright libzeitgeist-0.2.8/debian/copyright --- libzeitgeist-0.2.2/debian/copyright 2010-09-05 23:48:37.000000000 +0100 +++ libzeitgeist-0.2.8/debian/copyright 2010-09-05 23:35:48.000000000 +0100 @@ -1,49 +1,43 @@ -This work was packaged for Ubuntu by: - - Mikkel Kamstrup Erlandsen on Tue, 20 Apr 2010 10:23:54 +0200 - -It was downloaded from https://launchpad.net/libzeitgeist - -Upstream Author: - - Mikkel Kamstrup Erlandsen - -Copyright: - - Copyright (C) 2010 Canonical Ltd. - -License: - - * bindings/*, src/* - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License Version 3.0 as published by the Free Software Foundation. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - -On Debian systems, the complete text of the GNU Lesser General Public License -can be found in `/usr/share/common-licenses/LGPL-3' - - * examples/*, tests/*, tools/*: - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License version 3 as - published by the Free Software Foundation. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - -On Debian systems, the complete text of the GNU General Public License -can be found in `/usr/share/common-licenses/GPL-3' - -The Debian packaging is: - - Copyright (C) 2010 Canonical Ltd. - -and is licensed under the GPL version 3, see `/usr/share/common-licenses/GPL-3'. +Format-Specification: http://dep.debian.net/deps/dep5/#index4h1 +Name: libzeitgeist +Maintainer: Mikkel Kamstrup Erlandsen +Source: https://launchpad.net/libzeitgeist + +Files: * +Copyright: © 2010, Canonical Ltd. + © 2010, Michal Hruby +License: LGPL-3 + +Files: examples/*, tests/*, tools/* +Copyright: © 2010, Canonical Ltd. + © 2010, Michal Hruby +License: GPL-3 + +Files: debian/* +Copyright: © 2010, Siegfried-Angel Gevatter Pujals + © 2010, Canonical Ltd. +License: GPL-3 + +License: LGPL-3 + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License Version 3.0 as published by the Free Software Foundation. + . + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + ERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + . + See /usr/share/common-licenses/LGPL-3. + +License: GPL-3 + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License version 3 as + published by the Free Software Foundation. + . + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + . + See /usr/share/common-licenses/GPL-3. diff -Nru libzeitgeist-0.2.2/debian/libzeitgeist-1.0-0.symbols libzeitgeist-0.2.8/debian/libzeitgeist-1.0-0.symbols --- libzeitgeist-0.2.2/debian/libzeitgeist-1.0-0.symbols 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/debian/libzeitgeist-1.0-0.symbols 2010-09-05 23:35:48.000000000 +0100 @@ -0,0 +1,137 @@ +libzeitgeist-1.0.so.0 libzeitgeist-1.0-0 #MINVER# + zeitgeist_data_source_get_description@Base 0.2.6 + zeitgeist_data_source_get_event_templates@Base 0.2.6 + zeitgeist_data_source_get_name@Base 0.2.6 + zeitgeist_data_source_get_timestamp@Base 0.2.6 + zeitgeist_data_source_get_type@Base 0.2.6 + zeitgeist_data_source_get_unique_id@Base 0.2.6 + zeitgeist_data_source_is_enabled@Base 0.2.6 + zeitgeist_data_source_is_running@Base 0.2.6 + zeitgeist_data_source_new@Base 0.2.6 + zeitgeist_data_source_new_full@Base 0.2.6 + zeitgeist_data_source_registry_get_data_sources@Base 0.2.6 + zeitgeist_data_source_registry_get_data_sources_finish@Base 0.2.6 + zeitgeist_data_source_registry_get_type@Base 0.2.6 + zeitgeist_data_source_registry_new@Base 0.2.6 + zeitgeist_data_source_registry_register_data_source@Base 0.2.6 + zeitgeist_data_source_registry_register_data_source_finish@Base 0.2.6 + zeitgeist_data_source_registry_set_data_source_enabled@Base 0.2.6 + zeitgeist_data_source_registry_set_data_source_enabled_finish@Base 0.2.6 + zeitgeist_data_source_set_description@Base 0.2.6 + zeitgeist_data_source_set_enabled@Base 0.2.6 + zeitgeist_data_source_set_event_templates@Base 0.2.6 + zeitgeist_data_source_set_name@Base 0.2.6 + zeitgeist_data_source_set_running@Base 0.2.6 + zeitgeist_data_source_set_timestamp@Base 0.2.6 + zeitgeist_data_source_set_unique_id@Base 0.2.6 + zeitgeist_event_add_subject@Base 0.2.6 + zeitgeist_event_get_actor@Base 0.2.6 + zeitgeist_event_get_id@Base 0.2.6 + zeitgeist_event_get_interpretation@Base 0.2.6 + zeitgeist_event_get_manifestation@Base 0.2.6 + zeitgeist_event_get_payload@Base 0.2.6 + zeitgeist_event_get_subject@Base 0.2.6 + zeitgeist_event_get_timestamp@Base 0.2.6 + zeitgeist_event_get_type@Base 0.2.6 + zeitgeist_event_new@Base 0.2.6 + zeitgeist_event_new_full@Base 0.2.6 + zeitgeist_event_new_full_valist@Base 0.2.6 + zeitgeist_event_num_subjects@Base 0.2.6 + zeitgeist_event_set_actor@Base 0.2.6 + zeitgeist_event_set_actor_from_app_info@Base 0.2.6 + zeitgeist_event_set_id@Base 0.2.6 + zeitgeist_event_set_interpretation@Base 0.2.6 + zeitgeist_event_set_manifestation@Base 0.2.6 + zeitgeist_event_set_payload@Base 0.2.6 + zeitgeist_event_set_timestamp@Base 0.2.6 + zeitgeist_index_get_type@Base 0.2.6 + zeitgeist_index_new@Base 0.2.6 + zeitgeist_index_search@Base 0.2.6 + zeitgeist_index_search_finish@Base 0.2.6 + zeitgeist_interpretation_for_mimetype@Base 0.2.6 + zeitgeist_log_delete_events@Base 0.2.6 + zeitgeist_log_delete_events_finish@Base 0.2.6 + zeitgeist_log_delete_log@Base 0.2.6 + zeitgeist_log_delete_log_finish@Base 0.2.6 + zeitgeist_log_find_event_ids@Base 0.2.6 + zeitgeist_log_find_event_ids_finish@Base 0.2.6 + zeitgeist_log_find_events@Base 0.2.6 + zeitgeist_log_find_events_finish@Base 0.2.6 + zeitgeist_log_find_related_uris@Base 0.2.6 + zeitgeist_log_find_related_uris_finish@Base 0.2.6 + zeitgeist_log_get_events@Base 0.2.6 + zeitgeist_log_get_events_finish@Base 0.2.6 + zeitgeist_log_get_type@Base 0.2.6 + zeitgeist_log_insert_events@Base 0.2.6 + zeitgeist_log_insert_events_finish@Base 0.2.6 + zeitgeist_log_insert_events_from_ptrarray@Base 0.2.6 + zeitgeist_log_insert_events_no_reply@Base 0.2.6 + zeitgeist_log_insert_events_valist@Base 0.2.6 + zeitgeist_log_install_monitor@Base 0.2.6 + zeitgeist_log_install_monitor_finish@Base 0.2.6 + zeitgeist_log_is_connected@Base 0.2.6 + zeitgeist_log_new@Base 0.2.6 + zeitgeist_log_quit@Base 0.2.6 + zeitgeist_log_quit_finish@Base 0.2.6 + zeitgeist_log_remove_monitor@Base 0.2.6 + zeitgeist_log_remove_monitor_finish@Base 0.2.6 + zeitgeist_manifestation_for_uri@Base 0.2.6 + zeitgeist_monitor_get_path@Base 0.2.6 + zeitgeist_monitor_get_templates@Base 0.2.6 + zeitgeist_monitor_get_time_range@Base 0.2.6 + zeitgeist_monitor_get_type@Base 0.2.6 + zeitgeist_monitor_new@Base 0.2.6 + zeitgeist_register_mimetype@Base 0.2.6 + zeitgeist_register_mimetype_regex@Base 0.2.6 + zeitgeist_register_uri_scheme@Base 0.2.6 + zeitgeist_result_set_estimated_matches@Base 0.2.6 + zeitgeist_result_set_get_type@Base 0.2.6 + zeitgeist_result_set_has_next@Base 0.2.6 + zeitgeist_result_set_next@Base 0.2.6 + zeitgeist_result_set_peek@Base 0.2.6 + zeitgeist_result_set_seek@Base 0.2.6 + zeitgeist_result_set_size@Base 0.2.6 + zeitgeist_result_set_tell@Base 0.2.6 + zeitgeist_result_type_get_type@Base 0.2.6 + zeitgeist_simple_result_set_get_type@Base 0.2.6 + zeitgeist_storage_state_get_type@Base 0.2.6 + zeitgeist_subject_get_interpretation@Base 0.2.6 + zeitgeist_subject_get_manifestation@Base 0.2.6 + zeitgeist_subject_get_mimetype@Base 0.2.6 + zeitgeist_subject_get_origin@Base 0.2.6 + zeitgeist_subject_get_storage@Base 0.2.6 + zeitgeist_subject_get_text@Base 0.2.6 + zeitgeist_subject_get_type@Base 0.2.6 + zeitgeist_subject_get_uri@Base 0.2.6 + zeitgeist_subject_new@Base 0.2.6 + zeitgeist_subject_new_full@Base 0.2.6 + zeitgeist_subject_set_interpretation@Base 0.2.6 + zeitgeist_subject_set_manifestation@Base 0.2.6 + zeitgeist_subject_set_mimetype@Base 0.2.6 + zeitgeist_subject_set_origin@Base 0.2.6 + zeitgeist_subject_set_storage@Base 0.2.6 + zeitgeist_subject_set_text@Base 0.2.6 + zeitgeist_subject_set_uri@Base 0.2.6 + zeitgeist_symbol_get_all_children@Base 0.2.6 + zeitgeist_symbol_get_children@Base 0.2.6 + zeitgeist_symbol_get_parents@Base 0.2.6 + zeitgeist_symbol_is_a@Base 0.2.6 + zeitgeist_time_range_get_end@Base 0.2.6 + zeitgeist_time_range_get_end_iso8601@Base 0.2.6 + zeitgeist_time_range_get_start@Base 0.2.6 + zeitgeist_time_range_get_start_iso8601@Base 0.2.6 + zeitgeist_time_range_get_type@Base 0.2.6 + zeitgeist_time_range_new@Base 0.2.6 + zeitgeist_time_range_new_anytime@Base 0.2.6 + zeitgeist_time_range_new_from_now@Base 0.2.6 + zeitgeist_time_range_new_to_now@Base 0.2.6 + zeitgeist_timestamp_for_now@Base 0.2.6 + zeitgeist_timestamp_from_date@Base 0.2.6 + zeitgeist_timestamp_from_dmy@Base 0.2.6 + zeitgeist_timestamp_from_iso8601@Base 0.2.6 + zeitgeist_timestamp_from_timeval@Base 0.2.6 + zeitgeist_timestamp_next_midnight@Base 0.2.6 + zeitgeist_timestamp_prev_midnight@Base 0.2.6 + zeitgeist_timestamp_to_date@Base 0.2.6 + zeitgeist_timestamp_to_iso8601@Base 0.2.6 + zeitgeist_timestamp_to_timeval@Base 0.2.6 diff -Nru libzeitgeist-0.2.2/debian/libzeitgeist-gio.install libzeitgeist-0.2.8/debian/libzeitgeist-gio.install --- libzeitgeist-0.2.2/debian/libzeitgeist-gio.install 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/debian/libzeitgeist-gio.install 2010-09-05 23:35:48.000000000 +0100 @@ -0,0 +1 @@ +debian/tmp/usr/lib/gio diff -Nru libzeitgeist-0.2.2/debian/rules libzeitgeist-0.2.8/debian/rules --- libzeitgeist-0.2.2/debian/rules 2010-09-05 23:48:37.000000000 +0100 +++ libzeitgeist-0.2.8/debian/rules 2010-09-05 23:35:48.000000000 +0100 @@ -2,14 +2,13 @@ include /usr/share/cdbs/1/class/gnome.mk include /usr/share/cdbs/1/rules/debhelper.mk -include /usr/share/cdbs/1/rules/simple-patchsys.mk include /usr/share/cdbs/1/rules/utils.mk LDFLAGS += -Wl,-z,defs -Wl,--as-needed -DEB_CONFIGURE_EXTRA_FLAGS = --enable-gtk-doc +DEB_CONFIGURE_EXTRA_FLAGS = --enable-gtk-doc --enable-module=no DEB_DH_MAKESHLIBS_ARGS_libzeitgeist1.0-0 += -V 'libzeitgeist1.0-0 (>= 0.1.0)' -common-binary-fixup-arch:: +common-binary-post-install-arch:: find debian/tmp/usr/lib -name \*.la -exec rm {} \; find debian/tmp/usr/lib -name \*.a -exec rm {} \; diff -Nru libzeitgeist-0.2.2/debian/source/format libzeitgeist-0.2.8/debian/source/format --- libzeitgeist-0.2.2/debian/source/format 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/debian/source/format 2010-09-05 23:48:38.000000000 +0100 @@ -0,0 +1 @@ +3.0 (quilt) diff -Nru libzeitgeist-0.2.2/doc/Makefile.in libzeitgeist-0.2.8/doc/Makefile.in --- libzeitgeist-0.2.2/doc/Makefile.in 2010-06-23 12:16:11.000000000 +0100 +++ libzeitgeist-0.2.8/doc/Makefile.in 2010-08-24 13:18:30.000000000 +0100 @@ -119,8 +119,10 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GIO_UNIX_CFLAGS = @GIO_UNIX_CFLAGS@ -GIO_UNIX_LIBS = @GIO_UNIX_LIBS@ +GIO2_CFLAGS = @GIO2_CFLAGS@ +GIO2_LIBS = @GIO2_LIBS@ +GIO_UNIX2_CFLAGS = @GIO_UNIX2_CFLAGS@ +GIO_UNIX2_LIBS = @GIO_UNIX2_LIBS@ GLIB2_CFLAGS = @GLIB2_CFLAGS@ GLIB2_LIBS = @GLIB2_LIBS@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ @@ -146,6 +148,7 @@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ +MAINTAINER_CFLAGS = @MAINTAINER_CFLAGS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ NM = @NM@ @@ -163,6 +166,8 @@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ @@ -170,6 +175,8 @@ STRIP = @STRIP@ VERSION = @VERSION@ ZEITGEIST_CFLAGS = @ZEITGEIST_CFLAGS@ +ZEITGEIST_GIOMODULE_CFLAGS = @ZEITGEIST_GIOMODULE_CFLAGS@ +ZEITGEIST_GIOMODULE_LIBS = @ZEITGEIST_GIOMODULE_LIBS@ ZEITGEIST_LIBS = @ZEITGEIST_LIBS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ @@ -194,6 +201,7 @@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ +giomodulesdir = @giomodulesdir@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ diff -Nru libzeitgeist-0.2.2/doc/reference/html/api-index-full.html libzeitgeist-0.2.8/doc/reference/html/api-index-full.html --- libzeitgeist-0.2.2/doc/reference/html/api-index-full.html 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/api-index-full.html 2010-08-24 13:19:15.000000000 +0100 @@ -7,7 +7,7 @@ - + @@ -20,7 +20,9 @@   -E +D +  |  + E  |  I  |  @@ -42,7 +44,128 @@

API Index

-

E

+

D

+
+ZeitgeistDataSource, struct in ZeitgeistDataSource +
+
+
+ZeitgeistDataSourceClass, struct in ZeitgeistDataSource +
+
+
+ZeitgeistDataSourceRegistry, struct in ZeitgeistDataSourceRegistry +
+
+
+ZeitgeistDataSourceRegistry::source-disconnected, object signal in ZeitgeistDataSourceRegistry +
+
+
+ZeitgeistDataSourceRegistry::source-enabled, object signal in ZeitgeistDataSourceRegistry +
+
+
+ZeitgeistDataSourceRegistry::source-registered, object signal in ZeitgeistDataSourceRegistry +
+
+
+ZeitgeistDataSourceRegistryClass, struct in ZeitgeistDataSourceRegistry +
+
+
+zeitgeist_data_source_get_description, function in ZeitgeistDataSource +
+
+
+zeitgeist_data_source_get_event_templates, function in ZeitgeistDataSource +
+
+
+zeitgeist_data_source_get_name, function in ZeitgeistDataSource +
+
+
+zeitgeist_data_source_get_timestamp, function in ZeitgeistDataSource +
+
+
+zeitgeist_data_source_get_unique_id, function in ZeitgeistDataSource +
+
+
+zeitgeist_data_source_is_enabled, function in ZeitgeistDataSource +
+
+
+zeitgeist_data_source_is_running, function in ZeitgeistDataSource +
+
+
+zeitgeist_data_source_new, function in ZeitgeistDataSource +
+
+
+zeitgeist_data_source_new_full, function in ZeitgeistDataSource +
+
+
+zeitgeist_data_source_registry_get_data_sources, function in ZeitgeistDataSourceRegistry +
+
+
+zeitgeist_data_source_registry_get_data_sources_finish, function in ZeitgeistDataSourceRegistry +
+
+
+zeitgeist_data_source_registry_new, function in ZeitgeistDataSourceRegistry +
+
+
+zeitgeist_data_source_registry_register_data_source, function in ZeitgeistDataSourceRegistry +
+
+
+zeitgeist_data_source_registry_register_data_source_finish, function in ZeitgeistDataSourceRegistry +
+
+
+zeitgeist_data_source_registry_set_data_source_enabled, function in ZeitgeistDataSourceRegistry +
+
+
+zeitgeist_data_source_registry_set_data_source_enabled_finish, function in ZeitgeistDataSourceRegistry +
+
+
+zeitgeist_data_source_set_description, function in ZeitgeistDataSource +
+
+
+zeitgeist_data_source_set_enabled, function in ZeitgeistDataSource +
+
+
+zeitgeist_data_source_set_event_templates, function in ZeitgeistDataSource +
+
+
+zeitgeist_data_source_set_name, function in ZeitgeistDataSource +
+
+
+zeitgeist_data_source_set_running, function in ZeitgeistDataSource +
+
+
+zeitgeist_data_source_set_timestamp, function in ZeitgeistDataSource +
+
+
+zeitgeist_data_source_set_unique_id, function in ZeitgeistDataSource +
+
+

E

ZeitgeistEvent, struct in ZeitgeistEvent
@@ -104,6 +227,10 @@
+zeitgeist_event_set_actor_from_app_info, function in ZeitgeistEvent +
+
+
zeitgeist_event_set_id, function in ZeitgeistEvent
@@ -154,6 +281,10 @@
+ZeitgeistLog:connected, object property in ZeitgeistLog +
+
+
ZeitgeistLogClass, struct in ZeitgeistLog
@@ -693,6 +824,22 @@ zeitgeist_subject_set_uri, function in ZeitgeistSubject
+
+zeitgeist_symbol_get_all_children, function in Symbol comprehension +
+
+
+zeitgeist_symbol_get_children, function in Symbol comprehension +
+
+
+zeitgeist_symbol_get_parents, function in Symbol comprehension +
+
+
+zeitgeist_symbol_is_a, function in Symbol comprehension +
+

T

ZeitgeistTimeRange, struct in ZeitgeistTimeRange @@ -866,6 +1013,6 @@
+ Generated by GTK-Doc V1.15 \ No newline at end of file diff -Nru libzeitgeist-0.2.2/doc/reference/html/ch01.html libzeitgeist-0.2.8/doc/reference/html/ch01.html --- libzeitgeist-0.2.2/doc/reference/html/ch01.html 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/ch01.html 2010-08-24 13:19:15.000000000 +0100 @@ -8,7 +8,7 @@ - + @@ -21,7 +21,7 @@

-Classes

+Classes
ZeitgeistEventZetigeistEvent objects abstract events returned from Zeitgeist queries @@ -45,6 +45,6 @@
+ Generated by GTK-Doc V1.15 \ No newline at end of file diff -Nru libzeitgeist-0.2.2/doc/reference/html/ch02.html libzeitgeist-0.2.8/doc/reference/html/ch02.html --- libzeitgeist-0.2.2/doc/reference/html/ch02.html 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/ch02.html 2010-08-24 13:19:15.000000000 +0100 @@ -8,7 +8,7 @@ - + @@ -21,7 +21,7 @@

-Utility Functions

+Utility Functions
Mimetype mapping and URI comprehension @@ -29,10 +29,14 @@
Timestamp handling — Convenience functions for dealing with timestamps and dates
+
+Symbol comprehension — Used to get information about Interpretation and/or + Manifestation symbols +
+ Generated by GTK-Doc V1.15 \ No newline at end of file diff -Nru libzeitgeist-0.2.2/doc/reference/html/ch03.html libzeitgeist-0.2.8/doc/reference/html/ch03.html --- libzeitgeist-0.2.2/doc/reference/html/ch03.html 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/ch03.html 2010-08-24 13:19:15.000000000 +0100 @@ -6,14 +6,14 @@ - + - + - + @@ -21,7 +21,7 @@

-Enumerations and Macros

+Enumerations and Macros
Enumerations — Enumerations used in the Zeitgeist API @@ -38,6 +38,6 @@
+ Generated by GTK-Doc V1.15 \ No newline at end of file diff -Nru libzeitgeist-0.2.2/doc/reference/html/ch04.html libzeitgeist-0.2.8/doc/reference/html/ch04.html --- libzeitgeist-0.2.2/doc/reference/html/ch04.html 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/ch04.html 2010-08-24 13:19:15.000000000 +0100 @@ -8,7 +8,7 @@ - + @@ -21,13 +21,22 @@

-API for Zeitgeist Extensions

-
+API for Zeitgeist Extensions
+
+
ZeitgeistIndex — Query the Zeitgeist Full Text Search Extension -
+ +
+ZeitgeistDataSource — Abstracts data sources used by + the ZeitgeistDataSourceRegistry extension +
+
+ZeitgeistDataSourceRegistry — Query the Zeitgeist Data Source Registry extension +
+ + Generated by GTK-Doc V1.15 \ No newline at end of file diff -Nru libzeitgeist-0.2.2/doc/reference/html/index.html libzeitgeist-0.2.8/doc/reference/html/index.html --- libzeitgeist-0.2.2/doc/reference/html/index.html 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/index.html 2010-08-24 13:19:15.000000000 +0100 @@ -6,7 +6,7 @@ - + @@ -45,6 +45,10 @@
Timestamp handling — Convenience functions for dealing with timestamps and dates
+
+Symbol comprehension — Used to get information about Interpretation and/or + Manifestation symbols +
Enumerations and Macros
@@ -61,15 +65,24 @@
API for Zeitgeist Extensions
-
+
+
ZeitgeistIndex — Query the Zeitgeist Full Text Search Extension -
+ +
+ZeitgeistDataSource — Abstracts data sources used by + the ZeitgeistDataSourceRegistry extension +
+
+ZeitgeistDataSourceRegistry — Query the Zeitgeist Data Source Registry extension +
+
Object Hierarchy
API Index
+ Generated by GTK-Doc V1.15 \ No newline at end of file diff -Nru libzeitgeist-0.2.2/doc/reference/html/index.sgml libzeitgeist-0.2.8/doc/reference/html/index.sgml --- libzeitgeist-0.2.2/doc/reference/html/index.sgml 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/index.sgml 2010-08-24 13:19:15.000000000 +0100 @@ -18,6 +18,7 @@ + @@ -26,6 +27,7 @@ + @@ -54,6 +56,8 @@ + + @@ -80,8 +84,8 @@ - + @@ -156,6 +160,14 @@ + + + + + + + + @@ -173,6 +185,10 @@ + + + + @@ -276,3 +292,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -Nru libzeitgeist-0.2.2/doc/reference/html/object-tree.html libzeitgeist-0.2.8/doc/reference/html/object-tree.html --- libzeitgeist-0.2.2/doc/reference/html/object-tree.html 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/object-tree.html 2010-08-24 13:19:15.000000000 +0100 @@ -6,14 +6,14 @@ - + - + - + @@ -24,19 +24,21 @@ Object Hierarchy
     GObject
-        ZeitgeistLog
         GInitiallyUnowned
+            ZeitgeistDataSource
             ZeitgeistEvent
             ZeitgeistSubject
             ZeitgeistTimeRange
-        ZeitgeistMonitor
+        ZeitgeistDataSourceRegistry
         ZeitgeistIndex
+        ZeitgeistLog
+        ZeitgeistMonitor
     GInterface
         ZeitgeistResultSet
 
+ Generated by GTK-Doc V1.15 \ No newline at end of file diff -Nru libzeitgeist-0.2.2/doc/reference/html/style.css libzeitgeist-0.2.8/doc/reference/html/style.css --- libzeitgeist-0.2.2/doc/reference/html/style.css 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/style.css 2010-08-24 13:19:15.000000000 +0100 @@ -209,6 +209,14 @@ font-weight: normal; } +.annotation +{ + /* tango:aluminium 5 */ + color: #555753; + font-size: 80%; + font-weight: normal; +} + /* code listings */ .listing_code .programlisting .cbracket { color: #a40000; } /* tango: scarlet red 3 */ diff -Nru libzeitgeist-0.2.2/doc/reference/html/zeitgeist-1.0.devhelp libzeitgeist-0.2.8/doc/reference/html/zeitgeist-1.0.devhelp --- libzeitgeist-0.2.2/doc/reference/html/zeitgeist-1.0.devhelp 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/zeitgeist-1.0.devhelp 2010-08-24 13:19:15.000000000 +0100 @@ -13,6 +13,7 @@ + @@ -21,6 +22,8 @@ + + @@ -41,6 +44,7 @@ + @@ -72,6 +76,7 @@ + @@ -82,8 +87,8 @@ - + @@ -140,6 +145,10 @@ + + + + @@ -229,5 +238,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -Nru libzeitgeist-0.2.2/doc/reference/html/zeitgeist-1.0.devhelp2 libzeitgeist-0.2.8/doc/reference/html/zeitgeist-1.0.devhelp2 --- libzeitgeist-0.2.2/doc/reference/html/zeitgeist-1.0.devhelp2 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/zeitgeist-1.0.devhelp2 2010-08-24 13:19:15.000000000 +0100 @@ -13,6 +13,7 @@ + @@ -21,6 +22,8 @@ + + @@ -41,6 +44,7 @@ + @@ -72,6 +76,7 @@ + @@ -82,8 +87,8 @@ - + @@ -140,6 +145,10 @@ + + + + @@ -229,6 +238,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -239,6 +278,10 @@ + + + + diff -Nru libzeitgeist-0.2.2/doc/reference/html/zeitgeist-1.0-Enumerations.html libzeitgeist-0.2.8/doc/reference/html/zeitgeist-1.0-Enumerations.html --- libzeitgeist-0.2.2/doc/reference/html/zeitgeist-1.0-Enumerations.html 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/zeitgeist-1.0-Enumerations.html 2010-08-24 13:19:15.000000000 +0100 @@ -8,7 +8,7 @@ - + @@ -89,7 +89,11 @@ ZEITGEIST_RESULT_TYPE_MOST_POPULAR_ACTOR = 6, ZEITGEIST_RESULT_TYPE_LEAST_POPULAR_ACTOR = 7, ZEITGEIST_RESULT_TYPE_MOST_RECENT_ACTOR = 8, - ZEITGEIST_RESULT_TYPE_LEAST_RECENT_ACTOR = 6, + ZEITGEIST_RESULT_TYPE_LEAST_RECENT_ACTOR = 9, + ZEITGEIST_RESULT_TYPE_MOST_RECENT_ORIGIN = 10, + ZEITGEIST_RESULT_TYPE_LEAST_RECENT_ORIGIN = 11, + ZEITGEIST_RESULT_TYPE_MOST_POPULAR_ORIGIN = 12, + ZEITGEIST_RESULT_TYPE_LEAST_POPULAR_ORIGIN = 13, ZEITGEIST_RESULT_TYPE_RELEVANCY = 100, } ZeitgeistResultType; @@ -128,7 +132,7 @@ - @@ -152,6 +156,26 @@ + + + + + + + + + + + + + + + + @@ -221,6 +245,6 @@ + Generated by GTK-Doc V1.15 \ No newline at end of file diff -Nru libzeitgeist-0.2.2/doc/reference/html/zeitgeist-1.0-Interpretation-Ontology.html libzeitgeist-0.2.8/doc/reference/html/zeitgeist-1.0-Interpretation-Ontology.html --- libzeitgeist-0.2.2/doc/reference/html/zeitgeist-1.0-Interpretation-Ontology.html 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/zeitgeist-1.0-Interpretation-Ontology.html 2010-08-24 13:19:15.000000000 +0100 @@ -8,7 +8,7 @@ - + @@ -1153,6 +1153,6 @@ + Generated by GTK-Doc V1.15 \ No newline at end of file diff -Nru libzeitgeist-0.2.2/doc/reference/html/zeitgeist-1.0-Manifestation-Ontology.html libzeitgeist-0.2.8/doc/reference/html/zeitgeist-1.0-Manifestation-Ontology.html --- libzeitgeist-0.2.2/doc/reference/html/zeitgeist-1.0-Manifestation-Ontology.html 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/zeitgeist-1.0-Manifestation-Ontology.html 2010-08-24 13:19:15.000000000 +0100 @@ -8,7 +8,7 @@ - + @@ -431,6 +431,6 @@ + Generated by GTK-Doc V1.15 \ No newline at end of file diff -Nru libzeitgeist-0.2.2/doc/reference/html/zeitgeist-1.0-Mimetype-mapping-and-URI-comprehension.html libzeitgeist-0.2.8/doc/reference/html/zeitgeist-1.0-Mimetype-mapping-and-URI-comprehension.html --- libzeitgeist-0.2.2/doc/reference/html/zeitgeist-1.0-Mimetype-mapping-and-URI-comprehension.html 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/zeitgeist-1.0-Mimetype-mapping-and-URI-comprehension.html 2010-08-24 13:19:15.000000000 +0100 @@ -8,7 +8,7 @@ - + @@ -234,6 +234,6 @@ + Generated by GTK-Doc V1.15 \ No newline at end of file diff -Nru libzeitgeist-0.2.2/doc/reference/html/zeitgeist-1.0-Symbol-comprehension.html libzeitgeist-0.2.8/doc/reference/html/zeitgeist-1.0-Symbol-comprehension.html --- libzeitgeist-0.2.2/doc/reference/html/zeitgeist-1.0-Symbol-comprehension.html 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/zeitgeist-1.0-Symbol-comprehension.html 2010-08-24 13:19:15.000000000 +0100 @@ -0,0 +1,170 @@ + + + + +Symbol comprehension + + + + + + + + + + + + + + + + + + + +
+
+
+ + +
+

Symbol comprehension

+

Symbol comprehension — Used to get information about Interpretation and/or + Manifestation symbols

+
+
+

Synopsis

+
+#include <zeitgeist.h>
+
+GList*              zeitgeist_symbol_get_parents        (const gchar *symbol);
+GList*              zeitgeist_symbol_get_children       (const gchar *symbol);
+GList*              zeitgeist_symbol_get_all_children   (const gchar *symbol);
+gboolean            zeitgeist_symbol_is_a               (const gchar *symbol,
+                                                         const gchar *parent);
+
+
+
+

Description

+
+
+

Details

+
+

zeitgeist_symbol_get_parents ()

+
GList*              zeitgeist_symbol_get_parents        (const gchar *symbol);
+

+Gets list of immediate parents of the specified symbol. +

+
++ + + + + + + + + + +

symbol :

A symbol. +

Returns :

A newly allocated list of immediate parents of this symbol. + The data elements of the list contain strings which you + do not own, use g_strdup() if you intend to work with them. + Free the list with a call to g_list_free(). +
+
+
+
+

zeitgeist_symbol_get_children ()

+
GList*              zeitgeist_symbol_get_children       (const gchar *symbol);
+

+Gets list of immediate children of the specified symbol. +

+
++ + + + + + + + + + +

symbol :

A symbol. +

Returns :

A newly allocated list of immediate children of this symbol. + The data elements of the list contain strings which you + do not own, use g_strdup() if you intend to work with them. + Free the list with a call to g_list_free(). +
+
+
+
+

zeitgeist_symbol_get_all_children ()

+
GList*              zeitgeist_symbol_get_all_children   (const gchar *symbol);
+

+Gets list of all children of the specified symbol. +

+
++ + + + + + + + + + +

symbol :

A symbol. +

Returns :

A newly allocated list of all children of this symbol (includes + also children of children recursively). + The data elements of the list contain strings which you + do not own, use g_strdup() if you intend to work with them. + Free the list with a call to g_list_free(). +
+
+
+
+

zeitgeist_symbol_is_a ()

+
gboolean            zeitgeist_symbol_is_a               (const gchar *symbol,
+                                                         const gchar *parent);
+

+Determines if symbol is child of parent. +

+
++ + + + + + + + + + + + + + +

symbol :

A symbol. +

parent :

Parent symbol. +

Returns :

True if symbol is child of parent (or equal to parent), + FALSE otherwise. +
+
+
+
+ + + \ No newline at end of file diff -Nru libzeitgeist-0.2.2/doc/reference/html/zeitgeist-1.0-Timestamp-handling.html libzeitgeist-0.2.8/doc/reference/html/zeitgeist-1.0-Timestamp-handling.html --- libzeitgeist-0.2.2/doc/reference/html/zeitgeist-1.0-Timestamp-handling.html 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/zeitgeist-1.0-Timestamp-handling.html 2010-08-24 13:19:15.000000000 +0100 @@ -7,8 +7,8 @@ - - + + @@ -18,7 +18,7 @@ Up Home API Documentation for the Zeitgeist Client Library -Next +Next Top @@ -385,6 +385,6 @@ + Generated by GTK-Doc V1.15 \ No newline at end of file diff -Nru libzeitgeist-0.2.2/doc/reference/html/ZeitgeistDataSource.html libzeitgeist-0.2.8/doc/reference/html/ZeitgeistDataSource.html --- libzeitgeist-0.2.2/doc/reference/html/ZeitgeistDataSource.html 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/ZeitgeistDataSource.html 2010-08-24 13:19:15.000000000 +0100 @@ -0,0 +1,522 @@ + + + + +ZeitgeistDataSource + + + + + + + + + + + + + + + + + + + +
+
+
+ + +
+

ZeitgeistDataSource

+

ZeitgeistDataSource — Abstracts data sources used by + the ZeitgeistDataSourceRegistry extension

+
+ +
+

Object Hierarchy

+
+  GObject
+   +----GInitiallyUnowned
+         +----ZeitgeistDataSource
+
+
+
+

Description

+

+ZeitgeistDataSource represents a data source used to insert events into +Zeitgeist. The data sources are identified using the unique_id property, +and when querying the data source registry you get other interesting +information like timestamp of the last action of the data source, flag +whether it is currently running etc. +

+
+
+

Details

+
+

ZeitgeistDataSource

+
typedef struct _ZeitgeistDataSource ZeitgeistDataSource;
+

+

+
+
+
+

ZeitgeistDataSourceClass

+
typedef struct {
+  GInitiallyUnownedClass parent_class;
+} ZeitgeistDataSourceClass;
+
+

+

+
+
+
+

zeitgeist_data_source_new ()

+
ZeitgeistDataSource* zeitgeist_data_source_new          (void);
+

+Create a new empty data source structure. +

+
++ + + + +

Returns :

A new instance of ZeitgeistDataSource. The returned src will + have a floating reference which will be consumed if you pass the + data source to any of the methods provided by this library (like + registering the data source). If you do not do that then you + must free the data source youself with g_object_unref(). +
+
+
+
+

zeitgeist_data_source_new_full ()

+
ZeitgeistDataSource* zeitgeist_data_source_new_full     (const gchar *id,
+                                                         const gchar *name,
+                                                         const gchar *desc,
+                                                         GPtrArray *event_templates);
+

+Creates a new instance of DataSource with the given ID, name and +description. +

+
++ + + + + + + + + + + + + + + + + + + + + + +

id :

Unique ID for the data source. +

name :

Name of the data source (may be translated). +

desc :

Data source description. +

event_templates :

A GPtrArray of ZeitgeistEvents. This parameter + is optional and purely informational to let data-source + management applications and other data-sources know what + sort of information the data source logs. + The data source will assume ownership of the events and + the pointer array. + If you want to keep a reference for yourself you must do a + g_ptr_array_ref() on event_templates as well as reffing + the events held by it before calling this method. +

Returns :

New instance of ZeitgeistDataSource with floating reference, + if you do not pass the instance to method like + zeitgeist_data_source_registry_register_data_source(), then you + have to free the data source yourself using g_object_unref(). +
+
+
+
+

zeitgeist_data_source_get_unique_id ()

+
const gchar*        zeitgeist_data_source_get_unique_id (ZeitgeistDataSource *src);
+

+

+
++ + + + + + + + + + +

src :

+

Returns :

+
+
+
+
+

zeitgeist_data_source_set_unique_id ()

+
void                zeitgeist_data_source_set_unique_id (ZeitgeistDataSource *src,
+                                                         const gchar *unique_id);
+

+

+
++ + + + + + + + + + +

src :

+

unique_id :

+
+
+
+
+

zeitgeist_data_source_get_name ()

+
const gchar*        zeitgeist_data_source_get_name      (ZeitgeistDataSource *src);
+

+

+
++ + + + + + + + + + +

src :

+

Returns :

+
+
+
+
+

zeitgeist_data_source_set_name ()

+
void                zeitgeist_data_source_set_name      (ZeitgeistDataSource *src,
+                                                         const gchar *name);
+

+

+
++ + + + + + + + + + +

src :

+

name :

+
+
+
+
+

zeitgeist_data_source_get_description ()

+
const gchar*        zeitgeist_data_source_get_description
+                                                        (ZeitgeistDataSource *src);
+

+

+
++ + + + + + + + + + +

src :

+

Returns :

+
+
+
+
+

zeitgeist_data_source_set_description ()

+
void                zeitgeist_data_source_set_description
+                                                        (ZeitgeistDataSource *src,
+                                                         const gchar *description);
+

+

+
++ + + + + + + + + + +

src :

+

description :

+
+
+
+
+

zeitgeist_data_source_get_event_templates ()

+
GPtrArray*          zeitgeist_data_source_get_event_templates
+                                                        (ZeitgeistDataSource *src);
+

+

+
++ + + + + + + + + + +

src :

+

Returns :

+
+
+
+
+

zeitgeist_data_source_set_event_templates ()

+
void                zeitgeist_data_source_set_event_templates
+                                                        (ZeitgeistDataSource *src,
+                                                         GPtrArray *event_templates);
+

+Sets event templates which are logged by this ZeitgeistDataSource +instance. +

+
++ + + + + + + + + + +

src :

Instance of ZeitgeistDataSource. +

event_templates :

A GPtrArray which contains elements of type + ZeitgeistEvent. + The data source will assume ownership of the events and + the pointer array. + If you want to keep a reference for yourself you must do a + g_ptr_array_ref() on templates as well as reffing + the events held by it before calling this method. +
+
+
+
+

zeitgeist_data_source_is_running ()

+
gboolean            zeitgeist_data_source_is_running    (ZeitgeistDataSource *src);
+

+

+
++ + + + + + + + + + +

src :

+

Returns :

+
+
+
+
+

zeitgeist_data_source_set_running ()

+
void                zeitgeist_data_source_set_running   (ZeitgeistDataSource *src,
+                                                         gboolean running);
+

+

+
++ + + + + + + + + + +

src :

+

running :

+
+
+
+
+

zeitgeist_data_source_get_timestamp ()

+
gint64              zeitgeist_data_source_get_timestamp (ZeitgeistDataSource *src);
+

+

+
++ + + + + + + + + + +

src :

+

Returns :

+
+
+
+
+

zeitgeist_data_source_set_timestamp ()

+
void                zeitgeist_data_source_set_timestamp (ZeitgeistDataSource *src,
+                                                         gint64 timestamp);
+

+

+
++ + + + + + + + + + +

src :

+

timestamp :

+
+
+
+
+

zeitgeist_data_source_is_enabled ()

+
gboolean            zeitgeist_data_source_is_enabled    (ZeitgeistDataSource *src);
+

+

+
++ + + + + + + + + + +

src :

+

Returns :

+
+
+
+
+

zeitgeist_data_source_set_enabled ()

+
void                zeitgeist_data_source_set_enabled   (ZeitgeistDataSource *src,
+                                                         gboolean enabled);
+

+

+
++ + + + + + + + + + +

src :

+

enabled :

+
+
+
+
+ + + \ No newline at end of file diff -Nru libzeitgeist-0.2.2/doc/reference/html/ZeitgeistDataSourceRegistry.html libzeitgeist-0.2.8/doc/reference/html/ZeitgeistDataSourceRegistry.html --- libzeitgeist-0.2.2/doc/reference/html/ZeitgeistDataSourceRegistry.html 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/ZeitgeistDataSourceRegistry.html 2010-08-24 13:19:15.000000000 +0100 @@ -0,0 +1,482 @@ + + + + +ZeitgeistDataSourceRegistry + + + + + + + + + + + + + + + + + + + +
+
+
+ + +
+

ZeitgeistDataSourceRegistry

+

ZeitgeistDataSourceRegistry — Query the Zeitgeist Data Source Registry extension

+
+ +
+

Object Hierarchy

+
+  GObject
+   +----ZeitgeistDataSourceRegistry
+
+
+
+

Signals

+
+  "source-disconnected"                            : Run First
+  "source-enabled"                                 : Run First
+  "source-registered"                              : Run First
+
+
+
+

Description

+

+The Zeitgeist engine maintains a publicly available list of recognized +data-sources (components inserting information into Zeitgeist). +ZeitgeistDataSourceRegistry is used to register new data sources, +get information about them and gives the ability to enable or disable +the data sources. +

+
+
+

Details

+
+

ZeitgeistDataSourceRegistry

+
typedef struct _ZeitgeistDataSourceRegistry ZeitgeistDataSourceRegistry;
+

+

+
+
+
+

ZeitgeistDataSourceRegistryClass

+
typedef struct {
+  GObjectClass parent_class;
+
+  void (*source_registered)   (ZeitgeistDataSourceRegistry *registry,
+                               ZeitgeistDataSource *source);
+  void (*source_disconnected) (ZeitgeistDataSourceRegistry *registry,
+                               ZeitgeistDataSource *source);
+  void (*source_enabled)      (ZeitgeistDataSourceRegistry *registry,
+                               gchar *unique_id,
+                               gboolean enabled);
+} ZeitgeistDataSourceRegistryClass;
+
+

+

+
+
+
+

zeitgeist_data_source_registry_new ()

+
ZeitgeistDataSourceRegistry* zeitgeist_data_source_registry_new
+                                                        (void);
+

+Create a new data source registry instance. +

+

+DataSourceRegistry instances are not overly expensive for neither +client or the Zeitgeist daemon so there's no need to go to lengths +to keep singleton instances around. +

+
++ + + + +

Returns :

A reference to a newly allocated registry. +
+
+
+
+

zeitgeist_data_source_registry_get_data_sources ()

+
void                zeitgeist_data_source_registry_get_data_sources
+                                                        (ZeitgeistDataSourceRegistry *self,
+                                                         GCancellable *cancellable,
+                                                         GAsyncReadyCallback callback,
+                                                         gpointer user_data);
+

+

+
++ + + + + + + + + + + + + + + + + + +

self :

+

cancellable :

+

callback :

+

user_data :

+
+
+
+
+

zeitgeist_data_source_registry_get_data_sources_finish ()

+
GPtrArray*          zeitgeist_data_source_registry_get_data_sources_finish
+                                                        (ZeitgeistDataSourceRegistry *self,
+                                                         GAsyncResult *res,
+                                                         GError **error);
+
++ + + + + + + + + + + + + + + + + + +

self :

Instance of ZeitgeistDataSourceRegistry. +

res :

a GAsyncResult. +

error :

a GError or NULL. +

Returns :

Newly created GPtrArray containing ZeitgeistDataSource(s) + registered in Zeitgeist. Free using g_ptr_array_unref() once + you're done using it. +
+
+
+
+

zeitgeist_data_source_registry_register_data_source ()

+
void                zeitgeist_data_source_registry_register_data_source
+                                                        (ZeitgeistDataSourceRegistry *self,
+                                                         ZeitgeistDataSource *source,
+                                                         GCancellable *cancellable,
+                                                         GAsyncReadyCallback callback,
+                                                         gpointer user_data);
+

+Registers new data source in the registry, the source parameter needs to +have unique-id, name, description and optionally event_templates set, +therefore it is useful to pass ZeitgeistDataSource instance created using +zeitgeist_data_source_new_full(). The registry will assume its ownership. +

+
++ + + + + + + + + + + + + + + + + + + + + + +

self :

Instance of ZeitgeistDataSourceRegistry. +

source :

Data source to register. +

cancellable :

a GCancellable or NULL. +

callback :

a GAsyncReadyCallback to call when the request is finished. +

user_data :

the data to pass to callback function. +
+
+
+
+

zeitgeist_data_source_registry_register_data_source_finish ()

+
gboolean            zeitgeist_data_source_registry_register_data_source_finish
+                                                        (ZeitgeistDataSourceRegistry *self,
+                                                         GAsyncResult *res,
+                                                         GError **error);
+
++ + + + + + + + + + + + + + + + + + +

self :

Instance of ZeitgeistDataSourceRegistry. +

res :

Result of the asynchronous operation. +

error :

a GError or NULL. +

Returns :

If error is unset, returns whether this data source is enabled. +
+
+
+
+

zeitgeist_data_source_registry_set_data_source_enabled ()

+
void                zeitgeist_data_source_registry_set_data_source_enabled
+                                                        (ZeitgeistDataSourceRegistry *self,
+                                                         const gchar *unique_id,
+                                                         gboolean enabled,
+                                                         GCancellable *cancellable,
+                                                         GAsyncReadyCallback callback,
+                                                         gpointer user_data);
+

+

+
++ + + + + + + + + + + + + + + + + + + + + + + + + + +

self :

+

unique_id :

+

enabled :

+

cancellable :

+

callback :

+

user_data :

+
+
+
+
+

zeitgeist_data_source_registry_set_data_source_enabled_finish ()

+
void                zeitgeist_data_source_registry_set_data_source_enabled_finish
+                                                        (ZeitgeistDataSourceRegistry *self,
+                                                         GAsyncResult *res,
+                                                         GError **error);
+

+

+
++ + + + + + + + + + + + + + +

self :

+

res :

+

error :

+
+
+
+
+

Signal Details

+
+

The "source-disconnected" signal

+
void                user_function                      (ZeitgeistDataSourceRegistry *zeitgeistdatasourceregistry,
+                                                        ZeitgeistDataSource         *arg1,
+                                                        gpointer                     user_data)                        : Run First
+

+

+
++ + + + + + + + + + + + + + +

zeitgeistdatasourceregistry :

the object which received the signal. +

arg1 :

+

user_data :

user data set when the signal handler was connected.
+
+
+
+

The "source-enabled" signal

+
void                user_function                      (ZeitgeistDataSourceRegistry *zeitgeistdatasourceregistry,
+                                                        gchar                       *arg1,
+                                                        gboolean                     arg2,
+                                                        gpointer                     user_data)                        : Run First
+

+

+
++ + + + + + + + + + + + + + + + + + +

zeitgeistdatasourceregistry :

the object which received the signal. +

arg1 :

+

arg2 :

+

user_data :

user data set when the signal handler was connected.
+
+
+
+

The "source-registered" signal

+
void                user_function                      (ZeitgeistDataSourceRegistry *zeitgeistdatasourceregistry,
+                                                        ZeitgeistDataSource         *arg1,
+                                                        gpointer                     user_data)                        : Run First
+

+

+
++ + + + + + + + + + + + + + +

zeitgeistdatasourceregistry :

the object which received the signal. +

arg1 :

+

user_data :

user data set when the signal handler was connected.
+
+
+
+ + + \ No newline at end of file diff -Nru libzeitgeist-0.2.2/doc/reference/html/ZeitgeistEvent.html libzeitgeist-0.2.8/doc/reference/html/ZeitgeistEvent.html --- libzeitgeist-0.2.2/doc/reference/html/ZeitgeistEvent.html 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/ZeitgeistEvent.html 2010-08-24 13:19:15.000000000 +0100 @@ -8,7 +8,7 @@ - + @@ -68,6 +68,9 @@ const gchar* zeitgeist_event_get_actor (ZeitgeistEvent *event); void zeitgeist_event_set_actor (ZeitgeistEvent *event, const gchar *actor); +void zeitgeist_event_set_actor_from_app_info + (ZeitgeistEvent *event, + GAppInfo *appinfo); ZeitgeistSubject * zeitgeist_event_get_subject (ZeitgeistEvent *event, gint index); gint zeitgeist_event_num_subjects (ZeitgeistEvent *event); @@ -543,6 +546,30 @@
+
+

zeitgeist_event_set_actor_from_app_info ()

+
void                zeitgeist_event_set_actor_from_app_info
+                                                        (ZeitgeistEvent *event,
+                                                         GAppInfo *appinfo);
+

+

+
++ + + + + + + + + + +

event :

+

appinfo :

+
+
+

zeitgeist_event_get_subject ()

ZeitgeistSubject *  zeitgeist_event_get_subject         (ZeitgeistEvent *event,
@@ -671,7 +698,8 @@
 
 
 

payload :

- The payload to add to event. transfer-full + The payload to add to event. [transfer-full] +
@@ -680,6 +708,6 @@ + Generated by GTK-Doc V1.15 \ No newline at end of file diff -Nru libzeitgeist-0.2.2/doc/reference/html/ZeitgeistIndex.html libzeitgeist-0.2.8/doc/reference/html/ZeitgeistIndex.html --- libzeitgeist-0.2.2/doc/reference/html/ZeitgeistIndex.html 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/ZeitgeistIndex.html 2010-08-24 13:19:15.000000000 +0100 @@ -7,8 +7,8 @@ - - + + @@ -18,7 +18,7 @@ Up Home API Documentation for the Zeitgeist Client Library -Next +Next Top @@ -260,6 +260,6 @@ + Generated by GTK-Doc V1.15 \ No newline at end of file diff -Nru libzeitgeist-0.2.2/doc/reference/html/ZeitgeistLog.html libzeitgeist-0.2.8/doc/reference/html/ZeitgeistLog.html --- libzeitgeist-0.2.2/doc/reference/html/ZeitgeistLog.html 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/ZeitgeistLog.html 2010-08-24 13:19:15.000000000 +0100 @@ -8,7 +8,7 @@ - + @@ -26,6 +26,8 @@ Description  |  Object Hierarchy +  |  + Properties
@@ -161,6 +163,12 @@ +----ZeitgeistLog
+
+

Properties

+
+  "connected"                gboolean              : Read
+
+

Description

@@ -513,7 +521,8 @@ the ZeitgeistEvents matching the query. You must free the result set with g_object_unref(). The events held in the result set will - automatically be unreffed when the result set is finalized.. transfer-full + automatically be unreffed when the result set is finalized. [transfer-full] +

@@ -1162,9 +1171,21 @@ +
+

Property Details

+
+

The "connected" property

+
  "connected"                gboolean              : Read
+

+Determines if this Log instance is currently connected to Zeitgeist +daemon. +

+

Default value: FALSE

+
+
+ Generated by GTK-Doc V1.15 \ No newline at end of file diff -Nru libzeitgeist-0.2.2/doc/reference/html/ZeitgeistMonitor.html libzeitgeist-0.2.8/doc/reference/html/ZeitgeistMonitor.html --- libzeitgeist-0.2.2/doc/reference/html/ZeitgeistMonitor.html 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/ZeitgeistMonitor.html 2010-08-24 13:19:15.000000000 +0100 @@ -8,7 +8,7 @@ - + @@ -322,6 +322,6 @@ + Generated by GTK-Doc V1.15 \ No newline at end of file diff -Nru libzeitgeist-0.2.2/doc/reference/html/ZeitgeistResultSet.html libzeitgeist-0.2.8/doc/reference/html/ZeitgeistResultSet.html --- libzeitgeist-0.2.2/doc/reference/html/ZeitgeistResultSet.html 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/ZeitgeistResultSet.html 2010-08-24 13:19:15.000000000 +0100 @@ -8,7 +8,7 @@ - + @@ -44,8 +44,8 @@
 #include <zeitgeist.h>
 
-                    ZeitgeistResultSet;
                     ZeitgeistResultSetIface;
+                    ZeitgeistResultSet;
 guint               zeitgeist_result_set_size           (ZeitgeistResultSet *self);
 guint               zeitgeist_result_set_estimated_matches
                                                         (ZeitgeistResultSet *self);
@@ -89,13 +89,6 @@
 
 

Details

-
-

ZeitgeistResultSet

-
typedef struct _ZeitgeistResultSet ZeitgeistResultSet;
-

-

-
-

ZeitgeistResultSetIface

typedef struct {
@@ -121,6 +114,13 @@
 


+
+

ZeitgeistResultSet

+
typedef struct _ZeitgeistResultSet ZeitgeistResultSet;
+

+

+
+

zeitgeist_result_set_size ()

guint               zeitgeist_result_set_size           (ZeitgeistResultSet *self);
@@ -309,6 +309,6 @@
+ Generated by GTK-Doc V1.15
\ No newline at end of file diff -Nru libzeitgeist-0.2.2/doc/reference/html/ZeitgeistSubject.html libzeitgeist-0.2.8/doc/reference/html/ZeitgeistSubject.html --- libzeitgeist-0.2.2/doc/reference/html/ZeitgeistSubject.html 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/ZeitgeistSubject.html 2010-08-24 13:19:15.000000000 +0100 @@ -8,7 +8,7 @@ - + @@ -517,6 +517,6 @@ + Generated by GTK-Doc V1.15 \ No newline at end of file diff -Nru libzeitgeist-0.2.2/doc/reference/html/ZeitgeistTimeRange.html libzeitgeist-0.2.8/doc/reference/html/ZeitgeistTimeRange.html --- libzeitgeist-0.2.2/doc/reference/html/ZeitgeistTimeRange.html 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/html/ZeitgeistTimeRange.html 2010-08-24 13:19:15.000000000 +0100 @@ -8,7 +8,7 @@ - + @@ -263,6 +263,6 @@ + Generated by GTK-Doc V1.15 \ No newline at end of file diff -Nru libzeitgeist-0.2.2/doc/reference/Makefile.in libzeitgeist-0.2.8/doc/reference/Makefile.in --- libzeitgeist-0.2.2/doc/reference/Makefile.in 2010-06-23 12:16:12.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/Makefile.in 2010-08-24 13:18:30.000000000 +0100 @@ -86,8 +86,10 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GIO_UNIX_CFLAGS = @GIO_UNIX_CFLAGS@ -GIO_UNIX_LIBS = @GIO_UNIX_LIBS@ +GIO2_CFLAGS = @GIO2_CFLAGS@ +GIO2_LIBS = @GIO2_LIBS@ +GIO_UNIX2_CFLAGS = @GIO_UNIX2_CFLAGS@ +GIO_UNIX2_LIBS = @GIO_UNIX2_LIBS@ GLIB2_CFLAGS = @GLIB2_CFLAGS@ GLIB2_LIBS = @GLIB2_LIBS@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ @@ -113,6 +115,7 @@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ +MAINTAINER_CFLAGS = @MAINTAINER_CFLAGS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ NM = @NM@ @@ -130,6 +133,8 @@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ @@ -137,6 +142,8 @@ STRIP = @STRIP@ VERSION = @VERSION@ ZEITGEIST_CFLAGS = @ZEITGEIST_CFLAGS@ +ZEITGEIST_GIOMODULE_CFLAGS = @ZEITGEIST_GIOMODULE_CFLAGS@ +ZEITGEIST_GIOMODULE_LIBS = @ZEITGEIST_GIOMODULE_LIBS@ ZEITGEIST_LIBS = @ZEITGEIST_LIBS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ @@ -161,6 +168,7 @@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ +giomodulesdir = @giomodulesdir@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ @@ -488,8 +496,11 @@ scan-build.stamp: $(HFILE_GLOB) $(CFILE_GLOB) @echo 'gtk-doc: Scanning header files' @-chmod -R u+w $(srcdir) - @cd $(srcdir) && \ - gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="$(IGNORE_HFILES)" $(SCAN_OPTIONS) $(EXTRA_HFILES) + @_source_dir='' ; for i in $(DOC_SOURCE_DIR) ; do \ + _source_dir="$${_source_dir} --source-dir=$$i" ; \ + done ; \ + cd $(srcdir) && \ + gtkdoc-scan --module=$(DOC_MODULE) --ignore-headers="$(IGNORE_HFILES)" $${_source_dir} $(SCAN_OPTIONS) $(EXTRA_HFILES) @if grep -l '^..*$$' $(srcdir)/$(DOC_MODULE).types > /dev/null 2>&1 ; then \ CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" RUN="$(GTKDOC_RUN)" CFLAGS="$(GTKDOC_CFLAGS) $(CFLAGS)" LDFLAGS="$(GTKDOC_LIBS) $(LDFLAGS)" gtkdoc-scangobj $(SCANGOBJ_OPTIONS) --module=$(DOC_MODULE) --output-dir=$(srcdir) ; \ else \ @@ -522,8 +533,11 @@ sgml-build.stamp: tmpl.stamp $(DOC_MODULE)-sections.txt $(srcdir)/tmpl/*.sgml $(expand_content_files) @echo 'gtk-doc: Building XML' @-chmod -R u+w $(srcdir) - @cd $(srcdir) && \ - gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $(MKDB_OPTIONS) + @_source_dir='' ; for i in $(DOC_SOURCE_DIR) ; do \ + _source_dir="$${_source_dir} --source-dir=$$i" ; \ + done ; \ + cd $(srcdir) && \ + gtkdoc-mkdb --module=$(DOC_MODULE) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $${_source_dir} $(MKDB_OPTIONS) @touch sgml-build.stamp sgml.stamp: sgml-build.stamp diff -Nru libzeitgeist-0.2.2/doc/reference/tmpl/zeitgeist-data-source-registry.sgml libzeitgeist-0.2.8/doc/reference/tmpl/zeitgeist-data-source-registry.sgml --- libzeitgeist-0.2.2/doc/reference/tmpl/zeitgeist-data-source-registry.sgml 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/tmpl/zeitgeist-data-source-registry.sgml 2010-08-24 13:19:15.000000000 +0100 @@ -0,0 +1,142 @@ + +ZeitgeistDataSourceRegistry + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +@zeitgeistdatasourceregistry: the object which received the signal. +@arg1: + + + + + + +@zeitgeistdatasourceregistry: the object which received the signal. +@arg1: +@arg2: + + + + + + +@zeitgeistdatasourceregistry: the object which received the signal. +@arg1: + + + + + + +@parent_class: +@source_registered: +@source_disconnected: +@source_enabled: + + + + + + +@void: +@Returns: + + + + + + + +@self: +@cancellable: +@callback: +@user_data: + + + + + + + +@self: +@res: +@error: +@Returns: + + + + + + + +@self: +@source: +@cancellable: +@callback: +@user_data: + + + + + + + +@self: +@res: +@error: +@Returns: + + + + + + + +@self: +@unique_id: +@enabled: +@cancellable: +@callback: +@user_data: + + + + + + + +@self: +@res: +@error: + + diff -Nru libzeitgeist-0.2.2/doc/reference/tmpl/zeitgeist-data-source.sgml libzeitgeist-0.2.8/doc/reference/tmpl/zeitgeist-data-source.sgml --- libzeitgeist-0.2.2/doc/reference/tmpl/zeitgeist-data-source.sgml 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/tmpl/zeitgeist-data-source.sgml 2010-08-24 13:19:15.000000000 +0100 @@ -0,0 +1,184 @@ + +ZeitgeistDataSource + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +@parent_class: + + + + + + +@void: +@Returns: + + + + + + + +@id: +@name: +@desc: +@event_templates: +@Returns: + + + + + + + +@src: +@Returns: + + + + + + + +@src: +@unique_id: + + + + + + + +@src: +@Returns: + + + + + + + +@src: +@name: + + + + + + + +@src: +@Returns: + + + + + + + +@src: +@description: + + + + + + + +@src: +@Returns: + + + + + + + +@src: +@event_templates: + + + + + + + +@src: +@Returns: + + + + + + + +@src: +@running: + + + + + + + +@src: +@Returns: + + + + + + + +@src: +@timestamp: + + + + + + + +@src: +@Returns: + + + + + + + +@src: +@enabled: + + diff -Nru libzeitgeist-0.2.2/doc/reference/tmpl/zeitgeist-enums.sgml libzeitgeist-0.2.8/doc/reference/tmpl/zeitgeist-enums.sgml --- libzeitgeist-0.2.2/doc/reference/tmpl/zeitgeist-enums.sgml 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/tmpl/zeitgeist-enums.sgml 2010-08-24 13:19:15.000000000 +0100 @@ -53,6 +53,10 @@ @ZEITGEIST_RESULT_TYPE_LEAST_POPULAR_ACTOR: @ZEITGEIST_RESULT_TYPE_MOST_RECENT_ACTOR: @ZEITGEIST_RESULT_TYPE_LEAST_RECENT_ACTOR: +@ZEITGEIST_RESULT_TYPE_MOST_RECENT_ORIGIN: +@ZEITGEIST_RESULT_TYPE_LEAST_RECENT_ORIGIN: +@ZEITGEIST_RESULT_TYPE_MOST_POPULAR_ORIGIN: +@ZEITGEIST_RESULT_TYPE_LEAST_POPULAR_ORIGIN: @ZEITGEIST_RESULT_TYPE_RELEVANCY: diff -Nru libzeitgeist-0.2.2/doc/reference/tmpl/zeitgeist-event.sgml libzeitgeist-0.2.8/doc/reference/tmpl/zeitgeist-event.sgml --- libzeitgeist-0.2.2/doc/reference/tmpl/zeitgeist-event.sgml 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/tmpl/zeitgeist-event.sgml 2010-08-24 13:19:15.000000000 +0100 @@ -158,6 +158,15 @@ @actor: + + + + + +@event: +@appinfo: + + diff -Nru libzeitgeist-0.2.2/doc/reference/tmpl/zeitgeist-log.sgml libzeitgeist-0.2.8/doc/reference/tmpl/zeitgeist-log.sgml --- libzeitgeist-0.2.2/doc/reference/tmpl/zeitgeist-log.sgml 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/tmpl/zeitgeist-log.sgml 2010-08-24 13:19:15.000000000 +0100 @@ -28,6 +28,11 @@ + + + + + diff -Nru libzeitgeist-0.2.2/doc/reference/tmpl/zeitgeist-result-set.sgml libzeitgeist-0.2.8/doc/reference/tmpl/zeitgeist-result-set.sgml --- libzeitgeist-0.2.2/doc/reference/tmpl/zeitgeist-result-set.sgml 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/tmpl/zeitgeist-result-set.sgml 2010-08-24 13:19:15.000000000 +0100 @@ -22,12 +22,6 @@ - - - - - - @@ -42,6 +36,12 @@ @seek: @tell: + + + + + + diff -Nru libzeitgeist-0.2.2/doc/reference/tmpl/zeitgeist-symbols.sgml libzeitgeist-0.2.8/doc/reference/tmpl/zeitgeist-symbols.sgml --- libzeitgeist-0.2.2/doc/reference/tmpl/zeitgeist-symbols.sgml 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/tmpl/zeitgeist-symbols.sgml 2010-08-24 13:19:15.000000000 +0100 @@ -0,0 +1,61 @@ + +Symbol comprehension + + + + + + + + + + + + + + + + + + + + + + + + + + + +@symbol: +@Returns: + + + + + + + +@symbol: +@Returns: + + + + + + + +@symbol: +@Returns: + + + + + + + +@symbol: +@parent: +@Returns: + + diff -Nru libzeitgeist-0.2.2/doc/reference/zeitgeist-1.0-docs.sgml libzeitgeist-0.2.8/doc/reference/zeitgeist-1.0-docs.sgml --- libzeitgeist-0.2.2/doc/reference/zeitgeist-1.0-docs.sgml 2010-06-23 12:15:54.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/zeitgeist-1.0-docs.sgml 2010-08-24 13:18:07.000000000 +0100 @@ -23,6 +23,7 @@ Utility Functions + @@ -34,7 +35,9 @@ API for Zeitgeist Extensions - + + + diff -Nru libzeitgeist-0.2.2/doc/reference/zeitgeist-1.0-sections.txt libzeitgeist-0.2.8/doc/reference/zeitgeist-1.0-sections.txt --- libzeitgeist-0.2.2/doc/reference/zeitgeist-1.0-sections.txt 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/zeitgeist-1.0-sections.txt 2010-08-24 13:19:15.000000000 +0100 @@ -1,63 +1,32 @@
-zeitgeist-timerange -ZeitgeistTimeRange -ZeitgeistTimeRange -ZeitgeistTimeRangeClass -zeitgeist_time_range_new -zeitgeist_time_range_new_from_now -zeitgeist_time_range_new_to_now -zeitgeist_time_range_new_anytime -zeitgeist_time_range_get_start -zeitgeist_time_range_get_end -zeitgeist_time_range_get_start_iso8601 -zeitgeist_time_range_get_end_iso8601 - -ZEITGEIST_TIME_RANGE -ZEITGEIST_IS_TIME_RANGE -ZEITGEIST_TYPE_TIME_RANGE -zeitgeist_time_range_get_type -ZEITGEIST_TIME_RANGE_CLASS -ZEITGEIST_IS_TIME_RANGE_CLASS -ZEITGEIST_TIME_RANGE_GET_CLASS -
- -
-zeitgeist-log -ZeitgeistLog -ZeitgeistLog -ZeitgeistLogClass -zeitgeist_log_new -zeitgeist_log_insert_events -zeitgeist_log_insert_events_no_reply -zeitgeist_log_insert_events_valist -zeitgeist_log_insert_events_from_ptrarray -zeitgeist_log_insert_events_finish -zeitgeist_log_find_events -zeitgeist_log_find_events_finish -zeitgeist_log_find_event_ids -zeitgeist_log_find_event_ids_finish -zeitgeist_log_get_events -zeitgeist_log_get_events_finish -zeitgeist_log_find_related_uris -zeitgeist_log_find_related_uris_finish -zeitgeist_log_delete_events -zeitgeist_log_delete_events_finish -zeitgeist_log_delete_log -zeitgeist_log_delete_log_finish -zeitgeist_log_quit -zeitgeist_log_quit_finish -zeitgeist_log_install_monitor -zeitgeist_log_install_monitor_finish -zeitgeist_log_remove_monitor -zeitgeist_log_remove_monitor_finish +zeitgeist-data-source +ZeitgeistDataSource +ZeitgeistDataSource +ZeitgeistDataSourceClass +zeitgeist_data_source_new +zeitgeist_data_source_new_full +zeitgeist_data_source_get_unique_id +zeitgeist_data_source_set_unique_id +zeitgeist_data_source_get_name +zeitgeist_data_source_set_name +zeitgeist_data_source_get_description +zeitgeist_data_source_set_description +zeitgeist_data_source_get_event_templates +zeitgeist_data_source_set_event_templates +zeitgeist_data_source_is_running +zeitgeist_data_source_set_running +zeitgeist_data_source_get_timestamp +zeitgeist_data_source_set_timestamp +zeitgeist_data_source_is_enabled +zeitgeist_data_source_set_enabled -ZEITGEIST_LOG -ZEITGEIST_IS_LOG -ZEITGEIST_TYPE_LOG -zeitgeist_log_get_type -ZEITGEIST_LOG_CLASS -ZEITGEIST_IS_LOG_CLASS -ZEITGEIST_LOG_GET_CLASS +ZEITGEIST_DATA_SOURCE +ZEITGEIST_IS_DATA_SOURCE +ZEITGEIST_TYPE_DATA_SOURCE +zeitgeist_data_source_get_type +ZEITGEIST_DATA_SOURCE_CLASS +ZEITGEIST_IS_DATA_SOURCE_CLASS +ZEITGEIST_DATA_SOURCE_GET_CLASS
@@ -92,6 +61,67 @@
+zeitgeist-timerange +ZeitgeistTimeRange +ZeitgeistTimeRange +ZeitgeistTimeRangeClass +zeitgeist_time_range_new +zeitgeist_time_range_new_from_now +zeitgeist_time_range_new_to_now +zeitgeist_time_range_new_anytime +zeitgeist_time_range_get_start +zeitgeist_time_range_get_end +zeitgeist_time_range_get_start_iso8601 +zeitgeist_time_range_get_end_iso8601 + +ZEITGEIST_TIME_RANGE +ZEITGEIST_IS_TIME_RANGE +ZEITGEIST_TYPE_TIME_RANGE +zeitgeist_time_range_get_type +ZEITGEIST_TIME_RANGE_CLASS +ZEITGEIST_IS_TIME_RANGE_CLASS +ZEITGEIST_TIME_RANGE_GET_CLASS +
+ +
+zeitgeist-index +ZeitgeistIndex +ZeitgeistIndex +ZeitgeistIndexClass +zeitgeist_index_new +zeitgeist_index_search +zeitgeist_index_search_finish + +ZEITGEIST_INDEX +ZEITGEIST_IS_INDEX +ZEITGEIST_TYPE_INDEX +zeitgeist_index_get_type +ZEITGEIST_INDEX_CLASS +ZEITGEIST_IS_INDEX_CLASS +ZEITGEIST_INDEX_GET_CLASS +
+ +
+zeitgeist-result-set +ZeitgeistResultSet +ZeitgeistResultSetIface +ZeitgeistResultSet +zeitgeist_result_set_size +zeitgeist_result_set_estimated_matches +zeitgeist_result_set_next +zeitgeist_result_set_has_next +zeitgeist_result_set_peek +zeitgeist_result_set_seek +zeitgeist_result_set_tell + +ZEITGEIST_RESULT_SET +ZEITGEIST_IS_RESULT_SET +ZEITGEIST_TYPE_RESULT_SET +zeitgeist_result_set_get_type +ZEITGEIST_RESULT_SET_GET_IFACE +
+ +
zeitgeist-event ZeitgeistEvent ZeitgeistEvent @@ -109,6 +139,7 @@ zeitgeist_event_set_manifestation zeitgeist_event_get_actor zeitgeist_event_set_actor +zeitgeist_event_set_actor_from_app_info zeitgeist_event_get_subject zeitgeist_event_num_subjects zeitgeist_event_add_subject @@ -125,6 +156,28 @@
+zeitgeist-data-source-registry +ZeitgeistDataSourceRegistry +ZeitgeistDataSourceRegistry +ZeitgeistDataSourceRegistryClass +zeitgeist_data_source_registry_new +zeitgeist_data_source_registry_get_data_sources +zeitgeist_data_source_registry_get_data_sources_finish +zeitgeist_data_source_registry_register_data_source +zeitgeist_data_source_registry_register_data_source_finish +zeitgeist_data_source_registry_set_data_source_enabled +zeitgeist_data_source_registry_set_data_source_enabled_finish + +ZEITGEIST_DATA_SOURCE_REGISTRY +ZEITGEIST_IS_DATA_SOURCE_REGISTRY +ZEITGEIST_TYPE_DATA_SOURCE_REGISTRY +zeitgeist_data_source_registry_get_type +ZEITGEIST_DATA_SOURCE_REGISTRY_CLASS +ZEITGEIST_IS_DATA_SOURCE_REGISTRY_CLASS +ZEITGEIST_DATA_SOURCE_REGISTRY_GET_CLASS +
+ +
zeitgeist-monitor ZeitgeistMonitor ZeitgeistMonitor @@ -137,12 +190,52 @@ ZEITGEIST_MONITOR ZEITGEIST_IS_MONITOR ZEITGEIST_TYPE_MONITOR +zeitgeist_monitor_get_type ZEITGEIST_MONITOR_CLASS ZEITGEIST_IS_MONITOR_CLASS ZEITGEIST_MONITOR_GET_CLASS
+zeitgeist-log +ZeitgeistLog +ZeitgeistLog +ZeitgeistLogClass +zeitgeist_log_new +zeitgeist_log_insert_events +zeitgeist_log_insert_events_no_reply +zeitgeist_log_insert_events_valist +zeitgeist_log_insert_events_from_ptrarray +zeitgeist_log_insert_events_finish +zeitgeist_log_find_events +zeitgeist_log_find_events_finish +zeitgeist_log_find_event_ids +zeitgeist_log_find_event_ids_finish +zeitgeist_log_get_events +zeitgeist_log_get_events_finish +zeitgeist_log_find_related_uris +zeitgeist_log_find_related_uris_finish +zeitgeist_log_delete_events +zeitgeist_log_delete_events_finish +zeitgeist_log_delete_log +zeitgeist_log_delete_log_finish +zeitgeist_log_quit +zeitgeist_log_quit_finish +zeitgeist_log_install_monitor +zeitgeist_log_install_monitor_finish +zeitgeist_log_remove_monitor +zeitgeist_log_remove_monitor_finish + +ZEITGEIST_LOG +ZEITGEIST_IS_LOG +ZEITGEIST_TYPE_LOG +zeitgeist_log_get_type +ZEITGEIST_LOG_CLASS +ZEITGEIST_IS_LOG_CLASS +ZEITGEIST_LOG_GET_CLASS +
+ +
zeitgeist-enumtypes zeitgeist_result_type_get_type ZEITGEIST_TYPE_RESULT_TYPE @@ -162,6 +255,25 @@
+zeitgeist-mimetypes +Mimetype mapping and URI comprehension +zeitgeist_register_mimetype +zeitgeist_register_mimetype_regex +zeitgeist_interpretation_for_mimetype +zeitgeist_register_uri_scheme +zeitgeist_manifestation_for_uri +
+ +
+zeitgeist-symbols +Symbol comprehension +zeitgeist_symbol_get_parents +zeitgeist_symbol_get_children +zeitgeist_symbol_get_all_children +zeitgeist_symbol_is_a +
+ +
zeitgeist-ontology-interpretations Interpretation Ontology ZEITGEIST_NCAL_ALARM @@ -250,54 +362,6 @@
-zeitgeist-mimetypes -Mimetype mapping and URI comprehension -zeitgeist_register_mimetype -zeitgeist_register_mimetype_regex -zeitgeist_interpretation_for_mimetype -zeitgeist_register_uri_scheme -zeitgeist_manifestation_for_uri -
- -
-zeitgeist-index -ZeitgeistIndex -ZeitgeistIndex -ZeitgeistIndexClass -zeitgeist_index_new -zeitgeist_index_search -zeitgeist_index_search_finish - -ZEITGEIST_INDEX -ZEITGEIST_IS_INDEX -ZEITGEIST_TYPE_INDEX -zeitgeist_index_get_type -ZEITGEIST_INDEX_CLASS -ZEITGEIST_IS_INDEX_CLASS -ZEITGEIST_INDEX_GET_CLASS -
- -
-zeitgeist-result-set -ZeitgeistResultSet -ZeitgeistResultSet -ZeitgeistResultSetIface -zeitgeist_result_set_size -zeitgeist_result_set_estimated_matches -zeitgeist_result_set_next -zeitgeist_result_set_has_next -zeitgeist_result_set_peek -zeitgeist_result_set_seek -zeitgeist_result_set_tell - -ZEITGEIST_RESULT_SET -ZEITGEIST_IS_RESULT_SET -ZEITGEIST_TYPE_RESULT_SET -ZEITGEIST_RESULT_SET_GET_IFACE -zeitgeist_result_set_get_type -
- -
zeitgeist-timestamp Timestamp handling ZEITGEIST_TIMESTAMP_SECOND @@ -317,3 +381,4 @@ zeitgeist_timestamp_next_midnight zeitgeist_timestamp_prev_midnight
+ diff -Nru libzeitgeist-0.2.2/doc/reference/zeitgeist-1.0.types libzeitgeist-0.2.8/doc/reference/zeitgeist-1.0.types --- libzeitgeist-0.2.2/doc/reference/zeitgeist-1.0.types 2010-06-23 12:16:43.000000000 +0100 +++ libzeitgeist-0.2.8/doc/reference/zeitgeist-1.0.types 2010-08-24 13:19:15.000000000 +0100 @@ -1,9 +1,11 @@ -zeitgeist_log_get_type +zeitgeist_data_source_get_type +zeitgeist_data_source_registry_get_type zeitgeist_event_get_type -zeitgeist_subject_get_type -zeitgeist_time_range_get_type +zeitgeist_index_get_type +zeitgeist_log_get_type zeitgeist_monitor_get_type -zeitgeist_storage_state_get_type +zeitgeist_result_set_get_type zeitgeist_result_type_get_type -zeitgeist_index_get_type - +zeitgeist_storage_state_get_type +zeitgeist_subject_get_type +zeitgeist_time_range_get_type diff -Nru libzeitgeist-0.2.2/examples/Makefile.in libzeitgeist-0.2.8/examples/Makefile.in --- libzeitgeist-0.2.2/examples/Makefile.in 2010-06-23 12:16:12.000000000 +0100 +++ libzeitgeist-0.2.8/examples/Makefile.in 2010-08-24 13:18:30.000000000 +0100 @@ -119,8 +119,10 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GIO_UNIX_CFLAGS = @GIO_UNIX_CFLAGS@ -GIO_UNIX_LIBS = @GIO_UNIX_LIBS@ +GIO2_CFLAGS = @GIO2_CFLAGS@ +GIO2_LIBS = @GIO2_LIBS@ +GIO_UNIX2_CFLAGS = @GIO_UNIX2_CFLAGS@ +GIO_UNIX2_LIBS = @GIO_UNIX2_LIBS@ GLIB2_CFLAGS = @GLIB2_CFLAGS@ GLIB2_LIBS = @GLIB2_LIBS@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ @@ -146,6 +148,7 @@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ +MAINTAINER_CFLAGS = @MAINTAINER_CFLAGS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ NM = @NM@ @@ -163,6 +166,8 @@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ @@ -170,6 +175,8 @@ STRIP = @STRIP@ VERSION = @VERSION@ ZEITGEIST_CFLAGS = @ZEITGEIST_CFLAGS@ +ZEITGEIST_GIOMODULE_CFLAGS = @ZEITGEIST_GIOMODULE_CFLAGS@ +ZEITGEIST_GIOMODULE_LIBS = @ZEITGEIST_GIOMODULE_LIBS@ ZEITGEIST_LIBS = @ZEITGEIST_LIBS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ @@ -194,6 +201,7 @@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ +giomodulesdir = @giomodulesdir@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ diff -Nru libzeitgeist-0.2.2/gtk-doc.make libzeitgeist-0.2.8/gtk-doc.make --- libzeitgeist-0.2.2/gtk-doc.make 2010-06-23 12:16:06.000000000 +0100 +++ libzeitgeist-0.2.8/gtk-doc.make 2010-08-24 13:18:24.000000000 +0100 @@ -75,8 +75,11 @@ scan-build.stamp: $(HFILE_GLOB) $(CFILE_GLOB) @echo 'gtk-doc: Scanning header files' @-chmod -R u+w $(srcdir) - @cd $(srcdir) && \ - gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="$(IGNORE_HFILES)" $(SCAN_OPTIONS) $(EXTRA_HFILES) + @_source_dir='' ; for i in $(DOC_SOURCE_DIR) ; do \ + _source_dir="$${_source_dir} --source-dir=$$i" ; \ + done ; \ + cd $(srcdir) && \ + gtkdoc-scan --module=$(DOC_MODULE) --ignore-headers="$(IGNORE_HFILES)" $${_source_dir} $(SCAN_OPTIONS) $(EXTRA_HFILES) @if grep -l '^..*$$' $(srcdir)/$(DOC_MODULE).types > /dev/null 2>&1 ; then \ CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" RUN="$(GTKDOC_RUN)" CFLAGS="$(GTKDOC_CFLAGS) $(CFLAGS)" LDFLAGS="$(GTKDOC_LIBS) $(LDFLAGS)" gtkdoc-scangobj $(SCANGOBJ_OPTIONS) --module=$(DOC_MODULE) --output-dir=$(srcdir) ; \ else \ @@ -109,8 +112,11 @@ sgml-build.stamp: tmpl.stamp $(DOC_MODULE)-sections.txt $(srcdir)/tmpl/*.sgml $(expand_content_files) @echo 'gtk-doc: Building XML' @-chmod -R u+w $(srcdir) - @cd $(srcdir) && \ - gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $(MKDB_OPTIONS) + @_source_dir='' ; for i in $(DOC_SOURCE_DIR) ; do \ + _source_dir="$${_source_dir} --source-dir=$$i" ; \ + done ; \ + cd $(srcdir) && \ + gtkdoc-mkdb --module=$(DOC_MODULE) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $${_source_dir} $(MKDB_OPTIONS) @touch sgml-build.stamp sgml.stamp: sgml-build.stamp diff -Nru libzeitgeist-0.2.2/Makefile.am libzeitgeist-0.2.8/Makefile.am --- libzeitgeist-0.2.2/Makefile.am 2010-06-23 12:15:54.000000000 +0100 +++ libzeitgeist-0.2.8/Makefile.am 2010-08-24 13:18:07.000000000 +0100 @@ -5,6 +5,10 @@ examples \ tests +if ENABLE_GIOMODULE +SUBDIRS += module +endif + pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = zeitgeist-1.0.pc diff -Nru libzeitgeist-0.2.2/Makefile.in libzeitgeist-0.2.8/Makefile.in --- libzeitgeist-0.2.2/Makefile.in 2010-06-23 12:16:12.000000000 +0100 +++ libzeitgeist-0.2.8/Makefile.in 2010-08-24 13:18:30.000000000 +0100 @@ -34,6 +34,7 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ +@ENABLE_GIOMODULE_TRUE@am__append_1 = module subdir = . DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in $(srcdir)/config.h.in \ @@ -96,7 +97,7 @@ distdir dist dist-all distcheck ETAGS = etags CTAGS = ctags -DIST_SUBDIRS = $(SUBDIRS) +DIST_SUBDIRS = src bindings doc examples tests module DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) @@ -160,8 +161,10 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GIO_UNIX_CFLAGS = @GIO_UNIX_CFLAGS@ -GIO_UNIX_LIBS = @GIO_UNIX_LIBS@ +GIO2_CFLAGS = @GIO2_CFLAGS@ +GIO2_LIBS = @GIO2_LIBS@ +GIO_UNIX2_CFLAGS = @GIO_UNIX2_CFLAGS@ +GIO_UNIX2_LIBS = @GIO_UNIX2_LIBS@ GLIB2_CFLAGS = @GLIB2_CFLAGS@ GLIB2_LIBS = @GLIB2_LIBS@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ @@ -187,6 +190,7 @@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ +MAINTAINER_CFLAGS = @MAINTAINER_CFLAGS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ NM = @NM@ @@ -204,6 +208,8 @@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ @@ -211,6 +217,8 @@ STRIP = @STRIP@ VERSION = @VERSION@ ZEITGEIST_CFLAGS = @ZEITGEIST_CFLAGS@ +ZEITGEIST_GIOMODULE_CFLAGS = @ZEITGEIST_GIOMODULE_CFLAGS@ +ZEITGEIST_GIOMODULE_LIBS = @ZEITGEIST_GIOMODULE_LIBS@ ZEITGEIST_LIBS = @ZEITGEIST_LIBS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ @@ -235,6 +243,7 @@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ +giomodulesdir = @giomodulesdir@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ @@ -264,13 +273,7 @@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ -SUBDIRS = \ - src \ - bindings \ - doc \ - examples \ - tests - +SUBDIRS = src bindings doc examples tests $(am__append_1) pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = zeitgeist-1.0.pc zeitgeistdocdir = $(datadir)/doc/libzeitgeist diff -Nru libzeitgeist-0.2.2/module/gapplaunchhandlerzeitgeist.c libzeitgeist-0.2.8/module/gapplaunchhandlerzeitgeist.c --- libzeitgeist-0.2.2/module/gapplaunchhandlerzeitgeist.c 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/module/gapplaunchhandlerzeitgeist.c 2010-08-24 13:18:07.000000000 +0100 @@ -0,0 +1,285 @@ +/* + * Copyright (C) 2010 Canonical, Ltd. + * + * This library is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License + * version 3.0 as published by the Free Software Foundation. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3.0 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see + * . + * + * Authored by Mikkel Kamstrup Erlandsen + */ + +#include + +#include +#include +#include +#include + +#include "gapplaunchhandlerzeitgeist.h" + +static ZeitgeistLog *log = NULL; +static gpointer log_w = NULL; + +struct _GAppLaunchHandlerZeitgeist { + GObject parent; + +}; + +static void launch_handler_iface_init (GDesktopAppInfoLaunchHandlerIface *iface); +static void g_app_launch_handler_zeitgeist_finalize (GObject *object); +static void ensure_log (void); + +#define _G_IMPLEMENT_INTERFACE_DYNAMIC(TYPE_IFACE, iface_init) { \ + const GInterfaceInfo g_implement_interface_info = { \ + (GInterfaceInitFunc) iface_init, NULL, NULL \ + }; \ + g_type_module_add_interface (type_module, g_define_type_id, TYPE_IFACE, &g_implement_interface_info); \ +} + +G_DEFINE_DYNAMIC_TYPE_EXTENDED (GAppLaunchHandlerZeitgeist, g_app_launch_handler_zeitgeist, G_TYPE_OBJECT, 0, + _G_IMPLEMENT_INTERFACE_DYNAMIC (G_TYPE_DESKTOP_APP_INFO_LAUNCH_HANDLER, + launch_handler_iface_init)) + +/* We lazily create the ZeitgeistLog lazily because it creates a dbus + * connection, which if set up during the GIOModule registration phase + * (ie inside g_app_launch_handler_zeitgeist_register()) might mess up the + * gio module initialization process. + * + * Spurious deadlocks and segfaults have been observed without + * lazy setup of the log. + */ +static void +ensure_log (void) +{ + if (log_w == NULL) + { + log = zeitgeist_log_new (); + log_w = log; + g_object_add_weak_pointer (G_OBJECT (log), &log_w); + } +} + +static void +g_app_launch_handler_zeitgeist_finalize (GObject *object) +{ + if (G_OBJECT_CLASS (g_app_launch_handler_zeitgeist_parent_class)->finalize) + (*G_OBJECT_CLASS (g_app_launch_handler_zeitgeist_parent_class)->finalize) (object); +} + +static GObject * +g_app_launch_handler_zeitgeist_constructor (GType type, + guint n_construct_properties, + GObjectConstructParam *construct_properties) +{ + GObject *object; + GAppLaunchHandlerZeitgeistClass *klass; + GObjectClass *parent_class; + + object = NULL; + + /* Invoke parent constructor. */ + klass = G_APP_LAUNCH_HANDLER_ZEITGEIST_CLASS (g_type_class_peek (G_TYPE_APP_LAUNCH_HANDLER_ZEITGEIST)); + parent_class = G_OBJECT_CLASS (g_type_class_peek_parent (klass)); + object = parent_class->constructor (type, + n_construct_properties, + construct_properties); + + return object; +} + +static void +g_app_launch_handler_zeitgeist_init (GAppLaunchHandlerZeitgeist *lookup) +{ +} + +static void +g_app_launch_handler_zeitgeist_class_finalize (GAppLaunchHandlerZeitgeistClass *klass) +{ +} + + +static void +g_app_launch_handler_zeitgeist_class_init (GAppLaunchHandlerZeitgeistClass *klass) +{ + GObjectClass *gobject_class = G_OBJECT_CLASS (klass); + + gobject_class->constructor = g_app_launch_handler_zeitgeist_constructor; + gobject_class->finalize = g_app_launch_handler_zeitgeist_finalize; +} + +/* +static void +on_subject_info_ready (GFile *file, + GAsyncResult *res, + ZeitgeistEvent *ev) +{ + ZeitgeistSubject *su; + GError *error; + GFileInfo *info; + GFile *parent_file; + gchar *uri, *parent_uri; + const gchar *display_name, *filesystem, *mimetype; + + uri = g_file_get_uri (file); + + error = NULL; + info = g_file_query_info_finish (file, res, &error); + if (error != NULL) + { + // On anything but a file-not-found we complain in the log + if (error->code != G_IO_ERROR_NOT_FOUND) + g_warning ("Error querying file info for '%s': %s", + uri, error->message); + + g_free (uri); + g_object_unref (ev); + g_error_free (error); + return; + } + + display_name = g_file_info_get_attribute_string (info, + G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME); + filesystem = g_file_info_get_attribute_string (info, + G_FILE_ATTRIBUTE_ID_FILESYSTEM); + mimetype = g_file_info_get_attribute_string (info, + G_FILE_ATTRIBUTE_STANDARD_FAST_CONTENT_TYPE); + + parent_file = g_file_get_parent (file); + parent_uri = g_file_get_uri (parent_file); + + // If we couldn't query the filesystem for the subject assume it was a + // residing online somwhere + filesystem = filesystem != NULL ? filesystem : "net"; + + su = zeitgeist_subject_new_full (uri, + zeitgeist_interpretation_for_mimetype (mimetype), + zeitgeist_manifestation_for_uri (uri), + mimetype, + parent_uri, + display_name, + filesystem); + zeitgeist_event_add_subject (ev, su); + + // FIXME: Right now we actually insert one event for each subject. + // We should rather collect all subject data (async) and + // insert one event with all the subjects + zeitgeist_log_insert_events_no_reply (log, ev, NULL); + + g_free (uri); + g_free (parent_uri); + g_object_unref (parent_file); + g_object_unref (info); +} +*/ + +/* Create an application://app.desktop URI. Caller must g_free() the result + * if it's != NULL */ +static gchar* +get_application_uri (GDesktopAppInfo *appinfo) +{ + gchar *app_id = NULL; + + app_id = g_strdup (g_app_info_get_id (G_APP_INFO (appinfo))); + + if (app_id != NULL) + { + app_id = g_strconcat ("application://", app_id, NULL); + } + else if (g_desktop_app_info_get_filename (G_DESKTOP_APP_INFO (appinfo))) + { + const gchar *path = g_desktop_app_info_get_filename ( + G_DESKTOP_APP_INFO (appinfo)); + gchar *basename = g_path_get_basename (path); + app_id = g_strconcat ("application://", basename, NULL); + g_free (basename); + } + + return app_id; +} + +static void +on_launched (GDesktopAppInfoLaunchHandler *launch_handler, + GDesktopAppInfo *app_info, + GList *uris, + GAppLaunchContext *launch_ctx, + gint pid) +{ + ZeitgeistEvent *ev; + ZeitgeistSubject *su; + GList *iter; + GFile *file; + gchar *subject_uri, *actor, *prgname; + + ensure_log (); + + g_return_if_fail (ZEITGEIST_IS_LOG (log)); + g_return_if_fail (G_IS_DESKTOP_APP_INFO (app_info)); + + ev = zeitgeist_event_new (); + su = zeitgeist_subject_new (); + + subject_uri = get_application_uri (app_info); + + if (subject_uri == NULL) + { + /* We where unable to figure out the launched app... */ + g_object_unref (ev); + g_object_unref (su); + return; + } + + /* Set event metadata */ + prgname = g_get_prgname (); + zeitgeist_event_set_interpretation (ev, ZEITGEIST_ZG_ACCESS_EVENT); + zeitgeist_event_set_manifestation (ev, ZEITGEIST_ZG_USER_ACTIVITY); + actor = prgname ? g_strdup_printf ("application://%s.desktop", prgname) : + g_strdup (""); + zeitgeist_event_set_actor (ev, actor); + g_free (actor); + + zeitgeist_event_add_subject (ev, su); + + zeitgeist_subject_set_uri (su, subject_uri); + zeitgeist_subject_set_interpretation (su, ZEITGEIST_NFO_SOFTWARE); + zeitgeist_subject_set_manifestation (su, ZEITGEIST_NFO_SOFTWARE_ITEM); + zeitgeist_subject_set_mimetype (su, "application/x-desktop"); + zeitgeist_subject_set_text (su, g_app_info_get_display_name ( + G_APP_INFO (app_info))); + g_free (subject_uri); + // FIXME: subject origin and storage? + + /* Send the event to Zeitgeist */ + zeitgeist_log_insert_events_no_reply (log, ev, NULL); +} + +static void +launch_handler_iface_init (GDesktopAppInfoLaunchHandlerIface *iface) +{ + iface->on_launched = on_launched; +} + +void +g_app_launch_handler_zeitgeist_register (GIOModule *module) +{ + g_app_launch_handler_zeitgeist_register_type (G_TYPE_MODULE (module)); + g_io_extension_point_implement (G_DESKTOP_APP_INFO_LAUNCH_HANDLER_EXTENSION_POINT_NAME, + G_TYPE_APP_LAUNCH_HANDLER_ZEITGEIST, + "zeitgeist", + 10); +} + +void +g_app_launch_handler_zeitgeist_unregister (GIOModule *module) +{ + if (log_w != NULL) + g_object_unref (log); +} diff -Nru libzeitgeist-0.2.2/module/gapplaunchhandlerzeitgeist.h libzeitgeist-0.2.8/module/gapplaunchhandlerzeitgeist.h --- libzeitgeist-0.2.2/module/gapplaunchhandlerzeitgeist.h 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/module/gapplaunchhandlerzeitgeist.h 2010-08-24 13:18:07.000000000 +0100 @@ -0,0 +1,49 @@ +/* + * Copyright (C) 2010 Canonical, Ltd. + * + * This library is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License + * version 3.0 as published by the Free Software Foundation. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3.0 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see + * . + * + * Authored by Mikkel Kamstrup Erlandsen + */ + +#ifndef __G_APP_LAUNCH_HANDLER_ZEITGEIST_H__ +#define __G_APP_LAUNCH_HANDLER_ZEITGEIST_H__ + +#include +#include +#include + + +G_BEGIN_DECLS + +#define G_TYPE_APP_LAUNCH_HANDLER_ZEITGEIST (g_app_launch_handler_zeitgeist_get_type ()) +#define G_APP_LAUNCH_HANDLER_ZEITGEIST(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), G_TYPE_APP_LAUNCH_HANDLER_ZEITGEIST, GAppLaunchHandlerZeitgeist)) +#define G_APP_LAUNCH_HANDLER_ZEITGEIST_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), G_TYPE_APP_LAUNCH_HANDLER_ZEITGEIST, GAppLaunchHandlerZeitgeistClass)) +#define G_IS_APP_LAUNCH_HANDLER_ZEITGEIST(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), G_TYPE_APP_LAUNCH_HANDLER_ZEITGEIST)) +#define G_IS_APP_LAUNCH_HANDLER_ZEITGEIST_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), G_TYPE_APP_LAUNCH_HANDLER_ZEITGEIST)) + +typedef struct _GAppLaunchHandlerZeitgeist GAppLaunchHandlerZeitgeist; +typedef struct _GAppLaunchHandlerZeitgeistClass GAppLaunchHandlerZeitgeistClass; + +struct _GAppLaunchHandlerZeitgeistClass { + GObjectClass parent_class; +}; + +GType g_app_launch_handler_zeitgeist_get_type (void) G_GNUC_CONST; +void g_app_launch_handler_zeitgeist_register (GIOModule *module); +void g_app_launch_handler_zeitgeist_unregister (GIOModule *module); + +G_END_DECLS + +#endif /* __G_APP_LAUNCH_HANDLER_ZEITGEIST_H__ */ diff -Nru libzeitgeist-0.2.2/module/Makefile.am libzeitgeist-0.2.8/module/Makefile.am --- libzeitgeist-0.2.2/module/Makefile.am 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/module/Makefile.am 2010-08-24 13:18:07.000000000 +0100 @@ -0,0 +1,28 @@ +libdir = $(giomodulesdir) +lib_LTLIBRARIES = libgiozeitgeist.la + + +libgiozeitgeist_la_SOURCES = \ + gapplaunchhandlerzeitgeist.c \ + gapplaunchhandlerzeitgeist.h \ + zeitgeist-module.c \ + $(NULL) + +libgiozeitgeist_la_CFLAGS = \ + -I$(top_srcdir) \ + -I$(top_srcdir)/src \ + $(ZEITGEIST_GIOMODULE_CFLAGS) \ + -DG_LOG_DOMAIN=\"ZeitgeistGIOModule\" \ + $(NULL) + +module_flags = -export_dynamic -avoid-version -module -no-undefined -export-symbols-regex '^g_io_module_(load|unload)' + +libgiozeitgeist_la_LDFLAGS = \ + $(module_flags) \ + $(NULL) + +libgiozeitgeist_la_LIBADD = \ + $(ZEITGEIST_GIOMODULE_LIBS) \ + $(top_builddir)/src/libzeitgeist-1.0.la \ + $(NULL) + diff -Nru libzeitgeist-0.2.2/module/Makefile.in libzeitgeist-0.2.8/module/Makefile.in --- libzeitgeist-0.2.2/module/Makefile.in 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/module/Makefile.in 2010-08-24 13:18:30.000000000 +0100 @@ -0,0 +1,605 @@ +# Makefile.in generated by automake 1.11.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +subdir = module +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__installdirs = "$(DESTDIR)$(libdir)" +LTLIBRARIES = $(lib_LTLIBRARIES) +am__DEPENDENCIES_1 = +libgiozeitgeist_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ + $(top_builddir)/src/libzeitgeist-1.0.la +am_libgiozeitgeist_la_OBJECTS = \ + libgiozeitgeist_la-gapplaunchhandlerzeitgeist.lo \ + libgiozeitgeist_la-zeitgeist-module.lo +libgiozeitgeist_la_OBJECTS = $(am_libgiozeitgeist_la_OBJECTS) +AM_V_lt = $(am__v_lt_$(V)) +am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) +am__v_lt_0 = --silent +libgiozeitgeist_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(libgiozeitgeist_la_CFLAGS) $(CFLAGS) \ + $(libgiozeitgeist_la_LDFLAGS) $(LDFLAGS) -o $@ +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +depcomp = $(SHELL) $(top_srcdir)/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ + $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ + $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_$(V)) +am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) +am__v_CC_0 = @echo " CC " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ +CCLD = $(CC) +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_$(V)) +am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) +am__v_CCLD_0 = @echo " CCLD " $@; +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +SOURCES = $(libgiozeitgeist_la_SOURCES) +DIST_SOURCES = $(libgiozeitgeist_la_SOURCES) +ETAGS = etags +CTAGS = ctags +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGGDBUS_BINDING_TOOL = @EGGDBUS_BINDING_TOOL@ +EGGDBUS_CFLAGS = @EGGDBUS_CFLAGS@ +EGGDBUS_LIBS = @EGGDBUS_LIBS@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +FGREP = @FGREP@ +GIO2_CFLAGS = @GIO2_CFLAGS@ +GIO2_LIBS = @GIO2_LIBS@ +GIO_UNIX2_CFLAGS = @GIO_UNIX2_CFLAGS@ +GIO_UNIX2_LIBS = @GIO_UNIX2_LIBS@ +GLIB2_CFLAGS = @GLIB2_CFLAGS@ +GLIB2_LIBS = @GLIB2_LIBS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ +GLIB_MKENUMS = @GLIB_MKENUMS@ +GOBJECT2_CFLAGS = @GOBJECT2_CFLAGS@ +GOBJECT2_LIBS = @GOBJECT2_LIBS@ +GREP = @GREP@ +GTKDOC_CHECK = @GTKDOC_CHECK@ +GTKDOC_MKPDF = @GTKDOC_MKPDF@ +GTKDOC_REBASE = @GTKDOC_REBASE@ +HTML_DIR = @HTML_DIR@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ +MAINTAINER_CFLAGS = @MAINTAINER_CFLAGS@ +MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +VERSION = @VERSION@ +ZEITGEIST_CFLAGS = @ZEITGEIST_CFLAGS@ +ZEITGEIST_GIOMODULE_CFLAGS = @ZEITGEIST_GIOMODULE_CFLAGS@ +ZEITGEIST_GIOMODULE_LIBS = @ZEITGEIST_GIOMODULE_LIBS@ +ZEITGEIST_LIBS = @ZEITGEIST_LIBS@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +giomodulesdir = @giomodulesdir@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = $(giomodulesdir) +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +lt_ECHO = @lt_ECHO@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +lib_LTLIBRARIES = libgiozeitgeist.la +libgiozeitgeist_la_SOURCES = \ + gapplaunchhandlerzeitgeist.c \ + gapplaunchhandlerzeitgeist.h \ + zeitgeist-module.c \ + $(NULL) + +libgiozeitgeist_la_CFLAGS = \ + -I$(top_srcdir) \ + -I$(top_srcdir)/src \ + $(ZEITGEIST_GIOMODULE_CFLAGS) \ + -DG_LOG_DOMAIN=\"ZeitgeistGIOModule\" \ + $(NULL) + +module_flags = -export_dynamic -avoid-version -module -no-undefined -export-symbols-regex '^g_io_module_(load|unload)' +libgiozeitgeist_la_LDFLAGS = \ + $(module_flags) \ + $(NULL) + +libgiozeitgeist_la_LIBADD = \ + $(ZEITGEIST_GIOMODULE_LIBS) \ + $(top_builddir)/src/libzeitgeist-1.0.la \ + $(NULL) + +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .lo .o .obj +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu module/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu module/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): +install-libLTLIBRARIES: $(lib_LTLIBRARIES) + @$(NORMAL_INSTALL) + test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)" + @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \ + list2=; for p in $$list; do \ + if test -f $$p; then \ + list2="$$list2 $$p"; \ + else :; fi; \ + done; \ + test -z "$$list2" || { \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \ + } + +uninstall-libLTLIBRARIES: + @$(NORMAL_UNINSTALL) + @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \ + done + +clean-libLTLIBRARIES: + -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES) + @list='$(lib_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" != "$$p" || dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done +libgiozeitgeist.la: $(libgiozeitgeist_la_OBJECTS) $(libgiozeitgeist_la_DEPENDENCIES) + $(AM_V_CCLD)$(libgiozeitgeist_la_LINK) -rpath $(libdir) $(libgiozeitgeist_la_OBJECTS) $(libgiozeitgeist_la_LIBADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgiozeitgeist_la-gapplaunchhandlerzeitgeist.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgiozeitgeist_la-zeitgeist-module.Plo@am__quote@ + +.c.o: +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c $< + +.c.obj: +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` + +.c.lo: +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< + +libgiozeitgeist_la-gapplaunchhandlerzeitgeist.lo: gapplaunchhandlerzeitgeist.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgiozeitgeist_la_CFLAGS) $(CFLAGS) -MT libgiozeitgeist_la-gapplaunchhandlerzeitgeist.lo -MD -MP -MF $(DEPDIR)/libgiozeitgeist_la-gapplaunchhandlerzeitgeist.Tpo -c -o libgiozeitgeist_la-gapplaunchhandlerzeitgeist.lo `test -f 'gapplaunchhandlerzeitgeist.c' || echo '$(srcdir)/'`gapplaunchhandlerzeitgeist.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgiozeitgeist_la-gapplaunchhandlerzeitgeist.Tpo $(DEPDIR)/libgiozeitgeist_la-gapplaunchhandlerzeitgeist.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='gapplaunchhandlerzeitgeist.c' object='libgiozeitgeist_la-gapplaunchhandlerzeitgeist.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgiozeitgeist_la_CFLAGS) $(CFLAGS) -c -o libgiozeitgeist_la-gapplaunchhandlerzeitgeist.lo `test -f 'gapplaunchhandlerzeitgeist.c' || echo '$(srcdir)/'`gapplaunchhandlerzeitgeist.c + +libgiozeitgeist_la-zeitgeist-module.lo: zeitgeist-module.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgiozeitgeist_la_CFLAGS) $(CFLAGS) -MT libgiozeitgeist_la-zeitgeist-module.lo -MD -MP -MF $(DEPDIR)/libgiozeitgeist_la-zeitgeist-module.Tpo -c -o libgiozeitgeist_la-zeitgeist-module.lo `test -f 'zeitgeist-module.c' || echo '$(srcdir)/'`zeitgeist-module.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgiozeitgeist_la-zeitgeist-module.Tpo $(DEPDIR)/libgiozeitgeist_la-zeitgeist-module.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zeitgeist-module.c' object='libgiozeitgeist_la-zeitgeist-module.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgiozeitgeist_la_CFLAGS) $(CFLAGS) -c -o libgiozeitgeist_la-zeitgeist-module.lo `test -f 'zeitgeist-module.c' || echo '$(srcdir)/'`zeitgeist-module.c + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + set x; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: CTAGS +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile $(LTLIBRARIES) +installdirs: + for dir in "$(DESTDIR)$(libdir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \ + mostlyclean-am + +distclean: distclean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: install-libLTLIBRARIES + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-libLTLIBRARIES + +.MAKE: install-am install-strip + +.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ + clean-libLTLIBRARIES clean-libtool ctags distclean \ + distclean-compile distclean-generic distclean-libtool \ + distclean-tags distdir dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am \ + install-libLTLIBRARIES install-man install-pdf install-pdf-am \ + install-ps install-ps-am install-strip installcheck \ + installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-compile \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + tags uninstall uninstall-am uninstall-libLTLIBRARIES + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff -Nru libzeitgeist-0.2.2/module/zeitgeist-module.c libzeitgeist-0.2.8/module/zeitgeist-module.c --- libzeitgeist-0.2.2/module/zeitgeist-module.c 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/module/zeitgeist-module.c 2010-08-24 13:18:07.000000000 +0100 @@ -0,0 +1,40 @@ +/* + * Copyright (C) 2010 Canonical, Ltd. + * + * This library is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License + * version 3.0 as published by the Free Software Foundation. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3.0 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see + * . + * + * Authored by Mikkel Kamstrup Erlandsen + */ + +#include + +#include +#include +#include +#include + +#include "gapplaunchhandlerzeitgeist.h" + +void +g_io_module_load (GIOModule *module) +{ + g_app_launch_handler_zeitgeist_register (module); +} + +void +g_io_module_unload (GIOModule *module) +{ + g_app_launch_handler_zeitgeist_unregister (module); +} + diff -Nru libzeitgeist-0.2.2/NEWS libzeitgeist-0.2.8/NEWS --- libzeitgeist-0.2.2/NEWS 2010-06-23 12:15:54.000000000 +0100 +++ libzeitgeist-0.2.8/NEWS 2010-08-24 13:18:07.000000000 +0100 @@ -1,4 +1,22 @@ -2010-06-23: libzeitgeist 0.2.2 +2010-08-05: libzeitgeist 0.2.4 "Hemlock" + + * New ResultTypes to sort by subject origin as supported by Zeitgeist 0.5.0 + + * Fix nasty bug lp:559350 causing an integer overflow in Zeitgeist + (Michal Hruby) + +2010-07-29: libzeitgeist 0.2.3 "Delphinium" + + * New API to talk to the Data Source Registry extension of Zeitgeist + (Michal Hruby) + + * A new "connected" property on ZeitgeistLog telling you whether or + not the Zeitgeist daemon is running (Michal Hruby) + + * Fix a crasher when finalizing a ZeitgeistLog with active monitors + installed (Michal Hruby) + +2010-06-23: libzeitgeist 0.2.2 "Deadly Nightshade" * New API: zeitgeist_timestamp_prev_midnight() and zeitgeist_timestamp_next_midnight(). diff -Nru libzeitgeist-0.2.2/src/docbook-enum-ResultType.xml libzeitgeist-0.2.8/src/docbook-enum-ResultType.xml --- libzeitgeist-0.2.2/src/docbook-enum-ResultType.xml 2010-06-23 12:16:17.000000000 +0100 +++ libzeitgeist-0.2.8/src/docbook-enum-ResultType.xml 2010-08-24 13:18:42.000000000 +0100 @@ -25,6 +25,10 @@ LeastPopularActor = 7, MostRecentActor = 8, LeastRecentActor = 9, + MostRecentOrigin = 10, + LeastRecentOrigin = 11, + MostPopularOrigin = 12, + LeastPopularOrigin = 13, Relevancy = 100 } @@ -108,7 +112,39 @@ LeastRecentActor -The most recent event for each different actor. +The least recent event for each different actor. + + + + + MostRecentOrigin + + +The most recent event for each different origin. + + + + + LeastRecentOrigin + + +The least recent event for each different origin. + + + + + MostPopularOrigin + + +The last event of each different origin, ordered by the popularity of the origin. + + + + + LeastPopularOrigin + + +The last event of each different origin, ordered ascendingly by the popularity of the origin. diff -Nru libzeitgeist-0.2.2/src/docbook-interface-org.gnome.zeitgeist.DataSourceRegistry.xml libzeitgeist-0.2.8/src/docbook-interface-org.gnome.zeitgeist.DataSourceRegistry.xml --- libzeitgeist-0.2.2/src/docbook-interface-org.gnome.zeitgeist.DataSourceRegistry.xml 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/src/docbook-interface-org.gnome.zeitgeist.DataSourceRegistry.xml 2010-08-24 13:18:42.000000000 +0100 @@ -0,0 +1,214 @@ + + + + + org.gnome.zeitgeist.DataSourceRegistry Interface + + + org.gnome.zeitgeist.DataSourceRegistry Interface + FIXME: not documented. + + + Methods + +RegisterDataSource (IN String unique_id, + IN String name, + IN String description, + IN Array<Event> event_templates, + OUT Boolean result) +SetDataSourceEnabled (IN String unique_id, + IN Boolean enabled) +GetDataSources (OUT Array<DataSource> arg_0) + + + + Signals + +DataSourceRegistered (DataSource arg_0) +DataSourceDisconnected (DataSource arg_0) +DataSourceEnabled (String unique_id, + Boolean enabled) + + + + Description + +An extension which allows you to registers data sources in a central repository. This allows for example to disable some data sources. + + + + Method Details + + RegisterDataSource () + +RegisterDataSource (IN String unique_id, + IN String name, + IN String description, + IN Array<Event> event_templates, + OUT Boolean result) + + +FIXME: not documented. + + + + IN String unique_id: + + +FIXME: not documented. + + + + + IN String name: + + +FIXME: not documented. + + + + + IN String description: + + +FIXME: not documented. + + + + + IN Array<Event> event_templates: + + +FIXME: not documented. + + + + + OUT Boolean result: + + +FIXME: not documented. + + + + + + + SetDataSourceEnabled () + +SetDataSourceEnabled (IN String unique_id, + IN Boolean enabled) + + +FIXME: not documented. + + + + IN String unique_id: + + +FIXME: not documented. + + + + + IN Boolean enabled: + + +FIXME: not documented. + + + + + + + GetDataSources () + +GetDataSources (OUT Array<DataSource> arg_0) + + +FIXME: not documented. + + + + OUT Array<DataSource> arg_0: + + +FIXME: not documented. + + + + + + + + Signal Details + + The "DataSourceRegistered" signal + +DataSourceRegistered (DataSource arg_0) + + +FIXME: not documented. + + + + DataSource arg_0: + + +FIXME: not documented. + + + + + + + The "DataSourceDisconnected" signal + +DataSourceDisconnected (DataSource arg_0) + + +FIXME: not documented. + + + + DataSource arg_0: + + +FIXME: not documented. + + + + + + + The "DataSourceEnabled" signal + +DataSourceEnabled (String unique_id, + Boolean enabled) + + +FIXME: not documented. + + + + String unique_id: + + +FIXME: not documented. + + + + + Boolean enabled: + + +FIXME: not documented. + + + + + + + diff -Nru libzeitgeist-0.2.2/src/docbook-struct-DataSource.xml libzeitgeist-0.2.8/src/docbook-struct-DataSource.xml --- libzeitgeist-0.2.2/src/docbook-struct-DataSource.xml 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/src/docbook-struct-DataSource.xml 2010-08-24 13:18:42.000000000 +0100 @@ -0,0 +1,91 @@ + + + + + DataSource Structure + + + DataSource Structure + DataSource + + + + The DataSource Structure + + +{ + String unique_id, + String name, + String description, + Array<Event> event_templates, + Boolean running, + Int64 last_seen, + Boolean enabled +} + + +The DataSource type is used to represent registered data sources + + + + String unique_id + + +Unique ID of the data source + + + + + String name + + +Name of the data source + + + + + String description + + +Description of the data source + + + + + Array<Event> event_templates + + +Event templates for this data source + + + + + Boolean running + + +Whether data source is currently running + + + + + Int64 last_seen + + +Timestamp of last action of this data source + + + + + Boolean enabled + + +Whether data source is enabled + + + + + + + + diff -Nru libzeitgeist-0.2.2/src/eggzeitgeistbindings.h libzeitgeist-0.2.8/src/eggzeitgeistbindings.h --- libzeitgeist-0.2.2/src/eggzeitgeistbindings.h 2010-06-23 12:16:17.000000000 +0100 +++ libzeitgeist-0.2.8/src/eggzeitgeistbindings.h 2010-08-24 13:18:42.000000000 +0100 @@ -18,8 +18,10 @@ #include "eggzeitgeistmonitor.h" #include "eggzeitgeistblacklist.h" #include "eggzeitgeistindex.h" +#include "eggzeitgeistdatasourceregistry.h" #include "eggzeitgeistevent.h" #include "eggzeitgeisttimerange.h" +#include "eggzeitgeistdatasource.h" GType *egg_zeitgeist_bindings_get_error_domain_types (void); diff -Nru libzeitgeist-0.2.2/src/eggzeitgeistbindingsmarshal.c libzeitgeist-0.2.8/src/eggzeitgeistbindingsmarshal.c --- libzeitgeist-0.2.2/src/eggzeitgeistbindingsmarshal.c 2010-06-23 12:16:17.000000000 +0100 +++ libzeitgeist-0.2.8/src/eggzeitgeistbindingsmarshal.c 2010-08-24 13:18:42.000000000 +0100 @@ -53,3 +53,42 @@ #endif /* !G_ENABLE_DEBUG */ +/* VOID:OBJECT (eggzeitgeistbindingsmarshal.list:1) */ + +/* VOID:STRING,BOOLEAN (eggzeitgeistbindingsmarshal.list:2) */ +void +_egg_zeitgeist_cclosure_marshal_VOID__STRING_BOOLEAN (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__STRING_BOOLEAN) (gpointer data1, + gpointer arg_1, + gboolean arg_2, + gpointer data2); + register GMarshalFunc_VOID__STRING_BOOLEAN callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__STRING_BOOLEAN) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_marshal_value_peek_string (param_values + 1), + g_marshal_value_peek_boolean (param_values + 2), + data2); +} + diff -Nru libzeitgeist-0.2.2/src/eggzeitgeistbindingsmarshal.h libzeitgeist-0.2.8/src/eggzeitgeistbindingsmarshal.h --- libzeitgeist-0.2.2/src/eggzeitgeistbindingsmarshal.h 2010-06-23 12:16:17.000000000 +0100 +++ libzeitgeist-0.2.8/src/eggzeitgeistbindingsmarshal.h 2010-08-24 13:18:42.000000000 +0100 @@ -6,6 +6,17 @@ G_BEGIN_DECLS +/* VOID:OBJECT (eggzeitgeistbindingsmarshal.list:1) */ +#define _egg_zeitgeist_cclosure_marshal_VOID__OBJECT g_cclosure_marshal_VOID__OBJECT + +/* VOID:STRING,BOOLEAN (eggzeitgeistbindingsmarshal.list:2) */ +extern void _egg_zeitgeist_cclosure_marshal_VOID__STRING_BOOLEAN (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); + G_END_DECLS #endif /* ___egg_zeitgeist_cclosure_marshal_MARSHAL_H__ */ diff -Nru libzeitgeist-0.2.2/src/eggzeitgeistbindingsmarshal.list libzeitgeist-0.2.8/src/eggzeitgeistbindingsmarshal.list --- libzeitgeist-0.2.2/src/eggzeitgeistbindingsmarshal.list 2010-06-23 12:16:17.000000000 +0100 +++ libzeitgeist-0.2.8/src/eggzeitgeistbindingsmarshal.list 2010-08-24 13:18:42.000000000 +0100 @@ -0,0 +1,2 @@ +VOID:OBJECT +VOID:STRING,BOOLEAN diff -Nru libzeitgeist-0.2.2/src/eggzeitgeistbindingstypes.h libzeitgeist-0.2.8/src/eggzeitgeistbindingstypes.h --- libzeitgeist-0.2.2/src/eggzeitgeistbindingstypes.h 2010-06-23 12:16:17.000000000 +0100 +++ libzeitgeist-0.2.8/src/eggzeitgeistbindingstypes.h 2010-08-24 13:18:42.000000000 +0100 @@ -25,10 +25,14 @@ typedef struct _EggZeitgeistIndex EggZeitgeistIndex; /* Dummy typedef */ +typedef struct _EggZeitgeistDataSourceRegistry EggZeitgeistDataSourceRegistry; /* Dummy typedef */ + typedef struct _EggZeitgeistEvent EggZeitgeistEvent; /* Dummy typedef */ typedef struct _EggZeitgeistTimeRange EggZeitgeistTimeRange; /* Dummy typedef */ +typedef struct _EggZeitgeistDataSource EggZeitgeistDataSource; /* Dummy typedef */ + G_END_DECLS diff -Nru libzeitgeist-0.2.2/src/eggzeitgeistdatasource.c libzeitgeist-0.2.8/src/eggzeitgeistdatasource.c --- libzeitgeist-0.2.2/src/eggzeitgeistdatasource.c 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/src/eggzeitgeistdatasource.c 2010-08-24 13:18:42.000000000 +0100 @@ -0,0 +1,357 @@ + +/* File: eggzeitgeistdatasource.c + * + * Generated by eggdbus-binding-tool 0.6. Do not edit. + */ + +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif +#include +#include "eggzeitgeistbindingstypes.h" +#include "eggzeitgeistbindings.h" +#include "eggzeitgeistdatasource.h" + +/** + * SECTION:eggzeitgeistdatasource + * @title: EggZeitgeistDataSource + * @short_description: DataSource + * + * The #EggZeitgeistDataSource type is used to represent registered data sources + */ + +G_DEFINE_TYPE (EggZeitgeistDataSource, egg_zeitgeist_data_source, EGG_DBUS_TYPE_STRUCTURE); + +static void +egg_zeitgeist_data_source_init (EggZeitgeistDataSource *instance) +{ +} + +static void +egg_zeitgeist_data_source_class_init (EggZeitgeistDataSourceClass *klass) +{ +} + +/** + * egg_zeitgeist_data_source_get_unique_id: + * @instance: A #EggZeitgeistDataSource. + * + * Gets element 0 of the #EggDBusStructure wrapped by #EggZeitgeistDataSource. + * + * Returns: Unique ID of the data source + */ +const gchar * +egg_zeitgeist_data_source_get_unique_id (EggZeitgeistDataSource *instance) +{ + const gchar *value; + + g_return_val_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE (instance), NULL); + + egg_dbus_structure_get_element (EGG_DBUS_STRUCTURE (instance), + 0, &value, + -1); + + return value; +} + +/** + * egg_zeitgeist_data_source_get_name: + * @instance: A #EggZeitgeistDataSource. + * + * Gets element 1 of the #EggDBusStructure wrapped by #EggZeitgeistDataSource. + * + * Returns: Name of the data source + */ +const gchar * +egg_zeitgeist_data_source_get_name (EggZeitgeistDataSource *instance) +{ + const gchar *value; + + g_return_val_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE (instance), NULL); + + egg_dbus_structure_get_element (EGG_DBUS_STRUCTURE (instance), + 1, &value, + -1); + + return value; +} + +/** + * egg_zeitgeist_data_source_get_description: + * @instance: A #EggZeitgeistDataSource. + * + * Gets element 2 of the #EggDBusStructure wrapped by #EggZeitgeistDataSource. + * + * Returns: Description of the data source + */ +const gchar * +egg_zeitgeist_data_source_get_description (EggZeitgeistDataSource *instance) +{ + const gchar *value; + + g_return_val_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE (instance), NULL); + + egg_dbus_structure_get_element (EGG_DBUS_STRUCTURE (instance), + 2, &value, + -1); + + return value; +} + +/** + * egg_zeitgeist_data_source_get_event_templates: + * @instance: A #EggZeitgeistDataSource. + * + * Gets element 3 of the #EggDBusStructure wrapped by #EggZeitgeistDataSource. + * + * Returns: Event templates for this data source + */ +EggDBusArraySeq * +egg_zeitgeist_data_source_get_event_templates (EggZeitgeistDataSource *instance) +{ + EggDBusArraySeq *value; + + g_return_val_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE (instance), NULL); + + egg_dbus_structure_get_element (EGG_DBUS_STRUCTURE (instance), + 3, &value, + -1); + + return value; +} + +/** + * egg_zeitgeist_data_source_get_running: + * @instance: A #EggZeitgeistDataSource. + * + * Gets element 4 of the #EggDBusStructure wrapped by #EggZeitgeistDataSource. + * + * Returns: Whether data source is currently running + */ +gboolean +egg_zeitgeist_data_source_get_running (EggZeitgeistDataSource *instance) +{ + gboolean value; + + g_return_val_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE (instance), 0); + + egg_dbus_structure_get_element (EGG_DBUS_STRUCTURE (instance), + 4, &value, + -1); + + return value; +} + +/** + * egg_zeitgeist_data_source_get_last_seen: + * @instance: A #EggZeitgeistDataSource. + * + * Gets element 5 of the #EggDBusStructure wrapped by #EggZeitgeistDataSource. + * + * Returns: Timestamp of last action of this data source + */ +gint64 +egg_zeitgeist_data_source_get_last_seen (EggZeitgeistDataSource *instance) +{ + gint64 value; + + g_return_val_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE (instance), 0); + + egg_dbus_structure_get_element (EGG_DBUS_STRUCTURE (instance), + 5, &value, + -1); + + return value; +} + +/** + * egg_zeitgeist_data_source_get_enabled: + * @instance: A #EggZeitgeistDataSource. + * + * Gets element 6 of the #EggDBusStructure wrapped by #EggZeitgeistDataSource. + * + * Returns: Whether data source is enabled + */ +gboolean +egg_zeitgeist_data_source_get_enabled (EggZeitgeistDataSource *instance) +{ + gboolean value; + + g_return_val_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE (instance), 0); + + egg_dbus_structure_get_element (EGG_DBUS_STRUCTURE (instance), + 6, &value, + -1); + + return value; +} + + +/** + * egg_zeitgeist_data_source_set_unique_id: + * @instance: A #EggZeitgeistDataSource. + * @value: Unique ID of the data source + * + * Sets element 0 of the #EggDBusStructure wrapped by #EggZeitgeistDataSource. + */ +void +egg_zeitgeist_data_source_set_unique_id (EggZeitgeistDataSource *instance, const gchar *value) +{ + g_return_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE (instance)); + + egg_dbus_structure_set_element (EGG_DBUS_STRUCTURE (instance), + 0, value, + -1); +} + +/** + * egg_zeitgeist_data_source_set_name: + * @instance: A #EggZeitgeistDataSource. + * @value: Name of the data source + * + * Sets element 1 of the #EggDBusStructure wrapped by #EggZeitgeistDataSource. + */ +void +egg_zeitgeist_data_source_set_name (EggZeitgeistDataSource *instance, const gchar *value) +{ + g_return_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE (instance)); + + egg_dbus_structure_set_element (EGG_DBUS_STRUCTURE (instance), + 1, value, + -1); +} + +/** + * egg_zeitgeist_data_source_set_description: + * @instance: A #EggZeitgeistDataSource. + * @value: Description of the data source + * + * Sets element 2 of the #EggDBusStructure wrapped by #EggZeitgeistDataSource. + */ +void +egg_zeitgeist_data_source_set_description (EggZeitgeistDataSource *instance, const gchar *value) +{ + g_return_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE (instance)); + + egg_dbus_structure_set_element (EGG_DBUS_STRUCTURE (instance), + 2, value, + -1); +} + +/** + * egg_zeitgeist_data_source_set_event_templates: + * @instance: A #EggZeitgeistDataSource. + * @value: Event templates for this data source + * + * Sets element 3 of the #EggDBusStructure wrapped by #EggZeitgeistDataSource. + */ +void +egg_zeitgeist_data_source_set_event_templates (EggZeitgeistDataSource *instance, EggDBusArraySeq *value) +{ + g_return_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE (instance)); + + egg_dbus_structure_set_element (EGG_DBUS_STRUCTURE (instance), + 3, value, + -1); +} + +/** + * egg_zeitgeist_data_source_set_running: + * @instance: A #EggZeitgeistDataSource. + * @value: Whether data source is currently running + * + * Sets element 4 of the #EggDBusStructure wrapped by #EggZeitgeistDataSource. + */ +void +egg_zeitgeist_data_source_set_running (EggZeitgeistDataSource *instance, gboolean value) +{ + g_return_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE (instance)); + + egg_dbus_structure_set_element (EGG_DBUS_STRUCTURE (instance), + 4, value, + -1); +} + +/** + * egg_zeitgeist_data_source_set_last_seen: + * @instance: A #EggZeitgeistDataSource. + * @value: Timestamp of last action of this data source + * + * Sets element 5 of the #EggDBusStructure wrapped by #EggZeitgeistDataSource. + */ +void +egg_zeitgeist_data_source_set_last_seen (EggZeitgeistDataSource *instance, gint64 value) +{ + g_return_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE (instance)); + + egg_dbus_structure_set_element (EGG_DBUS_STRUCTURE (instance), + 5, value, + -1); +} + +/** + * egg_zeitgeist_data_source_set_enabled: + * @instance: A #EggZeitgeistDataSource. + * @value: Whether data source is enabled + * + * Sets element 6 of the #EggDBusStructure wrapped by #EggZeitgeistDataSource. + */ +void +egg_zeitgeist_data_source_set_enabled (EggZeitgeistDataSource *instance, gboolean value) +{ + g_return_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE (instance)); + + egg_dbus_structure_set_element (EGG_DBUS_STRUCTURE (instance), + 6, value, + -1); +} + + +/** + * egg_zeitgeist_data_source_new: + * @unique_id: Unique ID of the data source + * @name: Name of the data source + * @description: Description of the data source + * @event_templates: Event templates for this data source + * @running: Whether data source is currently running + * @last_seen: Timestamp of last action of this data source + * @enabled: Whether data source is enabled + * + * Constructs a new #EggZeitgeistDataSource. + * + * Returns: A #EggZeitgeistDataSource. + */ +EggZeitgeistDataSource * +egg_zeitgeist_data_source_new (const gchar *unique_id, const gchar *name, const gchar *description, EggDBusArraySeq *event_templates, gboolean running, gint64 last_seen, gboolean enabled) +{ + GValue *values; + EggZeitgeistDataSource *structure; + + values = g_new0 (GValue, 7); + + g_value_init (&(values[0]), G_TYPE_STRING); + g_value_set_string (&(values[0]), unique_id); + + g_value_init (&(values[1]), G_TYPE_STRING); + g_value_set_string (&(values[1]), name); + + g_value_init (&(values[2]), G_TYPE_STRING); + g_value_set_string (&(values[2]), description); + + g_value_init (&(values[3]), EGG_DBUS_TYPE_ARRAY_SEQ); + g_value_set_object (&(values[3]), event_templates); + + g_value_init (&(values[4]), G_TYPE_BOOLEAN); + g_value_set_boolean (&(values[4]), running); + + g_value_init (&(values[5]), G_TYPE_INT64); + g_value_set_int64 (&(values[5]), last_seen); + + g_value_init (&(values[6]), G_TYPE_BOOLEAN); + g_value_set_boolean (&(values[6]), enabled); + + structure = EGG_ZEITGEIST_DATA_SOURCE (g_object_new (EGG_ZEITGEIST_TYPE_DATA_SOURCE, "signature", "(sssa(asaasay)bxb)", "elements", values, NULL)); + + return structure; +} + diff -Nru libzeitgeist-0.2.2/src/eggzeitgeistdatasource.h libzeitgeist-0.2.8/src/eggzeitgeistdatasource.h --- libzeitgeist-0.2.2/src/eggzeitgeistdatasource.h 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/src/eggzeitgeistdatasource.h 2010-08-24 13:18:42.000000000 +0100 @@ -0,0 +1,74 @@ + +/* File: eggzeitgeistdatasource.h + * + * Generated by eggdbus-binding-tool 0.6. Do not edit. + */ + +#ifndef __EGG_ZEITGEIST_DATA_SOURCE_H +#define __EGG_ZEITGEIST_DATA_SOURCE_H + +#include +#include +#include "eggzeitgeistbindingstypes.h" + +G_BEGIN_DECLS + +#define EGG_ZEITGEIST_TYPE_DATA_SOURCE (egg_zeitgeist_data_source_get_type()) +#define EGG_ZEITGEIST_DATA_SOURCE(o) (EGG_DBUS_STRUCTURE_TYPE_CHECK_INSTANCE_CAST ((o), "(sssa(asaasay)bxb)", EggZeitgeistDataSource)) +#define EGG_ZEITGEIST_DATA_SOURCE_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), EGG_ZEITGEIST_TYPE_DATA_SOURCE, EggZeitgeistDataSourceClass)) +#define EGG_ZEITGEIST_DATA_SOURCE_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), EGG_ZEITGEIST_TYPE_DATA_SOURCE, EggZeitgeistDataSourceClass)) +#define EGG_ZEITGEIST_IS_DATA_SOURCE(o) (EGG_DBUS_STRUCTURE_TYPE_CHECK_INSTANCE_TYPE ((o), "(sssa(asaasay)bxb)", EggZeitgeistDataSource)) +#define EGG_ZEITGEIST_IS_DATA_SOURCE_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), EGG_ZEITGEIST_TYPE_DATA_SOURCE)) + +#if 0 +typedef struct _EggZeitgeistDataSource EggZeitgeistDataSource; +#endif +typedef struct _EggZeitgeistDataSourceClass EggZeitgeistDataSourceClass; + +struct _EggZeitgeistDataSource +{ + EggDBusStructure parent_instance; +}; + +struct _EggZeitgeistDataSourceClass +{ + EggDBusStructureClass parent_class; +}; + +GType egg_zeitgeist_data_source_get_type (void) G_GNUC_CONST; + +EggZeitgeistDataSource *egg_zeitgeist_data_source_new (const gchar *unique_id, const gchar *name, const gchar *description, EggDBusArraySeq *event_templates, gboolean running, gint64 last_seen, gboolean enabled); + +const gchar * egg_zeitgeist_data_source_get_unique_id (EggZeitgeistDataSource *instance); + +const gchar * egg_zeitgeist_data_source_get_name (EggZeitgeistDataSource *instance); + +const gchar * egg_zeitgeist_data_source_get_description (EggZeitgeistDataSource *instance); + +EggDBusArraySeq * egg_zeitgeist_data_source_get_event_templates (EggZeitgeistDataSource *instance); + +gboolean egg_zeitgeist_data_source_get_running (EggZeitgeistDataSource *instance); + +gint64 egg_zeitgeist_data_source_get_last_seen (EggZeitgeistDataSource *instance); + +gboolean egg_zeitgeist_data_source_get_enabled (EggZeitgeistDataSource *instance); + + +void egg_zeitgeist_data_source_set_unique_id (EggZeitgeistDataSource *instance, const gchar *value); + +void egg_zeitgeist_data_source_set_name (EggZeitgeistDataSource *instance, const gchar *value); + +void egg_zeitgeist_data_source_set_description (EggZeitgeistDataSource *instance, const gchar *value); + +void egg_zeitgeist_data_source_set_event_templates (EggZeitgeistDataSource *instance, EggDBusArraySeq *value); + +void egg_zeitgeist_data_source_set_running (EggZeitgeistDataSource *instance, gboolean value); + +void egg_zeitgeist_data_source_set_last_seen (EggZeitgeistDataSource *instance, gint64 value); + +void egg_zeitgeist_data_source_set_enabled (EggZeitgeistDataSource *instance, gboolean value); + + +G_END_DECLS + +#endif /* __EGG_ZEITGEIST_DATA_SOURCE_H */ diff -Nru libzeitgeist-0.2.2/src/eggzeitgeistdatasourceregistry.c libzeitgeist-0.2.8/src/eggzeitgeistdatasourceregistry.c --- libzeitgeist-0.2.2/src/eggzeitgeistdatasourceregistry.c 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/src/eggzeitgeistdatasourceregistry.c 2010-08-24 13:18:42.000000000 +0100 @@ -0,0 +1,1410 @@ + +/* File: eggzeitgeistdatasourceregistry.c + * + * Generated by eggdbus-binding-tool 0.6. Do not edit. + */ + +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif +#include +#include +#include "eggzeitgeistbindingstypes.h" +#include "eggzeitgeistbindings.h" +#include "eggzeitgeistbindingsmarshal.h" +#include "eggzeitgeistdatasourceregistry.h" + +/** + * SECTION:eggzeitgeistdatasourceregistry + * @title: EggZeitgeistDataSourceRegistry + * @short_description: FIXME: not documented. + * + * An extension which allows you to registers data sources in a central repository. This allows for example to disable some data sources. + */ + +#define _EGG_ZEITGEIST_TYPE_DATA_SOURCE_REGISTRY_PROXY (_egg_zeitgeist_data_source_registry_proxy_get_type()) +#define _EGG_ZEITGEIST_DATA_SOURCE_REGISTRY_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), _EGG_ZEITGEIST_TYPE_DATA_SOURCE_REGISTRY_PROXY, _EggZeitgeistDataSourceRegistryProxy)) +#define _EGG_ZEITGEIST_DATA_SOURCE_REGISTRY_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), _EGG_ZEITGEIST_TYPE_DATA_SOURCE_REGISTRY_PROXY, _EggZeitgeistDataSourceRegistryProxy)) +#define _EGG_ZEITGEIST_DATA_SOURCE_REGISTRY_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), _EGG_ZEITGEIST_TYPE_DATA_SOURCE_REGISTRY_PROXY, _EggZeitgeistDataSourceRegistryProxy)) +#define _EGG_ZEITGEIST_IS_DATA_SOURCE_REGISTRY_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), _EGG_ZEITGEIST_TYPE_DATA_SOURCE_REGISTRY_PROXY)) +#define _EGG_ZEITGEIST_IS_DATA_SOURCE_REGISTRY_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), _EGG_ZEITGEIST_TYPE_DATA_SOURCE_REGISTRY_PROXY)) + +typedef struct _EggZeitgeistDataSourceRegistryProxy _EggZeitgeistDataSourceRegistryProxy; +typedef struct _EggZeitgeistDataSourceRegistryProxyClass _EggZeitgeistDataSourceRegistryProxyClass; + +struct _EggZeitgeistDataSourceRegistryProxy +{ + EggDBusInterfaceProxy parent_instance; + + EggDBusObjectProxy *object_proxy; +}; + +struct _EggZeitgeistDataSourceRegistryProxyClass +{ + EggDBusInterfaceProxyClass parent_class; +}; + +GType _egg_zeitgeist_data_source_registry_proxy_get_type (void) G_GNUC_CONST; + +static void +_proxy_interface_init (EggZeitgeistDataSourceRegistryIface *iface) +{ +} + +G_DEFINE_TYPE_WITH_CODE (_EggZeitgeistDataSourceRegistryProxy, _egg_zeitgeist_data_source_registry_proxy, EGG_DBUS_TYPE_INTERFACE_PROXY, + G_IMPLEMENT_INTERFACE (EGG_ZEITGEIST_TYPE_DATA_SOURCE_REGISTRY, _proxy_interface_init)); + +static void +_egg_zeitgeist_data_source_registry_proxy_init (_EggZeitgeistDataSourceRegistryProxy *interface_proxy) +{ +} + +static void +_egg_zeitgeist_data_source_registry_proxy_object_proxy_finalized (gpointer data, + GObject *where_the_object_was) +{ + _EggZeitgeistDataSourceRegistryProxy *interface_proxy; + + interface_proxy = _EGG_ZEITGEIST_DATA_SOURCE_REGISTRY_PROXY (data); + + g_warning ("object_proxy for _EggZeitgeistDataSourceRegistryProxy finalized but interface proxy still alive; you are not supposed to be reffing instances derived from EggDBusInterfaceProxy"); + + interface_proxy->object_proxy = NULL; +} + +static void +_egg_zeitgeist_data_source_registry_proxy_finalize (GObject *object) +{ + _EggZeitgeistDataSourceRegistryProxy *interface_proxy; + + interface_proxy = _EGG_ZEITGEIST_DATA_SOURCE_REGISTRY_PROXY (object); + + if (interface_proxy->object_proxy != NULL) + g_object_weak_unref (G_OBJECT (interface_proxy->object_proxy), _egg_zeitgeist_data_source_registry_proxy_object_proxy_finalized, interface_proxy); + + G_OBJECT_CLASS (_egg_zeitgeist_data_source_registry_proxy_parent_class)->finalize (object); +} + +static EggDBusObjectProxy * +_egg_zeitgeist_data_source_registry_proxy_get_object_proxy (EggDBusInterfaceProxy *proxy) +{ + _EggZeitgeistDataSourceRegistryProxy *interface_proxy; + + interface_proxy = _EGG_ZEITGEIST_DATA_SOURCE_REGISTRY_PROXY (proxy); + + return interface_proxy->object_proxy; +} + +static EggDBusInterfaceIface * +_egg_zeitgeist_data_source_registry_proxy_get_interface_iface (EggDBusInterfaceProxy *proxy) +{ + return (EggDBusInterfaceIface *) (EGG_ZEITGEIST_DATA_SOURCE_REGISTRY_GET_IFACE (proxy)); +} + +static void +_egg_zeitgeist_data_source_registry_proxy_class_init (_EggZeitgeistDataSourceRegistryProxyClass *klass) +{ + GObjectClass *gobject_class = G_OBJECT_CLASS (klass); + EggDBusInterfaceProxyClass *interface_proxy_class = EGG_DBUS_INTERFACE_PROXY_CLASS (klass); + + gobject_class->get_property = G_OBJECT_CLASS(g_type_class_peek_parent (klass))->get_property; + gobject_class->set_property = G_OBJECT_CLASS(g_type_class_peek_parent (klass))->set_property; + gobject_class->finalize = _egg_zeitgeist_data_source_registry_proxy_finalize; + + interface_proxy_class->get_object_proxy = _egg_zeitgeist_data_source_registry_proxy_get_object_proxy; + interface_proxy_class->get_interface_iface = _egg_zeitgeist_data_source_registry_proxy_get_interface_iface; + +}; + +static EggDBusInterfaceProxy * +_egg_zeitgeist_data_source_registry_proxy_new (EggDBusObjectProxy *object_proxy) +{ + _EggZeitgeistDataSourceRegistryProxy *interface_proxy; + + interface_proxy = _EGG_ZEITGEIST_DATA_SOURCE_REGISTRY_PROXY (g_object_new (_EGG_ZEITGEIST_TYPE_DATA_SOURCE_REGISTRY_PROXY, NULL)); + + interface_proxy->object_proxy = object_proxy; + g_object_weak_ref (G_OBJECT (object_proxy), _egg_zeitgeist_data_source_registry_proxy_object_proxy_finalized, interface_proxy); + + return EGG_DBUS_INTERFACE_PROXY (interface_proxy); +}; + +enum +{ + DATA_SOURCE_REGISTERED_SIGNAL, + DATA_SOURCE_DISCONNECTED_SIGNAL, + DATA_SOURCE_ENABLED_SIGNAL, + __LAST_SIGNAL +}; + +static guint signals[__LAST_SIGNAL] = {0}; + +static const EggDBusInterfaceArgInfo arg_info_method_in_register_data_source[] = +{ + { + "unique_id", + "s", + NULL, + }, + { + "name", + "s", + NULL, + }, + { + "description", + "s", + NULL, + }, + { + "event_templates", + "a(asaasay)", + NULL, + } +}; + +static const EggDBusInterfaceArgInfo arg_info_method_out_register_data_source[] = +{ + { + "result", + "b", + NULL, + } +}; + +static const EggDBusInterfaceArgInfo arg_info_method_in_set_data_source_enabled[] = +{ + { + "unique_id", + "s", + NULL, + }, + { + "enabled", + "b", + NULL, + } +}; + +static const EggDBusInterfaceArgInfo arg_info_method_out_get_data_sources[] = +{ + { + "arg_0", + "a(sssa(asaasay)bxb)", + NULL, + } +}; + +static const EggDBusInterfaceMethodInfo method_info[] = +{ + { + "RegisterDataSource", + "sssa(asaasay)", + 4, + arg_info_method_in_register_data_source, + "b", + 1, + arg_info_method_out_register_data_source, + NULL + }, + { + "SetDataSourceEnabled", + "sb", + 2, + arg_info_method_in_set_data_source_enabled, + "", + 0, + NULL, + NULL + }, + { + "GetDataSources", + "", + 0, + NULL, + "a(sssa(asaasay)bxb)", + 1, + arg_info_method_out_get_data_sources, + NULL + } +}; + +static const EggDBusInterfaceArgInfo arg_info_signal_data_source_registered[] = +{ + { + "arg_0", + "(sssa(asaasay)bxb)", + NULL, + } +}; + +static const EggDBusInterfaceArgInfo arg_info_signal_data_source_disconnected[] = +{ + { + "arg_0", + "(sssa(asaasay)bxb)", + NULL, + } +}; + +static const EggDBusInterfaceArgInfo arg_info_signal_data_source_enabled[] = +{ + { + "unique_id", + "s", + NULL, + }, + { + "enabled", + "b", + NULL, + } +}; + +static const EggDBusInterfaceSignalInfo signal_info[] = +{ + { + "DataSourceRegistered", + "data-source-registered", + "(sssa(asaasay)bxb)", + 1, + arg_info_signal_data_source_registered, + NULL + }, + { + "DataSourceDisconnected", + "data-source-disconnected", + "(sssa(asaasay)bxb)", + 1, + arg_info_signal_data_source_disconnected, + NULL + }, + { + "DataSourceEnabled", + "data-source-enabled", + "sb", + 2, + arg_info_signal_data_source_enabled, + NULL + } +}; + +static const EggDBusInterfaceInfo interface_info = +{ + "org.gnome.zeitgeist.DataSourceRegistry", + 3, + method_info, + 3, + signal_info, + 0, + NULL, + NULL, +}; + +static const EggDBusInterfaceInfo * +get_interface_info (void) +{ + return &interface_info; +} + +static void handle_message (EggDBusInterface *interface, + EggDBusMessage *message); + +static void +base_init (gpointer g_iface) +{ + static gboolean is_initialized = FALSE; + + if (!is_initialized) + { + EggDBusInterfaceIface *gdbus_iface_vtable = (EggDBusInterfaceIface *) g_iface; + + egg_zeitgeist_bindings_get_error_domain_types (); + + gdbus_iface_vtable->get_interface_info = get_interface_info; + gdbus_iface_vtable->handle_message = handle_message; + gdbus_iface_vtable->get_interface_proxy = _egg_zeitgeist_data_source_registry_proxy_new; + + + /** + * EggZeitgeistDataSourceRegistry::data-source-registered: + * @instance: A #EggZeitgeistDataSourceRegistry. + * @arg_0: FIXME: not documented. + * + * FIXME: not documented. + */ + signals[DATA_SOURCE_REGISTERED_SIGNAL] = + g_signal_new ("data-source-registered", + G_TYPE_FROM_INTERFACE (g_iface), + G_SIGNAL_RUN_LAST, + 0, /* class offset */ + NULL, /* accumulator */ + NULL, /* accumulator data */ + _egg_zeitgeist_cclosure_marshal_VOID__OBJECT, + G_TYPE_NONE, + 1, + EGG_ZEITGEIST_TYPE_DATA_SOURCE); + + /** + * EggZeitgeistDataSourceRegistry::data-source-disconnected: + * @instance: A #EggZeitgeistDataSourceRegistry. + * @arg_0: FIXME: not documented. + * + * FIXME: not documented. + */ + signals[DATA_SOURCE_DISCONNECTED_SIGNAL] = + g_signal_new ("data-source-disconnected", + G_TYPE_FROM_INTERFACE (g_iface), + G_SIGNAL_RUN_LAST, + 0, /* class offset */ + NULL, /* accumulator */ + NULL, /* accumulator data */ + _egg_zeitgeist_cclosure_marshal_VOID__OBJECT, + G_TYPE_NONE, + 1, + EGG_ZEITGEIST_TYPE_DATA_SOURCE); + + /** + * EggZeitgeistDataSourceRegistry::data-source-enabled: + * @instance: A #EggZeitgeistDataSourceRegistry. + * @unique_id: FIXME: not documented. + * @enabled: FIXME: not documented. + * + * FIXME: not documented. + */ + signals[DATA_SOURCE_ENABLED_SIGNAL] = + g_signal_new ("data-source-enabled", + G_TYPE_FROM_INTERFACE (g_iface), + G_SIGNAL_RUN_LAST, + 0, /* class offset */ + NULL, /* accumulator */ + NULL, /* accumulator data */ + _egg_zeitgeist_cclosure_marshal_VOID__STRING_BOOLEAN, + G_TYPE_NONE, + 2, + G_TYPE_STRING, + G_TYPE_BOOLEAN); + + + is_initialized = TRUE; + } +} + +GType +egg_zeitgeist_data_source_registry_get_type (void) +{ + static GType iface_type = 0; + + if (iface_type == 0) + { + static const GTypeInfo info = + { + sizeof (EggZeitgeistDataSourceRegistryIface), + base_init, /* base_init */ + NULL, /* base_finalize */ + NULL, /* class_init */ + NULL, /* class_finalize */ + NULL, /* class_data */ + 0, /* instance_size */ + 0, /* n_preallocs */ + NULL, /* instance_init */ + NULL /* value_table */ + }; + + iface_type = g_type_register_static (G_TYPE_INTERFACE, "EggZeitgeistDataSourceRegistry", &info, 0); + + g_type_interface_add_prerequisite (iface_type, G_TYPE_OBJECT); + } + + return iface_type; +} + +static void +generic_async_callback (GObject *source_object, + GAsyncResult *res, + gpointer user_data) +{ + GSimpleAsyncResult *simple = G_SIMPLE_ASYNC_RESULT (user_data); + EggDBusMessage *reply; + GError *error; + + error = NULL; + reply = egg_dbus_connection_send_message_with_reply_finish (EGG_DBUS_CONNECTION (source_object), + res, + &error); + if (reply == NULL) + { + g_simple_async_result_set_from_error (simple, error); + g_error_free (error); + } + else + { + g_simple_async_result_set_op_res_gpointer (simple, reply, (GDestroyNotify) g_object_unref); + } + + g_simple_async_result_complete (simple); + g_object_unref (simple); +} + +/** + * egg_zeitgeist_data_source_registry_register_data_source: + * @instance: A #EggZeitgeistDataSourceRegistry. + * @call_flags: Flags from #EggDBusCallFlags detailing how the method should be invoked. + * @unique_id: FIXME: not documented. + * @name: FIXME: not documented. + * @description: FIXME: not documented. + * @event_templates: FIXME: not documented. + * @cancellable: A #GCancellable or %NULL. + * @callback: Callback to invoke when the reply is ready. + * @user_data: User data to pass to @callback. + * + * FIXME: not documented. + * + * This function asynchronously invokes the RegisterDataSource() method + * on the org.gnome.zeitgeist.DataSourceRegistry interface + * on the object represented by @instance. + * When the reply is ready, @callback will be called (on the main thread). + * You can then call egg_zeitgeist_data_source_registry_register_data_source_finish() to get the result. + * See egg_zeitgeist_data_source_registry_register_data_source_sync() for the synchronous version of this function. + * + * Returns: A pending call id (never zero) that can be used with egg_dbus_connection_pending_call_cancel() or egg_dbus_connection_pending_call_block(). + */ +guint +egg_zeitgeist_data_source_registry_register_data_source ( + EggZeitgeistDataSourceRegistry *instance, + EggDBusCallFlags call_flags, + const gchar *_unique_id, + const gchar *_name, + const gchar *_description, + EggDBusArraySeq *_event_templates, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + EggDBusObjectProxy *object_proxy; + EggDBusMessage *message; + GSimpleAsyncResult *simple; + GError *error; + guint pending_call_id; + + g_return_val_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE_REGISTRY (instance) && EGG_DBUS_IS_INTERFACE_PROXY (instance), 0); + + simple = g_simple_async_result_new (G_OBJECT (instance), + callback, + user_data, + egg_zeitgeist_data_source_registry_register_data_source); + + object_proxy = egg_dbus_interface_proxy_get_object_proxy (EGG_DBUS_INTERFACE_PROXY (instance)); + + message = egg_dbus_connection_new_message_for_method_call (egg_dbus_object_proxy_get_connection (object_proxy), + NULL, + egg_dbus_object_proxy_get_name (object_proxy), + egg_dbus_object_proxy_get_object_path (object_proxy), + "org.gnome.zeitgeist.DataSourceRegistry", + "RegisterDataSource"); + + error = NULL; + + if (!egg_dbus_message_append_string (message, _unique_id, &error)) + goto out; + if (!egg_dbus_message_append_string (message, _name, &error)) + goto out; + if (!egg_dbus_message_append_string (message, _description, &error)) + goto out; + if (!egg_dbus_message_append_seq (message, _event_templates, "(asaasay)", &error)) + goto out; + + pending_call_id = egg_dbus_connection_send_message_with_reply (egg_dbus_object_proxy_get_connection (object_proxy), call_flags, message, egg_zeitgeist_bindings_get_error_domain_types (), cancellable, generic_async_callback, simple); + + g_object_unref (message); + return pending_call_id; +out: + g_simple_async_result_set_from_error (simple, error); + g_simple_async_result_complete (simple); + g_object_unref (simple); + g_error_free (error); + g_object_unref (message); + return 0; +} + +/** + * egg_zeitgeist_data_source_registry_register_data_source_finish: + * @instance: A #EggZeitgeistDataSourceRegistry. + * @out_result: FIXME: not documented. + * @res: A #GAsyncResult obtained from the #GAsyncReadyCallback function passed to egg_zeitgeist_data_source_registry_register_data_source(). + * @error: Return location for error. + * + * Finishes an asynchronous method invocation started with egg_zeitgeist_data_source_registry_register_data_source(). + * + * Returns: %TRUE if the method call succeeded, %FALSE if @error is set. + */ +gboolean +egg_zeitgeist_data_source_registry_register_data_source_finish ( + EggZeitgeistDataSourceRegistry *instance, + gboolean *_out_result, + GAsyncResult *res, + GError **error) +{ + GSimpleAsyncResult *simple = G_SIMPLE_ASYNC_RESULT (res); + EggDBusMessage *reply; + gboolean ret; + + g_return_val_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE_REGISTRY (instance) && EGG_DBUS_IS_INTERFACE_PROXY (instance), FALSE); + + g_warn_if_fail (g_simple_async_result_get_source_tag (simple) == egg_zeitgeist_data_source_registry_register_data_source); + + ret = FALSE; + reply = NULL; + + if (g_simple_async_result_propagate_error (simple, error)) + goto out; + + reply = EGG_DBUS_MESSAGE (g_object_ref (g_simple_async_result_get_op_res_gpointer (simple))); + + if (reply == NULL) + { + g_simple_async_result_propagate_error (simple, error); + goto out; + } + + if (!egg_dbus_message_extract_boolean (reply, _out_result, error)) + goto out; + + ret = TRUE; + +out: + if (reply != NULL) + g_object_unref (reply); + return ret; +} + +/** + * egg_zeitgeist_data_source_registry_register_data_source_sync: + * @instance: A #EggZeitgeistDataSourceRegistry. + * @call_flags: Flags from #EggDBusCallFlags detailing how the method should be invoked. + * @unique_id: FIXME: not documented. + * @name: FIXME: not documented. + * @description: FIXME: not documented. + * @event_templates: FIXME: not documented. + * @out_result: FIXME: not documented. + * @cancellable: A #GCancellable or %NULL. + * @error: Return location for error. + * + * FIXME: not documented. + * + * This function synchronously invokes the RegisterDataSource() method on the org.gnome.zeitgeist.DataSourceRegistry interface on the object represented by @instance. + * See egg_zeitgeist_data_source_registry_register_data_source() for the asynchronous version of this function. + * + * Returns: %TRUE if the method call succeeded, %FALSE if @error is set. + */ +gboolean +egg_zeitgeist_data_source_registry_register_data_source_sync ( + EggZeitgeistDataSourceRegistry *instance, + EggDBusCallFlags call_flags, + const gchar *_unique_id, + const gchar *_name, + const gchar *_description, + EggDBusArraySeq *_event_templates, + gboolean *_out_result, + GCancellable *cancellable, + GError **error) +{ + EggDBusObjectProxy *object_proxy; + EggDBusMessage *message; + EggDBusMessage *reply; + gboolean ret; + + g_return_val_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE_REGISTRY (instance) && EGG_DBUS_IS_INTERFACE_PROXY (instance), FALSE); + + ret = FALSE; reply = NULL; + object_proxy = egg_dbus_interface_proxy_get_object_proxy (EGG_DBUS_INTERFACE_PROXY (instance)); + + message = egg_dbus_connection_new_message_for_method_call (egg_dbus_object_proxy_get_connection (object_proxy), + NULL, + egg_dbus_object_proxy_get_name (object_proxy), + egg_dbus_object_proxy_get_object_path (object_proxy), + "org.gnome.zeitgeist.DataSourceRegistry", + "RegisterDataSource"); + + if (!egg_dbus_message_append_string (message, _unique_id, error)) + goto out; + if (!egg_dbus_message_append_string (message, _name, error)) + goto out; + if (!egg_dbus_message_append_string (message, _description, error)) + goto out; + if (!egg_dbus_message_append_seq (message, _event_templates, "(asaasay)", error)) + goto out; + + reply = egg_dbus_connection_send_message_with_reply_sync (egg_dbus_object_proxy_get_connection (object_proxy), call_flags, message, egg_zeitgeist_bindings_get_error_domain_types (), cancellable, error); + if (reply == NULL) + goto out; + + if (!egg_dbus_message_extract_boolean (reply, _out_result, error)) + goto out; + + ret = TRUE; + +out: + if (message != NULL) + g_object_unref (message); + if (reply != NULL) + g_object_unref (reply); + return ret; +} + +/** + * egg_zeitgeist_data_source_registry_set_data_source_enabled: + * @instance: A #EggZeitgeistDataSourceRegistry. + * @call_flags: Flags from #EggDBusCallFlags detailing how the method should be invoked. + * @unique_id: FIXME: not documented. + * @enabled: FIXME: not documented. + * @cancellable: A #GCancellable or %NULL. + * @callback: Callback to invoke when the reply is ready. + * @user_data: User data to pass to @callback. + * + * FIXME: not documented. + * + * This function asynchronously invokes the SetDataSourceEnabled() method + * on the org.gnome.zeitgeist.DataSourceRegistry interface + * on the object represented by @instance. + * When the reply is ready, @callback will be called (on the main thread). + * You can then call egg_zeitgeist_data_source_registry_set_data_source_enabled_finish() to get the result. + * See egg_zeitgeist_data_source_registry_set_data_source_enabled_sync() for the synchronous version of this function. + * + * Returns: A pending call id (never zero) that can be used with egg_dbus_connection_pending_call_cancel() or egg_dbus_connection_pending_call_block(). + */ +guint +egg_zeitgeist_data_source_registry_set_data_source_enabled ( + EggZeitgeistDataSourceRegistry *instance, + EggDBusCallFlags call_flags, + const gchar *_unique_id, + gboolean _enabled, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + EggDBusObjectProxy *object_proxy; + EggDBusMessage *message; + GSimpleAsyncResult *simple; + GError *error; + guint pending_call_id; + + g_return_val_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE_REGISTRY (instance) && EGG_DBUS_IS_INTERFACE_PROXY (instance), 0); + + simple = g_simple_async_result_new (G_OBJECT (instance), + callback, + user_data, + egg_zeitgeist_data_source_registry_set_data_source_enabled); + + object_proxy = egg_dbus_interface_proxy_get_object_proxy (EGG_DBUS_INTERFACE_PROXY (instance)); + + message = egg_dbus_connection_new_message_for_method_call (egg_dbus_object_proxy_get_connection (object_proxy), + NULL, + egg_dbus_object_proxy_get_name (object_proxy), + egg_dbus_object_proxy_get_object_path (object_proxy), + "org.gnome.zeitgeist.DataSourceRegistry", + "SetDataSourceEnabled"); + + error = NULL; + + if (!egg_dbus_message_append_string (message, _unique_id, &error)) + goto out; + if (!egg_dbus_message_append_boolean (message, _enabled, &error)) + goto out; + + pending_call_id = egg_dbus_connection_send_message_with_reply (egg_dbus_object_proxy_get_connection (object_proxy), call_flags, message, egg_zeitgeist_bindings_get_error_domain_types (), cancellable, generic_async_callback, simple); + + g_object_unref (message); + return pending_call_id; +out: + g_simple_async_result_set_from_error (simple, error); + g_simple_async_result_complete (simple); + g_object_unref (simple); + g_error_free (error); + g_object_unref (message); + return 0; +} + +/** + * egg_zeitgeist_data_source_registry_set_data_source_enabled_finish: + * @instance: A #EggZeitgeistDataSourceRegistry. + * @res: A #GAsyncResult obtained from the #GAsyncReadyCallback function passed to egg_zeitgeist_data_source_registry_set_data_source_enabled(). + * @error: Return location for error. + * + * Finishes an asynchronous method invocation started with egg_zeitgeist_data_source_registry_set_data_source_enabled(). + * + * Returns: %TRUE if the method call succeeded, %FALSE if @error is set. + */ +gboolean +egg_zeitgeist_data_source_registry_set_data_source_enabled_finish ( + EggZeitgeistDataSourceRegistry *instance, + GAsyncResult *res, + GError **error) +{ + GSimpleAsyncResult *simple = G_SIMPLE_ASYNC_RESULT (res); + EggDBusMessage *reply; + gboolean ret; + + g_return_val_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE_REGISTRY (instance) && EGG_DBUS_IS_INTERFACE_PROXY (instance), FALSE); + + g_warn_if_fail (g_simple_async_result_get_source_tag (simple) == egg_zeitgeist_data_source_registry_set_data_source_enabled); + + ret = FALSE; + reply = NULL; + + if (g_simple_async_result_propagate_error (simple, error)) + goto out; + + reply = EGG_DBUS_MESSAGE (g_object_ref (g_simple_async_result_get_op_res_gpointer (simple))); + + if (reply == NULL) + { + g_simple_async_result_propagate_error (simple, error); + goto out; + } + + + ret = TRUE; + +out: + if (reply != NULL) + g_object_unref (reply); + return ret; +} + +/** + * egg_zeitgeist_data_source_registry_set_data_source_enabled_sync: + * @instance: A #EggZeitgeistDataSourceRegistry. + * @call_flags: Flags from #EggDBusCallFlags detailing how the method should be invoked. + * @unique_id: FIXME: not documented. + * @enabled: FIXME: not documented. + * @cancellable: A #GCancellable or %NULL. + * @error: Return location for error. + * + * FIXME: not documented. + * + * This function synchronously invokes the SetDataSourceEnabled() method on the org.gnome.zeitgeist.DataSourceRegistry interface on the object represented by @instance. + * See egg_zeitgeist_data_source_registry_set_data_source_enabled() for the asynchronous version of this function. + * + * Returns: %TRUE if the method call succeeded, %FALSE if @error is set. + */ +gboolean +egg_zeitgeist_data_source_registry_set_data_source_enabled_sync ( + EggZeitgeistDataSourceRegistry *instance, + EggDBusCallFlags call_flags, + const gchar *_unique_id, + gboolean _enabled, + GCancellable *cancellable, + GError **error) +{ + EggDBusObjectProxy *object_proxy; + EggDBusMessage *message; + EggDBusMessage *reply; + gboolean ret; + + g_return_val_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE_REGISTRY (instance) && EGG_DBUS_IS_INTERFACE_PROXY (instance), FALSE); + + ret = FALSE; reply = NULL; + object_proxy = egg_dbus_interface_proxy_get_object_proxy (EGG_DBUS_INTERFACE_PROXY (instance)); + + message = egg_dbus_connection_new_message_for_method_call (egg_dbus_object_proxy_get_connection (object_proxy), + NULL, + egg_dbus_object_proxy_get_name (object_proxy), + egg_dbus_object_proxy_get_object_path (object_proxy), + "org.gnome.zeitgeist.DataSourceRegistry", + "SetDataSourceEnabled"); + + if (!egg_dbus_message_append_string (message, _unique_id, error)) + goto out; + if (!egg_dbus_message_append_boolean (message, _enabled, error)) + goto out; + + reply = egg_dbus_connection_send_message_with_reply_sync (egg_dbus_object_proxy_get_connection (object_proxy), call_flags, message, egg_zeitgeist_bindings_get_error_domain_types (), cancellable, error); + if (reply == NULL) + goto out; + + + ret = TRUE; + +out: + if (message != NULL) + g_object_unref (message); + if (reply != NULL) + g_object_unref (reply); + return ret; +} + +/** + * egg_zeitgeist_data_source_registry_get_data_sources: + * @instance: A #EggZeitgeistDataSourceRegistry. + * @call_flags: Flags from #EggDBusCallFlags detailing how the method should be invoked. + * @cancellable: A #GCancellable or %NULL. + * @callback: Callback to invoke when the reply is ready. + * @user_data: User data to pass to @callback. + * + * FIXME: not documented. + * + * This function asynchronously invokes the GetDataSources() method + * on the org.gnome.zeitgeist.DataSourceRegistry interface + * on the object represented by @instance. + * When the reply is ready, @callback will be called (on the main thread). + * You can then call egg_zeitgeist_data_source_registry_get_data_sources_finish() to get the result. + * See egg_zeitgeist_data_source_registry_get_data_sources_sync() for the synchronous version of this function. + * + * Returns: A pending call id (never zero) that can be used with egg_dbus_connection_pending_call_cancel() or egg_dbus_connection_pending_call_block(). + */ +guint +egg_zeitgeist_data_source_registry_get_data_sources ( + EggZeitgeistDataSourceRegistry *instance, + EggDBusCallFlags call_flags, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + EggDBusObjectProxy *object_proxy; + EggDBusMessage *message; + GSimpleAsyncResult *simple; + GError *error; + guint pending_call_id; + + g_return_val_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE_REGISTRY (instance) && EGG_DBUS_IS_INTERFACE_PROXY (instance), 0); + + simple = g_simple_async_result_new (G_OBJECT (instance), + callback, + user_data, + egg_zeitgeist_data_source_registry_get_data_sources); + + object_proxy = egg_dbus_interface_proxy_get_object_proxy (EGG_DBUS_INTERFACE_PROXY (instance)); + + message = egg_dbus_connection_new_message_for_method_call (egg_dbus_object_proxy_get_connection (object_proxy), + NULL, + egg_dbus_object_proxy_get_name (object_proxy), + egg_dbus_object_proxy_get_object_path (object_proxy), + "org.gnome.zeitgeist.DataSourceRegistry", + "GetDataSources"); + + error = NULL; + + + pending_call_id = egg_dbus_connection_send_message_with_reply (egg_dbus_object_proxy_get_connection (object_proxy), call_flags, message, egg_zeitgeist_bindings_get_error_domain_types (), cancellable, generic_async_callback, simple); + + g_object_unref (message); + return pending_call_id; +} + +/** + * egg_zeitgeist_data_source_registry_get_data_sources_finish: + * @instance: A #EggZeitgeistDataSourceRegistry. + * @out_arg_0: FIXME: not documented. Free with g_object_unref(). + * @res: A #GAsyncResult obtained from the #GAsyncReadyCallback function passed to egg_zeitgeist_data_source_registry_get_data_sources(). + * @error: Return location for error. + * + * Finishes an asynchronous method invocation started with egg_zeitgeist_data_source_registry_get_data_sources(). + * + * Returns: %TRUE if the method call succeeded, %FALSE if @error is set. + */ +gboolean +egg_zeitgeist_data_source_registry_get_data_sources_finish ( + EggZeitgeistDataSourceRegistry *instance, + EggDBusArraySeq **_out_arg_0, + GAsyncResult *res, + GError **error) +{ + GSimpleAsyncResult *simple = G_SIMPLE_ASYNC_RESULT (res); + EggDBusMessage *reply; + gboolean ret; + + g_return_val_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE_REGISTRY (instance) && EGG_DBUS_IS_INTERFACE_PROXY (instance), FALSE); + + g_warn_if_fail (g_simple_async_result_get_source_tag (simple) == egg_zeitgeist_data_source_registry_get_data_sources); + + ret = FALSE; + reply = NULL; + + if (g_simple_async_result_propagate_error (simple, error)) + goto out; + + reply = EGG_DBUS_MESSAGE (g_object_ref (g_simple_async_result_get_op_res_gpointer (simple))); + + if (reply == NULL) + { + g_simple_async_result_propagate_error (simple, error); + goto out; + } + + if (!egg_dbus_message_extract_seq (reply, _out_arg_0, error)) + goto out; + + ret = TRUE; + +out: + if (reply != NULL) + g_object_unref (reply); + return ret; +} + +/** + * egg_zeitgeist_data_source_registry_get_data_sources_sync: + * @instance: A #EggZeitgeistDataSourceRegistry. + * @call_flags: Flags from #EggDBusCallFlags detailing how the method should be invoked. + * @out_arg_0: FIXME: not documented. Free with g_object_unref(). + * @cancellable: A #GCancellable or %NULL. + * @error: Return location for error. + * + * FIXME: not documented. + * + * This function synchronously invokes the GetDataSources() method on the org.gnome.zeitgeist.DataSourceRegistry interface on the object represented by @instance. + * See egg_zeitgeist_data_source_registry_get_data_sources() for the asynchronous version of this function. + * + * Returns: %TRUE if the method call succeeded, %FALSE if @error is set. + */ +gboolean +egg_zeitgeist_data_source_registry_get_data_sources_sync ( + EggZeitgeistDataSourceRegistry *instance, + EggDBusCallFlags call_flags, + EggDBusArraySeq **_out_arg_0, + GCancellable *cancellable, + GError **error) +{ + EggDBusObjectProxy *object_proxy; + EggDBusMessage *message; + EggDBusMessage *reply; + gboolean ret; + + g_return_val_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE_REGISTRY (instance) && EGG_DBUS_IS_INTERFACE_PROXY (instance), FALSE); + + ret = FALSE; reply = NULL; + object_proxy = egg_dbus_interface_proxy_get_object_proxy (EGG_DBUS_INTERFACE_PROXY (instance)); + + message = egg_dbus_connection_new_message_for_method_call (egg_dbus_object_proxy_get_connection (object_proxy), + NULL, + egg_dbus_object_proxy_get_name (object_proxy), + egg_dbus_object_proxy_get_object_path (object_proxy), + "org.gnome.zeitgeist.DataSourceRegistry", + "GetDataSources"); + + + reply = egg_dbus_connection_send_message_with_reply_sync (egg_dbus_object_proxy_get_connection (object_proxy), call_flags, message, egg_zeitgeist_bindings_get_error_domain_types (), cancellable, error); + if (reply == NULL) + goto out; + + if (!egg_dbus_message_extract_seq (reply, _out_arg_0, error)) + goto out; + + ret = TRUE; + +out: + if (message != NULL) + g_object_unref (message); + if (reply != NULL) + g_object_unref (reply); + return ret; +} + +static void +handle_signal (EggDBusInterface *interface, + EggDBusMessage *message) +{ + guint n; + guint num_args; + guint signal_id; + const gchar *expected_signature; + const gchar *signature; + const gchar *signal_name; + GValue *instance_and_params; + + signature = egg_dbus_message_get_signature (message); + signal_name = egg_dbus_message_get_signal_name (message); + + if (strcmp (signal_name, "DataSourceRegistered") == 0) + { + expected_signature = "(sssa(asaasay)bxb)"; + if (strcmp (signature, expected_signature) != 0) + goto wrong_signature; + signal_id = signals[DATA_SOURCE_REGISTERED_SIGNAL]; + num_args = 1; + instance_and_params = g_new0 (GValue, num_args + 1); + instance_and_params[1].g_type = EGG_ZEITGEIST_TYPE_DATA_SOURCE; + } + else if (strcmp (signal_name, "DataSourceDisconnected") == 0) + { + expected_signature = "(sssa(asaasay)bxb)"; + if (strcmp (signature, expected_signature) != 0) + goto wrong_signature; + signal_id = signals[DATA_SOURCE_DISCONNECTED_SIGNAL]; + num_args = 1; + instance_and_params = g_new0 (GValue, num_args + 1); + instance_and_params[1].g_type = EGG_ZEITGEIST_TYPE_DATA_SOURCE; + } + else if (strcmp (signal_name, "DataSourceEnabled") == 0) + { + expected_signature = "sb"; + if (strcmp (signature, expected_signature) != 0) + goto wrong_signature; + signal_id = signals[DATA_SOURCE_ENABLED_SIGNAL]; + num_args = 2; + instance_and_params = g_new0 (GValue, num_args + 1); + instance_and_params[1].g_type = G_TYPE_STRING; + instance_and_params[2].g_type = G_TYPE_BOOLEAN; + } + else + { + g_warning ("%s: Ignoring unknown signal '%s' on interface '%s' with signature '%s'", G_STRFUNC, signal_name, interface_info.name, signature); + goto out; + } + + g_value_init (&(instance_and_params[0]), EGG_DBUS_TYPE_INTERFACE_PROXY); + g_value_set_object (&(instance_and_params[0]), EGG_DBUS_INTERFACE_PROXY (interface)); + + for (n = 0; n < num_args; n++) + { + GType saved_type = instance_and_params[n + 1].g_type; + instance_and_params[n + 1].g_type = 0; + g_assert (egg_dbus_message_extract_gvalue (message, + &(instance_and_params[n + 1]), + NULL)); + instance_and_params[n + 1].g_type = saved_type; + } + + g_signal_emitv (instance_and_params, + signal_id, + 0, + NULL); + + for (n = 0; n < num_args + 1; n++) + g_value_unset (&(instance_and_params[n])); + g_free (instance_and_params); + +out: + return; + +wrong_signature: + g_warning ("%s: Ignoring signal '%s' on interface '%s' with malformed signature '%s', expected signature '%s'", G_STRFUNC, signal_name, interface_info.name, signature, expected_signature); +} + +static void +handle_method_call (EggDBusInterface *interface, + EggDBusMessage *message) +{ + GError *error; + const gchar *signature; + const gchar *method_name; + const gchar *expected_signature; + EggZeitgeistDataSourceRegistryIface *iface; + EggDBusMethodInvocation *method_invocation; + + error = NULL; + + signature = egg_dbus_message_get_signature (message); + method_name = egg_dbus_message_get_method_name (message); + iface = EGG_ZEITGEIST_DATA_SOURCE_REGISTRY_GET_IFACE (interface); + + if (strcmp (method_name, "RegisterDataSource") == 0) + { + gchar *_unique_id; + gchar *_name; + gchar *_description; + EggDBusArraySeq *_event_templates; + + expected_signature = "sssa(asaasay)"; + if (strcmp (signature, expected_signature) != 0) + goto wrong_signature; + + if (iface->handle_register_data_source == NULL) + goto not_implemented; + + if (!egg_dbus_message_extract_string (message, &_unique_id, &error)) + goto extraction_error; + if (!egg_dbus_message_extract_string (message, &_name, &error)) + goto extraction_error; + if (!egg_dbus_message_extract_string (message, &_description, &error)) + goto extraction_error; + if (!egg_dbus_message_extract_seq (message, &_event_templates, &error)) + goto extraction_error; + + method_invocation = egg_dbus_method_invocation_new (message, + egg_zeitgeist_data_source_registry_handle_register_data_source_finish); + + egg_dbus_method_invocation_add_destroy_notify (method_invocation, + _unique_id, + (GDestroyNotify) g_free); + egg_dbus_method_invocation_add_destroy_notify (method_invocation, + _name, + (GDestroyNotify) g_free); + egg_dbus_method_invocation_add_destroy_notify (method_invocation, + _description, + (GDestroyNotify) g_free); + egg_dbus_method_invocation_add_destroy_notify (method_invocation, + _event_templates, + (GDestroyNotify) g_object_unref); + + iface->handle_register_data_source (EGG_ZEITGEIST_DATA_SOURCE_REGISTRY (interface), _unique_id, _name, _description, _event_templates, method_invocation); + + } + else if (strcmp (method_name, "SetDataSourceEnabled") == 0) + { + gchar *_unique_id; + gboolean _enabled; + + expected_signature = "sb"; + if (strcmp (signature, expected_signature) != 0) + goto wrong_signature; + + if (iface->handle_set_data_source_enabled == NULL) + goto not_implemented; + + if (!egg_dbus_message_extract_string (message, &_unique_id, &error)) + goto extraction_error; + if (!egg_dbus_message_extract_boolean (message, &_enabled, &error)) + goto extraction_error; + + method_invocation = egg_dbus_method_invocation_new (message, + egg_zeitgeist_data_source_registry_handle_set_data_source_enabled_finish); + + egg_dbus_method_invocation_add_destroy_notify (method_invocation, + _unique_id, + (GDestroyNotify) g_free); + + iface->handle_set_data_source_enabled (EGG_ZEITGEIST_DATA_SOURCE_REGISTRY (interface), _unique_id, _enabled, method_invocation); + + } + else if (strcmp (method_name, "GetDataSources") == 0) + { + expected_signature = ""; + if (strcmp (signature, expected_signature) != 0) + goto wrong_signature; + + if (iface->handle_get_data_sources == NULL) + goto not_implemented; + + method_invocation = egg_dbus_method_invocation_new (message, + egg_zeitgeist_data_source_registry_handle_get_data_sources_finish); + + iface->handle_get_data_sources (EGG_ZEITGEIST_DATA_SOURCE_REGISTRY (interface), method_invocation); + + } + else + { + g_warning ("%s: Ignoring unknown method call '%s' on interface '%s' with signature '%s'", G_STRFUNC, method_name, interface_info.name, signature); + } + + return; + +not_implemented: + g_warning ("%s: Method call '%s' on interface '%s' with signature '%s' is not implemented on GObject class %s", G_STRFUNC, method_name, interface_info.name, signature, g_type_name (G_TYPE_FROM_INSTANCE (interface))); + return; + +wrong_signature: + g_warning ("%s: Ignoring method call '%s' on interface '%s' with malformed signature '%s', expected signature '%s'", G_STRFUNC, method_name, interface_info.name, signature, expected_signature); + return; + +extraction_error: + g_warning ("%s: Error extracting arguments for method call '%s' on interface '%s' with signature '%s': %s", G_STRFUNC, method_name, interface_info.name, signature, error->message); + g_error_free (error); +} + +/** + * egg_zeitgeist_data_source_registry_handle_register_data_source_finish: + * @result: FIXME: not documented. + * @method_invocation: A #EggDBusMethodInvocation. + * + * Function to be called by implementers of the + * org.gnome.zeitgeist.DataSourceRegistry + * D-Bus interface to finish handling the + * RegisterDataSource() method. + * + */ +void +egg_zeitgeist_data_source_registry_handle_register_data_source_finish ( + EggDBusMethodInvocation *method_invocation, + gboolean _out_result) +{ + GError *error; + EggDBusMessage *reply; + + error = NULL; + + g_warn_if_fail (egg_dbus_method_invocation_get_source_tag (method_invocation) == + egg_zeitgeist_data_source_registry_handle_register_data_source_finish); + + reply = egg_dbus_method_invocation_create_reply_message (method_invocation); + + if (!egg_dbus_message_append_boolean (reply, _out_result, &error)) + goto malformed; + + egg_dbus_connection_send_message (egg_dbus_message_get_connection (reply), reply); + + g_object_unref (reply); + g_object_unref (method_invocation); + + return; + +malformed: + g_warning ("%s: Malformed data passed: %s", G_STRFUNC, error->message); + g_error_free (error); +} + +/** + * egg_zeitgeist_data_source_registry_handle_set_data_source_enabled_finish: + * @method_invocation: A #EggDBusMethodInvocation. + * + * Function to be called by implementers of the + * org.gnome.zeitgeist.DataSourceRegistry + * D-Bus interface to finish handling the + * SetDataSourceEnabled() method. + * + */ +void +egg_zeitgeist_data_source_registry_handle_set_data_source_enabled_finish ( + EggDBusMethodInvocation *method_invocation) +{ + GError *error; + EggDBusMessage *reply; + + error = NULL; + + g_warn_if_fail (egg_dbus_method_invocation_get_source_tag (method_invocation) == + egg_zeitgeist_data_source_registry_handle_set_data_source_enabled_finish); + + reply = egg_dbus_method_invocation_create_reply_message (method_invocation); + + + egg_dbus_connection_send_message (egg_dbus_message_get_connection (reply), reply); + + g_object_unref (reply); + g_object_unref (method_invocation); + + return; +} + +/** + * egg_zeitgeist_data_source_registry_handle_get_data_sources_finish: + * @arg_0: FIXME: not documented. + * @method_invocation: A #EggDBusMethodInvocation. + * + * Function to be called by implementers of the + * org.gnome.zeitgeist.DataSourceRegistry + * D-Bus interface to finish handling the + * GetDataSources() method. + * + */ +void +egg_zeitgeist_data_source_registry_handle_get_data_sources_finish ( + EggDBusMethodInvocation *method_invocation, + EggDBusArraySeq *_out_arg_0) +{ + GError *error; + EggDBusMessage *reply; + + error = NULL; + + g_warn_if_fail (egg_dbus_method_invocation_get_source_tag (method_invocation) == + egg_zeitgeist_data_source_registry_handle_get_data_sources_finish); + + reply = egg_dbus_method_invocation_create_reply_message (method_invocation); + + if (!egg_dbus_message_append_seq (reply, _out_arg_0, "(sssa(asaasay)bxb)", &error)) + goto malformed; + + egg_dbus_connection_send_message (egg_dbus_message_get_connection (reply), reply); + + g_object_unref (reply); + g_object_unref (method_invocation); + + return; + +malformed: + g_warning ("%s: Malformed data passed: %s", G_STRFUNC, error->message); + g_error_free (error); +} + +static void +handle_message (EggDBusInterface *interface, + EggDBusMessage *message) +{ + + switch (egg_dbus_message_get_message_type (message)) + { + case EGG_DBUS_MESSAGE_TYPE_SIGNAL: + handle_signal (interface, message); + break; + + case EGG_DBUS_MESSAGE_TYPE_METHOD_CALL: + handle_method_call (interface, message); + break; + + default: + g_assert_not_reached (); + break; + } +} + +/** + * egg_zeitgeist_data_source_registry_emit_signal_data_source_registered: + * @instance: A #GObject derived type implementing the #EggZeitgeistDataSourceRegistry interface. + * @destination: The destination of the signal or %NULL to emit signals to all listeners. + * @arg_0: FIXME: not documented. + * + * Type safe wrapper for emitting the #EggZeitgeistDataSourceRegistry::data-source-registered signal. + * + **/ +void +egg_zeitgeist_data_source_registry_emit_signal_data_source_registered ( + EggZeitgeistDataSourceRegistry *instance, + const gchar *destination, + EggZeitgeistDataSource *arg_0) +{ + g_return_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE_REGISTRY (instance)); + + g_signal_emit_by_name (instance, + "data-source-registered", + arg_0); +} + +/** + * egg_zeitgeist_data_source_registry_emit_signal_data_source_disconnected: + * @instance: A #GObject derived type implementing the #EggZeitgeistDataSourceRegistry interface. + * @destination: The destination of the signal or %NULL to emit signals to all listeners. + * @arg_0: FIXME: not documented. + * + * Type safe wrapper for emitting the #EggZeitgeistDataSourceRegistry::data-source-disconnected signal. + * + **/ +void +egg_zeitgeist_data_source_registry_emit_signal_data_source_disconnected ( + EggZeitgeistDataSourceRegistry *instance, + const gchar *destination, + EggZeitgeistDataSource *arg_0) +{ + g_return_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE_REGISTRY (instance)); + + g_signal_emit_by_name (instance, + "data-source-disconnected", + arg_0); +} + +/** + * egg_zeitgeist_data_source_registry_emit_signal_data_source_enabled: + * @instance: A #GObject derived type implementing the #EggZeitgeistDataSourceRegistry interface. + * @destination: The destination of the signal or %NULL to emit signals to all listeners. + * @unique_id: FIXME: not documented. + * @enabled: FIXME: not documented. + * + * Type safe wrapper for emitting the #EggZeitgeistDataSourceRegistry::data-source-enabled signal. + * + **/ +void +egg_zeitgeist_data_source_registry_emit_signal_data_source_enabled ( + EggZeitgeistDataSourceRegistry *instance, + const gchar *destination, + const gchar *unique_id, + gboolean enabled) +{ + g_return_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE_REGISTRY (instance)); + + g_signal_emit_by_name (instance, + "data-source-enabled", + unique_id, + enabled); +} + diff -Nru libzeitgeist-0.2.2/src/eggzeitgeistdatasourceregistry.h libzeitgeist-0.2.8/src/eggzeitgeistdatasourceregistry.h --- libzeitgeist-0.2.2/src/eggzeitgeistdatasourceregistry.h 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/src/eggzeitgeistdatasourceregistry.h 2010-08-24 13:18:42.000000000 +0100 @@ -0,0 +1,174 @@ + +/* File: eggzeitgeistdatasourceregistry.h + * + * Generated by eggdbus-binding-tool 0.6. Do not edit. + */ + +#ifndef __EGG_ZEITGEIST_DATA_SOURCE_REGISTRY_H +#define __EGG_ZEITGEIST_DATA_SOURCE_REGISTRY_H + +#include +#include +#include "eggzeitgeistbindingstypes.h" + +G_BEGIN_DECLS + +#define EGG_ZEITGEIST_TYPE_DATA_SOURCE_REGISTRY (egg_zeitgeist_data_source_registry_get_type()) +#define EGG_ZEITGEIST_DATA_SOURCE_REGISTRY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), EGG_ZEITGEIST_TYPE_DATA_SOURCE_REGISTRY, EggZeitgeistDataSourceRegistry)) +#define EGG_ZEITGEIST_IS_DATA_SOURCE_REGISTRY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), EGG_ZEITGEIST_TYPE_DATA_SOURCE_REGISTRY)) +#define EGG_ZEITGEIST_DATA_SOURCE_REGISTRY_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE((o), EGG_ZEITGEIST_TYPE_DATA_SOURCE_REGISTRY, EggZeitgeistDataSourceRegistryIface)) + +#if 0 +typedef struct _EggZeitgeistDataSourceRegistry EggZeitgeistDataSourceRegistry; /* Dummy typedef */ +#endif +typedef struct _EggZeitgeistDataSourceRegistryIface EggZeitgeistDataSourceRegistryIface; + +/** + * EGG_ZEITGEIST_QUERY_INTERFACE_DATA_SOURCE_REGISTRY: + * @object_proxy: A #EggDBusObjectProxy. + * + * Convenience macro to get an interface proxy for the remote object represented + * by @object_proxy. See egg_dbus_object_proxy_query_interface() for details. + * + * Returns: An instance derived from #EggDBusInterfaceProxy that implements the + * #EggZeitgeistDataSourceRegistry interface. This instance can be used to access the + * org.gnome.zeitgeist.DataSourceRegistry D-Bus interface on the remote + * object represented by @object_proxy. Do not ref or unref the returned instance, + * it is owned by @object_proxy. + */ +#define EGG_ZEITGEIST_QUERY_INTERFACE_DATA_SOURCE_REGISTRY(object_proxy) (EGG_ZEITGEIST_DATA_SOURCE_REGISTRY (egg_dbus_object_proxy_query_interface (object_proxy, EGG_ZEITGEIST_TYPE_DATA_SOURCE_REGISTRY))) + +/** + * EggZeitgeistDataSourceRegistryIface: + * @g_iface: The parent interface. + * @handle_register_data_source: FIXME: not documented. + * @handle_set_data_source_enabled: FIXME: not documented. + * @handle_get_data_sources: FIXME: not documented. + * + * Interface VTable for implementing the org.gnome.zeitgeist.DataSourceRegistry D-Bus interface. + */ +struct _EggZeitgeistDataSourceRegistryIface +{ + EggDBusInterfaceIface g_iface; + + void (* handle_register_data_source) ( + EggZeitgeistDataSourceRegistry *instance, + const gchar *unique_id, + const gchar *name, + const gchar *description, + EggDBusArraySeq *event_templates, + EggDBusMethodInvocation *method_invocation); + + void (* handle_set_data_source_enabled) ( + EggZeitgeistDataSourceRegistry *instance, + const gchar *unique_id, + gboolean enabled, + EggDBusMethodInvocation *method_invocation); + + void (* handle_get_data_sources) ( + EggZeitgeistDataSourceRegistry *instance, + EggDBusMethodInvocation *method_invocation); +}; + +GType egg_zeitgeist_data_source_registry_get_type (void) G_GNUC_CONST; + +gboolean egg_zeitgeist_data_source_registry_register_data_source_sync ( + EggZeitgeistDataSourceRegistry *instance, + EggDBusCallFlags call_flags, + const gchar *unique_id, + const gchar *name, + const gchar *description, + EggDBusArraySeq *event_templates, + gboolean *out_result, + GCancellable *cancellable, + GError **error); + +gboolean egg_zeitgeist_data_source_registry_set_data_source_enabled_sync ( + EggZeitgeistDataSourceRegistry *instance, + EggDBusCallFlags call_flags, + const gchar *unique_id, + gboolean enabled, + GCancellable *cancellable, + GError **error); + +gboolean egg_zeitgeist_data_source_registry_get_data_sources_sync ( + EggZeitgeistDataSourceRegistry *instance, + EggDBusCallFlags call_flags, + EggDBusArraySeq **out_arg_0, + GCancellable *cancellable, + GError **error); + +guint egg_zeitgeist_data_source_registry_register_data_source ( + EggZeitgeistDataSourceRegistry *instance, + EggDBusCallFlags call_flags, + const gchar *unique_id, + const gchar *name, + const gchar *description, + EggDBusArraySeq *event_templates, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean egg_zeitgeist_data_source_registry_register_data_source_finish ( + EggZeitgeistDataSourceRegistry *instance, + gboolean *out_result, + GAsyncResult *res, + GError **error); + +guint egg_zeitgeist_data_source_registry_set_data_source_enabled ( + EggZeitgeistDataSourceRegistry *instance, + EggDBusCallFlags call_flags, + const gchar *unique_id, + gboolean enabled, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean egg_zeitgeist_data_source_registry_set_data_source_enabled_finish ( + EggZeitgeistDataSourceRegistry *instance, + GAsyncResult *res, + GError **error); + +guint egg_zeitgeist_data_source_registry_get_data_sources ( + EggZeitgeistDataSourceRegistry *instance, + EggDBusCallFlags call_flags, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean egg_zeitgeist_data_source_registry_get_data_sources_finish ( + EggZeitgeistDataSourceRegistry *instance, + EggDBusArraySeq **out_arg_0, + GAsyncResult *res, + GError **error); + +void egg_zeitgeist_data_source_registry_handle_register_data_source_finish ( + EggDBusMethodInvocation *method_invocation, + gboolean out_result); + +void egg_zeitgeist_data_source_registry_handle_set_data_source_enabled_finish ( + EggDBusMethodInvocation *method_invocation); + +void egg_zeitgeist_data_source_registry_handle_get_data_sources_finish ( + EggDBusMethodInvocation *method_invocation, + EggDBusArraySeq *out_arg_0); + +void egg_zeitgeist_data_source_registry_emit_signal_data_source_registered ( + EggZeitgeistDataSourceRegistry *instance, + const gchar *destination, + EggZeitgeistDataSource *arg_0); + +void egg_zeitgeist_data_source_registry_emit_signal_data_source_disconnected ( + EggZeitgeistDataSourceRegistry *instance, + const gchar *destination, + EggZeitgeistDataSource *arg_0); + +void egg_zeitgeist_data_source_registry_emit_signal_data_source_enabled ( + EggZeitgeistDataSourceRegistry *instance, + const gchar *destination, + const gchar *unique_id, + gboolean enabled); + +G_END_DECLS + +#endif /* __EGG_ZEITGEIST_DATA_SOURCE_REGISTRY_H */ diff -Nru libzeitgeist-0.2.2/src/eggzeitgeistresulttype.c libzeitgeist-0.2.8/src/eggzeitgeistresulttype.c --- libzeitgeist-0.2.2/src/eggzeitgeistresulttype.c 2010-06-23 12:16:17.000000000 +0100 +++ libzeitgeist-0.2.8/src/eggzeitgeistresulttype.c 2010-08-24 13:18:42.000000000 +0100 @@ -38,6 +38,10 @@ {EGG_ZEITGEIST_RESULT_TYPE_LEAST_POPULAR_ACTOR, "EGG_ZEITGEIST_RESULT_TYPE_LEAST_POPULAR_ACTOR", "least-popular-actor"}, {EGG_ZEITGEIST_RESULT_TYPE_MOST_RECENT_ACTOR, "EGG_ZEITGEIST_RESULT_TYPE_MOST_RECENT_ACTOR", "most-recent-actor"}, {EGG_ZEITGEIST_RESULT_TYPE_LEAST_RECENT_ACTOR, "EGG_ZEITGEIST_RESULT_TYPE_LEAST_RECENT_ACTOR", "least-recent-actor"}, + {EGG_ZEITGEIST_RESULT_TYPE_MOST_RECENT_ORIGIN, "EGG_ZEITGEIST_RESULT_TYPE_MOST_RECENT_ORIGIN", "most-recent-origin"}, + {EGG_ZEITGEIST_RESULT_TYPE_LEAST_RECENT_ORIGIN, "EGG_ZEITGEIST_RESULT_TYPE_LEAST_RECENT_ORIGIN", "least-recent-origin"}, + {EGG_ZEITGEIST_RESULT_TYPE_MOST_POPULAR_ORIGIN, "EGG_ZEITGEIST_RESULT_TYPE_MOST_POPULAR_ORIGIN", "most-popular-origin"}, + {EGG_ZEITGEIST_RESULT_TYPE_LEAST_POPULAR_ORIGIN, "EGG_ZEITGEIST_RESULT_TYPE_LEAST_POPULAR_ORIGIN", "least-popular-origin"}, {EGG_ZEITGEIST_RESULT_TYPE_RELEVANCY, "EGG_ZEITGEIST_RESULT_TYPE_RELEVANCY", "relevancy"}, }; diff -Nru libzeitgeist-0.2.2/src/eggzeitgeistresulttype.h libzeitgeist-0.2.8/src/eggzeitgeistresulttype.h --- libzeitgeist-0.2.2/src/eggzeitgeistresulttype.h 2010-06-23 12:16:17.000000000 +0100 +++ libzeitgeist-0.2.8/src/eggzeitgeistresulttype.h 2010-08-24 13:18:42.000000000 +0100 @@ -28,7 +28,11 @@ * @EGG_ZEITGEIST_RESULT_TYPE_MOST_POPULAR_ACTOR: The last event of each different actor, ordered by the popularity of the actor. * @EGG_ZEITGEIST_RESULT_TYPE_LEAST_POPULAR_ACTOR: The last event of each different actor, ordered ascendingly by the popularity of the actor. * @EGG_ZEITGEIST_RESULT_TYPE_MOST_RECENT_ACTOR: The most recent event for each different actor. - * @EGG_ZEITGEIST_RESULT_TYPE_LEAST_RECENT_ACTOR: The most recent event for each different actor. + * @EGG_ZEITGEIST_RESULT_TYPE_LEAST_RECENT_ACTOR: The least recent event for each different actor. + * @EGG_ZEITGEIST_RESULT_TYPE_MOST_RECENT_ORIGIN: The most recent event for each different origin. + * @EGG_ZEITGEIST_RESULT_TYPE_LEAST_RECENT_ORIGIN: The least recent event for each different origin. + * @EGG_ZEITGEIST_RESULT_TYPE_MOST_POPULAR_ORIGIN: The last event of each different origin, ordered by the popularity of the origin. + * @EGG_ZEITGEIST_RESULT_TYPE_LEAST_POPULAR_ORIGIN: The last event of each different origin, ordered ascendingly by the popularity of the origin. * @EGG_ZEITGEIST_RESULT_TYPE_RELEVANCY: Relevancy ranking. Only for full text searches * * Used to control how the query results are grouped and sorted @@ -45,6 +49,10 @@ EGG_ZEITGEIST_RESULT_TYPE_LEAST_POPULAR_ACTOR = 7, EGG_ZEITGEIST_RESULT_TYPE_MOST_RECENT_ACTOR = 8, EGG_ZEITGEIST_RESULT_TYPE_LEAST_RECENT_ACTOR = 9, + EGG_ZEITGEIST_RESULT_TYPE_MOST_RECENT_ORIGIN = 10, + EGG_ZEITGEIST_RESULT_TYPE_LEAST_RECENT_ORIGIN = 11, + EGG_ZEITGEIST_RESULT_TYPE_MOST_POPULAR_ORIGIN = 12, + EGG_ZEITGEIST_RESULT_TYPE_LEAST_POPULAR_ORIGIN = 13, EGG_ZEITGEIST_RESULT_TYPE_RELEVANCY = 100, } EggZeitgeistResultType; diff -Nru libzeitgeist-0.2.2/src/eggzeitgeist.stamp libzeitgeist-0.2.8/src/eggzeitgeist.stamp --- libzeitgeist-0.2.2/src/eggzeitgeist.stamp 2010-06-23 12:16:17.000000000 +0100 +++ libzeitgeist-0.2.8/src/eggzeitgeist.stamp 2010-08-24 13:18:42.000000000 +0100 @@ -1 +1 @@ -eggzeitgeistbindingsmarshal.c eggzeitgeistbindingsmarshal.h eggzeitgeistbindingsmarshal.list eggzeitgeistbindings.c eggzeitgeistbindings.h eggzeitgeistbindingstypes.h eggzeitgeistindex.c eggzeitgeistindex.h docbook-interface-org.gnome.zeitgeist.Index.xml eggzeitgeistblacklist.c eggzeitgeistblacklist.h docbook-interface-org.gnome.zeitgeist.Blacklist.xml eggzeitgeistmonitor.c eggzeitgeistmonitor.h docbook-interface-org.gnome.zeitgeist.Monitor.xml eggzeitgeistlog.c eggzeitgeistlog.h docbook-interface-org.gnome.zeitgeist.Log.xml eggzeitgeistresulttype.c eggzeitgeistresulttype.h docbook-enum-ResultType.xml eggzeitgeiststoragestate.c eggzeitgeiststoragestate.h docbook-enum-StorageState.xml eggzeitgeistsubjectdataoffset.c eggzeitgeistsubjectdataoffset.h docbook-enum-SubjectDataOffset.xml eggzeitgeisteventdataoffset.c eggzeitgeisteventdataoffset.h docbook-enum-EventDataOffset.xml eggzeitgeisttimerange.c eggzeitgeisttimerange.h docbook-struct-TimeRange.xml eggzeitgeistevent.c eggzeitgeistevent.h docbook-struct-Event.xml +eggzeitgeistbindingsmarshal.c eggzeitgeistbindingsmarshal.h eggzeitgeistbindingsmarshal.list eggzeitgeistbindings.c eggzeitgeistbindings.h eggzeitgeistbindingstypes.h eggzeitgeistdatasourceregistry.c eggzeitgeistdatasourceregistry.h docbook-interface-org.gnome.zeitgeist.DataSourceRegistry.xml eggzeitgeistindex.c eggzeitgeistindex.h docbook-interface-org.gnome.zeitgeist.Index.xml eggzeitgeistblacklist.c eggzeitgeistblacklist.h docbook-interface-org.gnome.zeitgeist.Blacklist.xml eggzeitgeistmonitor.c eggzeitgeistmonitor.h docbook-interface-org.gnome.zeitgeist.Monitor.xml eggzeitgeistlog.c eggzeitgeistlog.h docbook-interface-org.gnome.zeitgeist.Log.xml eggzeitgeistresulttype.c eggzeitgeistresulttype.h docbook-enum-ResultType.xml eggzeitgeiststoragestate.c eggzeitgeiststoragestate.h docbook-enum-StorageState.xml eggzeitgeistsubjectdataoffset.c eggzeitgeistsubjectdataoffset.h docbook-enum-SubjectDataOffset.xml eggzeitgeisteventdataoffset.c eggzeitgeisteventdataoffset.h docbook-enum-EventDataOffset.xml eggzeitgeistdatasource.c eggzeitgeistdatasource.h docbook-struct-DataSource.xml eggzeitgeisttimerange.c eggzeitgeisttimerange.h docbook-struct-TimeRange.xml eggzeitgeistevent.c eggzeitgeistevent.h docbook-struct-Event.xml diff -Nru libzeitgeist-0.2.2/src/Makefile.am libzeitgeist-0.2.8/src/Makefile.am --- libzeitgeist-0.2.2/src/Makefile.am 2010-06-23 12:15:54.000000000 +0100 +++ libzeitgeist-0.2.8/src/Makefile.am 2010-08-24 13:18:07.000000000 +0100 @@ -40,6 +40,10 @@ eggzeitgeistbindingstypes.h \ eggzeitgeistblacklist.h \ eggzeitgeistblacklist.c \ + eggzeitgeistdatasource.h \ + eggzeitgeistdatasource.c \ + eggzeitgeistdatasourceregistry.h \ + eggzeitgeistdatasourceregistry.c \ eggzeitgeistevent.c \ eggzeitgeistevent.h \ eggzeitgeisteventdataoffset.c \ @@ -66,9 +70,11 @@ docbook-enum-StorageState.xml \ docbook-enum-SubjectDataOffset.xml \ docbook-interface-org.gnome.zeitgeist.Blacklist.xml \ + docbook-interface-org.gnome.zeitgeist.DataSourceRegistry.xml \ docbook-interface-org.gnome.zeitgeist.Index.xml \ docbook-interface-org.gnome.zeitgeist.Log.xml \ docbook-interface-org.gnome.zeitgeist.Monitor.xml \ + docbook-struct-DataSource.xml \ docbook-struct-Event.xml \ docbook-struct-TimeRange.xml \ $(NULL) @@ -93,11 +99,17 @@ -include $(CONFIG_HEADER) \ -DEGG_DBUS_I_KNOW_API_IS_SUBJECT_TO_CHANGE \ -DZEITGEIST_COMPILATION \ + -DG_LOG_DOMAIN=\"LibZeitgeist\" \ + $(MAINTAINER_CFLAGS) \ $(NULL) lib_LTLIBRARIES = libzeitgeist-1.0.la libzeitgeist_1_0_la_SOURCES = \ + zeitgeist-data-source.h \ + zeitgeist-data-source.c \ + zeitgeist-data-source-registry.h \ + zeitgeist-data-source-registry.c \ zeitgeist-eggdbusconversions.h \ zeitgeist-eggdbusconversions.c \ zeitgeist-enums.h \ @@ -123,6 +135,8 @@ zeitgeist-result-set.c \ zeitgeist-subject.c \ zeitgeist-subject.h \ + zeitgeist-symbols.c \ + zeitgeist-symbols.h \ zeitgeist-timerange.c \ zeitgeist-timerange.h \ zeitgeist-timestamp.c \ @@ -141,6 +155,8 @@ devel_headersdir = $(includedir)/zeitgeist-1.0 devel_headers = \ + zeitgeist-data-source.h \ + zeitgeist-data-source-registry.h \ zeitgeist-enums.h \ zeitgeist-enumtypes.h \ zeitgeist-event.h \ @@ -152,6 +168,7 @@ zeitgeist-ontology-manifestations.h \ zeitgeist-result-set.h \ zeitgeist-subject.h \ + zeitgeist-symbols.h \ zeitgeist-timerange.h \ zeitgeist-timestamp.h \ zeitgeist.h diff -Nru libzeitgeist-0.2.2/src/Makefile.in libzeitgeist-0.2.8/src/Makefile.in --- libzeitgeist-0.2.2/src/Makefile.in 2010-06-23 12:16:12.000000000 +0100 +++ libzeitgeist-0.2.8/src/Makefile.in 2010-08-24 13:18:30.000000000 +0100 @@ -75,19 +75,22 @@ $(am__DEPENDENCIES_1) am__objects_1 = am__objects_2 = eggzeitgeistbindings.lo eggzeitgeistbindingsmarshal.lo \ - eggzeitgeistblacklist.lo eggzeitgeistevent.lo \ + eggzeitgeistblacklist.lo eggzeitgeistdatasource.lo \ + eggzeitgeistdatasourceregistry.lo eggzeitgeistevent.lo \ eggzeitgeisteventdataoffset.lo eggzeitgeistindex.lo \ eggzeitgeistlog.lo eggzeitgeistmonitor.lo \ eggzeitgeistresulttype.lo eggzeitgeiststoragestate.lo \ eggzeitgeistsubjectdataoffset.lo eggzeitgeisttimerange.lo \ $(am__objects_1) -am_libzeitgeist_1_0_la_OBJECTS = zeitgeist-eggdbusconversions.lo \ - zeitgeist-enumtypes.lo zeitgeist-event.lo zeitgeist-index.lo \ - zeitgeist-log.lo zeitgeist-marshal.lo zeitgeist-mimetypes.lo \ +am_libzeitgeist_1_0_la_OBJECTS = zeitgeist-data-source.lo \ + zeitgeist-data-source-registry.lo \ + zeitgeist-eggdbusconversions.lo zeitgeist-enumtypes.lo \ + zeitgeist-event.lo zeitgeist-index.lo zeitgeist-log.lo \ + zeitgeist-marshal.lo zeitgeist-mimetypes.lo \ zeitgeist-monitor.lo zeitgeist-simple-result-set.lo \ zeitgeist-result-set.lo zeitgeist-subject.lo \ - zeitgeist-timerange.lo zeitgeist-timestamp.lo $(am__objects_2) \ - $(am__objects_1) + zeitgeist-symbols.lo zeitgeist-timerange.lo \ + zeitgeist-timestamp.lo $(am__objects_2) $(am__objects_1) libzeitgeist_1_0_la_OBJECTS = $(am_libzeitgeist_1_0_la_OBJECTS) AM_V_lt = $(am__v_lt_$(V)) am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) @@ -155,8 +158,10 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GIO_UNIX_CFLAGS = @GIO_UNIX_CFLAGS@ -GIO_UNIX_LIBS = @GIO_UNIX_LIBS@ +GIO2_CFLAGS = @GIO2_CFLAGS@ +GIO2_LIBS = @GIO2_LIBS@ +GIO_UNIX2_CFLAGS = @GIO_UNIX2_CFLAGS@ +GIO_UNIX2_LIBS = @GIO_UNIX2_LIBS@ GLIB2_CFLAGS = @GLIB2_CFLAGS@ GLIB2_LIBS = @GLIB2_LIBS@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ @@ -182,6 +187,7 @@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ +MAINTAINER_CFLAGS = @MAINTAINER_CFLAGS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ NM = @NM@ @@ -199,6 +205,8 @@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ @@ -206,6 +214,8 @@ STRIP = @STRIP@ VERSION = @VERSION@ ZEITGEIST_CFLAGS = @ZEITGEIST_CFLAGS@ +ZEITGEIST_GIOMODULE_CFLAGS = @ZEITGEIST_GIOMODULE_CFLAGS@ +ZEITGEIST_GIOMODULE_LIBS = @ZEITGEIST_GIOMODULE_LIBS@ ZEITGEIST_LIBS = @ZEITGEIST_LIBS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ @@ -230,6 +240,7 @@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ +giomodulesdir = @giomodulesdir@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ @@ -270,6 +281,10 @@ eggzeitgeistbindingstypes.h \ eggzeitgeistblacklist.h \ eggzeitgeistblacklist.c \ + eggzeitgeistdatasource.h \ + eggzeitgeistdatasource.c \ + eggzeitgeistdatasourceregistry.h \ + eggzeitgeistdatasourceregistry.c \ eggzeitgeistevent.c \ eggzeitgeistevent.h \ eggzeitgeisteventdataoffset.c \ @@ -296,9 +311,11 @@ docbook-enum-StorageState.xml \ docbook-enum-SubjectDataOffset.xml \ docbook-interface-org.gnome.zeitgeist.Blacklist.xml \ + docbook-interface-org.gnome.zeitgeist.DataSourceRegistry.xml \ docbook-interface-org.gnome.zeitgeist.Index.xml \ docbook-interface-org.gnome.zeitgeist.Log.xml \ docbook-interface-org.gnome.zeitgeist.Monitor.xml \ + docbook-struct-DataSource.xml \ docbook-struct-Event.xml \ docbook-struct-TimeRange.xml \ $(NULL) @@ -323,10 +340,16 @@ -include $(CONFIG_HEADER) \ -DEGG_DBUS_I_KNOW_API_IS_SUBJECT_TO_CHANGE \ -DZEITGEIST_COMPILATION \ + -DG_LOG_DOMAIN=\"LibZeitgeist\" \ + $(MAINTAINER_CFLAGS) \ $(NULL) lib_LTLIBRARIES = libzeitgeist-1.0.la libzeitgeist_1_0_la_SOURCES = \ + zeitgeist-data-source.h \ + zeitgeist-data-source.c \ + zeitgeist-data-source-registry.h \ + zeitgeist-data-source-registry.c \ zeitgeist-eggdbusconversions.h \ zeitgeist-eggdbusconversions.c \ zeitgeist-enums.h \ @@ -352,6 +375,8 @@ zeitgeist-result-set.c \ zeitgeist-subject.c \ zeitgeist-subject.h \ + zeitgeist-symbols.c \ + zeitgeist-symbols.h \ zeitgeist-timerange.c \ zeitgeist-timerange.h \ zeitgeist-timestamp.c \ @@ -369,6 +394,8 @@ devel_headersdir = $(includedir)/zeitgeist-1.0 devel_headers = \ + zeitgeist-data-source.h \ + zeitgeist-data-source-registry.h \ zeitgeist-enums.h \ zeitgeist-enumtypes.h \ zeitgeist-event.h \ @@ -380,6 +407,7 @@ zeitgeist-ontology-manifestations.h \ zeitgeist-result-set.h \ zeitgeist-subject.h \ + zeitgeist-symbols.h \ zeitgeist-timerange.h \ zeitgeist-timestamp.h \ zeitgeist.h @@ -478,6 +506,8 @@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eggzeitgeistbindings.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eggzeitgeistbindingsmarshal.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eggzeitgeistblacklist.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eggzeitgeistdatasource.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eggzeitgeistdatasourceregistry.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eggzeitgeistevent.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eggzeitgeisteventdataoffset.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eggzeitgeistindex.Plo@am__quote@ @@ -487,6 +517,8 @@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eggzeitgeiststoragestate.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eggzeitgeistsubjectdataoffset.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eggzeitgeisttimerange.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zeitgeist-data-source-registry.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zeitgeist-data-source.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zeitgeist-eggdbusconversions.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zeitgeist-enumtypes.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zeitgeist-event.Plo@am__quote@ @@ -498,6 +530,7 @@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zeitgeist-result-set.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zeitgeist-simple-result-set.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zeitgeist-subject.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zeitgeist-symbols.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zeitgeist-timerange.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zeitgeist-timestamp.Plo@am__quote@ diff -Nru libzeitgeist-0.2.2/src/marshal.list libzeitgeist-0.2.8/src/marshal.list --- libzeitgeist-0.2.2/src/marshal.list 2010-06-23 12:15:54.000000000 +0100 +++ libzeitgeist-0.2.8/src/marshal.list 2010-08-24 13:18:07.000000000 +0100 @@ -3,3 +3,7 @@ # ZeitgeistMonitor::events-deleted VOID:OBJECT,BOXED + +# ZeitgeistDataSourceRegistry::source-enabled +VOID:STRING,BOOLEAN + diff -Nru libzeitgeist-0.2.2/src/org.gnome.zeitgeist.Log.xml libzeitgeist-0.2.8/src/org.gnome.zeitgeist.Log.xml --- libzeitgeist-0.2.2/src/org.gnome.zeitgeist.Log.xml 2010-06-23 12:15:54.000000000 +0100 +++ libzeitgeist-0.2.8/src/org.gnome.zeitgeist.Log.xml 2010-08-24 13:18:07.000000000 +0100 @@ -37,6 +37,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -185,7 +220,27 @@ + value="The least recent event for each different actor."/> + + + + + + + + + + + + + + + + @@ -349,4 +404,42 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -Nru libzeitgeist-0.2.2/src/zeitgeist-data-source.c libzeitgeist-0.2.8/src/zeitgeist-data-source.c --- libzeitgeist-0.2.2/src/zeitgeist-data-source.c 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/src/zeitgeist-data-source.c 2010-08-24 13:18:07.000000000 +0100 @@ -0,0 +1,349 @@ +/* + * Copyright (C) 2010 Canonical, Ltd. + * + * This library is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License + * version 3.0 as published by the Free Software Foundation. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3.0 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see + * . + * + * Authored by: Michal Hruby + */ + +/** + * SECTION:zeitgeist-data-source + * @short_description: Abstracts data sources used by + * the #ZeitgeistDataSourceRegistry extension + * @include: zeitgeist.h + * + * #ZeitgeistDataSource represents a data source used to insert events into + * Zeitgeist. The data sources are identified using the unique_id property, + * and when querying the data source registry you get other interesting + * information like timestamp of the last action of the data source, flag + * whether it is currently running etc. + */ +#if HAVE_CONFIG_H +#include +#endif + +#include "zeitgeist-data-source.h" + +G_DEFINE_TYPE (ZeitgeistDataSource, zeitgeist_data_source, G_TYPE_INITIALLY_UNOWNED); +#define ZEITGEIST_DATA_SOURCE_GET_PRIVATE(obj) \ + (G_TYPE_INSTANCE_GET_PRIVATE(obj, ZEITGEIST_TYPE_DATA_SOURCE, ZeitgeistDataSourcePrivate)) + +typedef struct +{ + gchar *unique_id; + gchar *name; + gchar *description; + GPtrArray *templates; + gboolean running; + gint64 timestamp; + gboolean enabled; +} ZeitgeistDataSourcePrivate; + +/** + * zeitgeist_data_source_new: + * + * Create a new empty data source structure. + * + * Returns: A new instance of #ZeitgeistDataSource. The returned src will + * have a floating reference which will be consumed if you pass the + * data source to any of the methods provided by this library (like + * registering the data source). If you do not do that then you + * must free the data source youself with g_object_unref(). + */ +ZeitgeistDataSource* +zeitgeist_data_source_new (void) +{ + return g_object_new (ZEITGEIST_TYPE_DATA_SOURCE, NULL); +} +/** + * zeitgeist_data_source_new_full: + * @id: Unique ID for the data source. + * @name: Name of the data source (may be translated). + * @desc: Data source description. + * @event_templates: A #GPtrArray of #ZeitgeistEvents. This parameter + * is optional and purely informational to let data-source + * management applications and other data-sources know what + * sort of information the data source logs. + * The data source will assume ownership of the events and + * the pointer array. + * If you want to keep a reference for yourself you must do a + * g_ptr_array_ref() on @event_templates as well as reffing + * the events held by it before calling this method. + * + * Creates a new instance of DataSource with the given ID, name and + * description. + * + * Returns: New instance of #ZeitgeistDataSource with floating reference, + * if you do not pass the instance to method like + * zeitgeist_data_source_registry_register_data_source(), then you + * have to free the data source yourself using g_object_unref(). + */ +ZeitgeistDataSource* +zeitgeist_data_source_new_full (const gchar *id, + const gchar *name, + const gchar *desc, + GPtrArray *templates) +{ + ZeitgeistDataSource* src = zeitgeist_data_source_new (); + + zeitgeist_data_source_set_unique_id (src, id); + zeitgeist_data_source_set_name (src, name); + zeitgeist_data_source_set_description (src, desc); + zeitgeist_data_source_set_event_templates (src, templates); + + return src; +} + +const gchar* +zeitgeist_data_source_get_unique_id (ZeitgeistDataSource *src) +{ + ZeitgeistDataSourcePrivate *priv; + g_return_val_if_fail (ZEITGEIST_IS_DATA_SOURCE (src), NULL); + + priv = ZEITGEIST_DATA_SOURCE_GET_PRIVATE (src); + + return priv->unique_id; +} + +void +zeitgeist_data_source_set_unique_id (ZeitgeistDataSource *src, + const gchar* unique_id) +{ + ZeitgeistDataSourcePrivate *priv; + g_return_if_fail (ZEITGEIST_IS_DATA_SOURCE (src)); + + priv = ZEITGEIST_DATA_SOURCE_GET_PRIVATE (src); + + if (priv->unique_id) + { + g_free (priv->unique_id); + } + + priv->unique_id = g_strdup (unique_id); +} + +const gchar* +zeitgeist_data_source_get_name (ZeitgeistDataSource *src) +{ + ZeitgeistDataSourcePrivate *priv; + g_return_val_if_fail (ZEITGEIST_IS_DATA_SOURCE (src), NULL); + + priv = ZEITGEIST_DATA_SOURCE_GET_PRIVATE (src); + + return priv->name; +} + +void +zeitgeist_data_source_set_name (ZeitgeistDataSource *src, + const gchar *name) +{ + ZeitgeistDataSourcePrivate *priv; + g_return_if_fail (ZEITGEIST_IS_DATA_SOURCE (src)); + + priv = ZEITGEIST_DATA_SOURCE_GET_PRIVATE (src); + + if (priv->name) + { + g_free (priv->name); + } + + priv->name = g_strdup (name); +} + +const gchar* +zeitgeist_data_source_get_description (ZeitgeistDataSource *src) +{ + ZeitgeistDataSourcePrivate *priv; + g_return_val_if_fail (ZEITGEIST_IS_DATA_SOURCE (src), NULL); + + priv = ZEITGEIST_DATA_SOURCE_GET_PRIVATE (src); + + return priv->description; +} + +void +zeitgeist_data_source_set_description (ZeitgeistDataSource *src, + const gchar *description) +{ + ZeitgeistDataSourcePrivate *priv; + g_return_if_fail (ZEITGEIST_IS_DATA_SOURCE (src)); + + priv = ZEITGEIST_DATA_SOURCE_GET_PRIVATE (src); + + if (priv->description) + { + g_free (priv->description); + } + + priv->description = g_strdup (description); +} + +GPtrArray* +zeitgeist_data_source_get_event_templates (ZeitgeistDataSource *src) +{ + ZeitgeistDataSourcePrivate *priv; + g_return_val_if_fail (ZEITGEIST_IS_DATA_SOURCE (src), NULL); + + priv = ZEITGEIST_DATA_SOURCE_GET_PRIVATE (src); + + return priv->templates; +} + +/** + * zeitgeist_data_source_set_event_templates: + * @src: Instance of #ZeitgeistDataSource. + * @event_templates: A #GPtrArray which contains elements of type + * #ZeitgeistEvent. + * The data source will assume ownership of the events and + * the pointer array. + * If you want to keep a reference for yourself you must do a + * g_ptr_array_ref() on @templates as well as reffing + * the events held by it before calling this method. + * + * Sets event templates which are logged by this #ZeitgeistDataSource + * instance. + */ +void +zeitgeist_data_source_set_event_templates (ZeitgeistDataSource *src, + GPtrArray *event_templates) +{ + ZeitgeistDataSourcePrivate *priv; + g_return_if_fail (ZEITGEIST_IS_DATA_SOURCE (src)); + + priv = ZEITGEIST_DATA_SOURCE_GET_PRIVATE (src); + + if (priv->templates) + { + g_ptr_array_unref (priv->templates); + } + + if (event_templates) + { + g_ptr_array_foreach (event_templates, (GFunc) g_object_ref_sink, NULL); + g_ptr_array_set_free_func (event_templates, g_object_unref); + } + + priv->templates = event_templates; +} + +gboolean +zeitgeist_data_source_is_running (ZeitgeistDataSource *src) +{ + ZeitgeistDataSourcePrivate *priv; + g_return_val_if_fail (ZEITGEIST_IS_DATA_SOURCE (src), FALSE); + + priv = ZEITGEIST_DATA_SOURCE_GET_PRIVATE (src); + + return priv->running; +} + +void +zeitgeist_data_source_set_running (ZeitgeistDataSource *src, + gboolean running) +{ + ZeitgeistDataSourcePrivate *priv; + g_return_if_fail (ZEITGEIST_IS_DATA_SOURCE (src)); + + priv = ZEITGEIST_DATA_SOURCE_GET_PRIVATE (src); + + priv->running = running; +} + +gint64 +zeitgeist_data_source_get_timestamp (ZeitgeistDataSource *src) +{ + ZeitgeistDataSourcePrivate *priv; + g_return_val_if_fail (ZEITGEIST_IS_DATA_SOURCE (src), 0); + + priv = ZEITGEIST_DATA_SOURCE_GET_PRIVATE (src); + + return priv->timestamp; +} + +void +zeitgeist_data_source_set_timestamp (ZeitgeistDataSource *src, + gint64 timestamp) +{ + ZeitgeistDataSourcePrivate *priv; + g_return_if_fail (ZEITGEIST_IS_DATA_SOURCE (src)); + + priv = ZEITGEIST_DATA_SOURCE_GET_PRIVATE (src); + + priv->timestamp = timestamp; +} + +gboolean +zeitgeist_data_source_is_enabled (ZeitgeistDataSource *src) +{ + ZeitgeistDataSourcePrivate *priv; + g_return_val_if_fail (ZEITGEIST_IS_DATA_SOURCE (src), FALSE); + + priv = ZEITGEIST_DATA_SOURCE_GET_PRIVATE (src); + + return priv->enabled; +} + +void +zeitgeist_data_source_set_enabled (ZeitgeistDataSource *src, + gboolean enabled) +{ + ZeitgeistDataSourcePrivate *priv; + g_return_if_fail (ZEITGEIST_IS_DATA_SOURCE (src)); + + priv = ZEITGEIST_DATA_SOURCE_GET_PRIVATE (src); + + priv->enabled = enabled; +} + +static void +zeitgeist_data_source_init (ZeitgeistDataSource *object) +{ + ZeitgeistDataSourcePrivate *priv; + + priv = ZEITGEIST_DATA_SOURCE_GET_PRIVATE (object); + priv->unique_id = NULL; + priv->name = NULL; + priv->description = NULL; + priv->templates = NULL; + priv->running = FALSE; + priv->timestamp = 0; + priv->enabled = TRUE; +} + +static void +zeitgeist_data_source_finalize (GObject *object) +{ + ZeitgeistDataSource *src = ZEITGEIST_DATA_SOURCE (object); + ZeitgeistDataSourcePrivate *priv; + + priv = ZEITGEIST_DATA_SOURCE_GET_PRIVATE (src); + + zeitgeist_data_source_set_unique_id (src, NULL); + zeitgeist_data_source_set_name (src, NULL); + zeitgeist_data_source_set_description (src, NULL); + zeitgeist_data_source_set_event_templates (src, NULL); + + G_OBJECT_CLASS (zeitgeist_data_source_parent_class)->finalize (object); +} + +static void +zeitgeist_data_source_class_init (ZeitgeistDataSourceClass *klass) +{ + GObjectClass* object_class = G_OBJECT_CLASS (klass); + + object_class->finalize = zeitgeist_data_source_finalize; + + g_type_class_add_private (object_class, sizeof (ZeitgeistDataSourcePrivate)); +} + diff -Nru libzeitgeist-0.2.2/src/zeitgeist-data-source.h libzeitgeist-0.2.8/src/zeitgeist-data-source.h --- libzeitgeist-0.2.2/src/zeitgeist-data-source.h 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/src/zeitgeist-data-source.h 2010-08-24 13:18:07.000000000 +0100 @@ -0,0 +1,101 @@ +/* + * Copyright (C) 2010 Canonical, Ltd. + * + * This library is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License + * version 3.0 as published by the Free Software Foundation. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3.0 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see + * . + * + * Authored by: Michal Hruby + */ + +#if !defined (_ZEITGEIST_H_INSIDE_) && !defined (ZEITGEIST_COMPILATION) +#error "Only can be included directly." +#endif + +#ifndef _ZEITGEIST_DATA_SOURCE_H_ +#define _ZEITGEIST_DATA_SOURCE_H_ + +#include +#include + +G_BEGIN_DECLS + +#define ZEITGEIST_TYPE_DATA_SOURCE (zeitgeist_data_source_get_type ()) + +#define ZEITGEIST_DATA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), \ + ZEITGEIST_TYPE_DATA_SOURCE, ZeitgeistDataSource)) + +#define ZEITGEIST_DATA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), \ + ZEITGEIST_TYPE_DATA_SOURCE, ZeitgeistDataSourceClass)) + +#define ZEITGEIST_IS_DATA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), \ + ZEITGEIST_TYPE_DATA_SOURCE)) + +#define ZEITGEIST_IS_DATA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), \ + ZEITGEIST_TYPE_DATA_SOURCE)) + +#define ZEITGEIST_DATA_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), \ + ZEITGEIST_TYPE_DATA_SOURCE, ZeitgeistDataSourceClass)) + +typedef struct _ZeitgeistDataSource ZeitgeistDataSource; +typedef struct _ZeitgeistDataSourceClass ZeitgeistDataSourceClass; + +struct _ZeitgeistDataSourceClass +{ + GInitiallyUnownedClass parent_class; +}; + + +struct _ZeitgeistDataSource +{ + GInitiallyUnowned parent_instance; +}; + +GType zeitgeist_data_source_get_type (void); + +ZeitgeistDataSource* zeitgeist_data_source_new (void); +ZeitgeistDataSource* zeitgeist_data_source_new_full (const gchar *id, + const gchar *name, + const gchar *desc, + GPtrArray *event_templates); + +const gchar* zeitgeist_data_source_get_unique_id (ZeitgeistDataSource *src); +void zeitgeist_data_source_set_unique_id (ZeitgeistDataSource *src, + const gchar* unique_id); + +const gchar* zeitgeist_data_source_get_name (ZeitgeistDataSource *src); +void zeitgeist_data_source_set_name (ZeitgeistDataSource *src, + const gchar *name); + +const gchar* zeitgeist_data_source_get_description (ZeitgeistDataSource *src); +void zeitgeist_data_source_set_description (ZeitgeistDataSource *src, + const gchar *description); + +GPtrArray* zeitgeist_data_source_get_event_templates (ZeitgeistDataSource *src); +void zeitgeist_data_source_set_event_templates (ZeitgeistDataSource *src, + GPtrArray *event_templates); + +gboolean zeitgeist_data_source_is_running (ZeitgeistDataSource *src); +void zeitgeist_data_source_set_running (ZeitgeistDataSource *src, + gboolean running); + +gint64 zeitgeist_data_source_get_timestamp (ZeitgeistDataSource *src); +void zeitgeist_data_source_set_timestamp (ZeitgeistDataSource *src, + gint64 timestamp); + +gboolean zeitgeist_data_source_is_enabled (ZeitgeistDataSource *src); +void zeitgeist_data_source_set_enabled (ZeitgeistDataSource *src, + gboolean enabled); + +G_END_DECLS + +#endif /* _ZEITGEIST_DATA_SOURCE_H_ */ diff -Nru libzeitgeist-0.2.2/src/zeitgeist-data-source-registry.c libzeitgeist-0.2.8/src/zeitgeist-data-source-registry.c --- libzeitgeist-0.2.2/src/zeitgeist-data-source-registry.c 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/src/zeitgeist-data-source-registry.c 2010-08-24 13:18:07.000000000 +0100 @@ -0,0 +1,527 @@ +/* + * Copyright (C) 2010 Canonical, Ltd. + * + * This library is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License + * version 3.0 as published by the Free Software Foundation. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3.0 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see + * . + * + * Authored by: Michal Hruby + */ + +#if HAVE_CONFIG_H +#include +#endif + +#include "zeitgeist-data-source-registry.h" +#include "zeitgeist-eggdbusconversions.h" +#include "zeitgeist-marshal.h" +#include "eggzeitgeistbindings.h" + +/** + * SECTION:zeitgeist-data-source-registry + * @short_description: Query the Zeitgeist Data Source Registry extension + * @include: zeitgeist.h + * + * The Zeitgeist engine maintains a publicly available list of recognized + * data-sources (components inserting information into Zeitgeist). + * #ZeitgeistDataSourceRegistry is used to register new data sources, + * get information about them and gives the ability to enable or disable + * the data sources. + */ + +G_DEFINE_TYPE (ZeitgeistDataSourceRegistry, + zeitgeist_data_source_registry, + G_TYPE_OBJECT); +#define ZEITGEIST_DATA_SOURCE_REGISTRY_GET_PRIVATE(obj) \ + (G_TYPE_INSTANCE_GET_PRIVATE(obj, ZEITGEIST_TYPE_DATA_SOURCE_REGISTRY, \ + ZeitgeistDataSourceRegistryPrivate)) + +typedef struct +{ + /* The connection to the ZG daemon + * Note: The EggZeitgeistDataSourceRegistry is owned by + * the EggDBusObjectProxy! + */ + EggDBusObjectProxy *registry_proxy; + EggZeitgeistDataSourceRegistry *registry; + + gulong src_registered_id; + gulong src_disconnected_id; + gulong src_enabled_id; + +} ZeitgeistDataSourceRegistryPrivate; + +/* Property ids */ +enum +{ + PROP_0, + + LAST_PROPERTY +}; + +enum +{ + SOURCE_REGISTERED, + SOURCE_ENABLED, + SOURCE_DISCONNECTED, + + LAST_SIGNAL +}; +static guint _registry_signals[LAST_SIGNAL] = { 0 }; + +static void +zeitgeist_data_source_registry_init (ZeitgeistDataSourceRegistry *self) +{ + ZeitgeistDataSourceRegistryPrivate *priv; + EggDBusConnection *conn; + + priv = ZEITGEIST_DATA_SOURCE_REGISTRY_GET_PRIVATE (self); + + /* Set up the connection to the ZG daemon */ + conn = egg_dbus_connection_get_for_bus (EGG_DBUS_BUS_TYPE_SESSION); + priv->registry_proxy = + egg_dbus_connection_get_object_proxy (conn, + "org.gnome.zeitgeist.Engine", + "/org/gnome/zeitgeist/data_source_registry"); + + priv->registry = + EGG_ZEITGEIST_QUERY_INTERFACE_DATA_SOURCE_REGISTRY (priv->registry_proxy); + g_object_unref (conn); +} + +static void +zeitgeist_data_source_registry_finalize (GObject *object) +{ + ZeitgeistDataSourceRegistry *registry; + ZeitgeistDataSourceRegistryPrivate *priv; + + registry = ZEITGEIST_DATA_SOURCE_REGISTRY (object); + priv = ZEITGEIST_DATA_SOURCE_REGISTRY_GET_PRIVATE (registry); + + if (priv->src_registered_id) + { + g_signal_handler_disconnect (priv->registry, priv->src_registered_id); + } + + if (priv->src_disconnected_id) + { + g_signal_handler_disconnect (priv->registry, priv->src_disconnected_id); + } + + if (priv->src_enabled_id) + { + g_signal_handler_disconnect (priv->registry, priv->src_enabled_id); + } + + /* Note: priv->registry is owned by priv->registry_proxy */ + if (priv->registry_proxy) + { + g_object_unref (priv->registry_proxy); + } + + G_OBJECT_CLASS (zeitgeist_data_source_registry_parent_class)->finalize (object); +} + +static void +zeitgeist_data_source_registry_get_property (GObject *object, + guint prop_id, + GValue *value, + GParamSpec *pspec) +{ + ZeitgeistDataSourceRegistryPrivate *priv; + + priv = ZEITGEIST_DATA_SOURCE_REGISTRY_GET_PRIVATE (object); + + switch (prop_id) + { + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); + return; + break; + } +} + +static void +zeitgeist_data_source_registry_set_property (GObject *object, + guint prop_id, + const GValue *value, + GParamSpec *pspec) +{ + ZeitgeistDataSourceRegistryPrivate *priv; + + priv = ZEITGEIST_DATA_SOURCE_REGISTRY_GET_PRIVATE (object); + + switch (prop_id) + { + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); + return; + break; + } +} + +static void +zeitgeist_data_source_registry_src_registered ( + ZeitgeistDataSourceRegistry *registry, + EggZeitgeistDataSource *source) +{ + ZeitgeistDataSource *data_source; + + data_source = _egg_zeitgeist_data_source_to_zeitgeist_data_source (source); + + g_signal_emit (registry, _registry_signals[SOURCE_REGISTERED], + 0, data_source); + + g_object_unref (data_source); +} + +static void +zeitgeist_data_source_registry_src_disconnected ( + ZeitgeistDataSourceRegistry *registry, + EggZeitgeistDataSource *source) +{ + ZeitgeistDataSource *data_source; + + data_source = _egg_zeitgeist_data_source_to_zeitgeist_data_source (source); + + g_signal_emit (registry, _registry_signals[SOURCE_DISCONNECTED], + 0, data_source); + + g_object_unref (data_source); +} + +static void +zeitgeist_data_source_registry_src_enabled ( + ZeitgeistDataSourceRegistry *registry, + gchar *unique_id, + gboolean enabled) +{ + g_signal_emit (registry, _registry_signals[SOURCE_ENABLED], + 0, unique_id, enabled); +} + +static void +zeitgeist_data_source_registry_constructed (GObject *object) +{ + ZeitgeistDataSourceRegistryPrivate *priv; + + priv = ZEITGEIST_DATA_SOURCE_REGISTRY_GET_PRIVATE (object); + + priv->src_registered_id = g_signal_connect_swapped ( + priv->registry, "data-source-registered", + G_CALLBACK (zeitgeist_data_source_registry_src_registered), + object); + priv->src_disconnected_id = g_signal_connect_swapped ( + priv->registry, "data-source-disconnected", + G_CALLBACK (zeitgeist_data_source_registry_src_disconnected), + object); + priv->src_enabled_id = g_signal_connect_swapped ( + priv->registry, "data-source-enabled", + G_CALLBACK (zeitgeist_data_source_registry_src_enabled), + object); +} + +static void +zeitgeist_data_source_registry_class_init (ZeitgeistDataSourceRegistryClass *klass) +{ + GObjectClass *object_class = G_OBJECT_CLASS (klass); + GParamSpec *pspec; + + object_class->finalize = zeitgeist_data_source_registry_finalize; + object_class->get_property = zeitgeist_data_source_registry_get_property; + object_class->set_property = zeitgeist_data_source_registry_set_property; + object_class->constructed = zeitgeist_data_source_registry_constructed; + + _registry_signals[SOURCE_REGISTERED] = + g_signal_new ("source-registered", + G_OBJECT_CLASS_TYPE (object_class), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (ZeitgeistDataSourceRegistryClass, source_registered), + NULL, NULL, + g_cclosure_marshal_VOID__OBJECT, + G_TYPE_NONE, 1, ZEITGEIST_TYPE_DATA_SOURCE); + + _registry_signals[SOURCE_DISCONNECTED] = + g_signal_new ("source-disconnected", + G_OBJECT_CLASS_TYPE (object_class), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (ZeitgeistDataSourceRegistryClass, source_disconnected), + NULL, NULL, + g_cclosure_marshal_VOID__OBJECT, + G_TYPE_NONE, 1, ZEITGEIST_TYPE_DATA_SOURCE); + + _registry_signals[SOURCE_ENABLED] = + g_signal_new ("source-enabled", + G_OBJECT_CLASS_TYPE (object_class), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (ZeitgeistDataSourceRegistryClass, source_enabled), + NULL, NULL, + _zeitgeist_cclosure_marshal_VOID__STRING_BOOLEAN, + G_TYPE_NONE, 2, G_TYPE_STRING, G_TYPE_BOOLEAN); + + g_type_class_add_private (object_class, + sizeof (ZeitgeistDataSourceRegistryPrivate)); +} + +/* Used to marshal the async callbacks from EggDBus into ones + * coming from this DataSourceRegistry instance */ +static void +dispatch_async_callback (GObject *source_object, + GAsyncResult *res, + gpointer user_data) +{ + gpointer *data = (gpointer*) user_data; + ZeitgeistDataSourceRegistry *self = ZEITGEIST_DATA_SOURCE_REGISTRY (data[0]); + GAsyncReadyCallback callback = (GAsyncReadyCallback) data[1]; + gpointer _user_data = data[2]; + + if (callback != NULL) + { + callback (G_OBJECT (self), res, _user_data); + } + + g_object_unref (self); + g_free (user_data); +} + +/* + * API BELOW HERE + */ + +/** + * zeitgeist_data_source_registry_new: + * + * Create a new data source registry instance. + * + * DataSourceRegistry instances are not overly expensive for neither + * client or the Zeitgeist daemon so there's no need to go to lengths + * to keep singleton instances around. + * + * Returns: A reference to a newly allocated registry. + */ +ZeitgeistDataSourceRegistry* +zeitgeist_data_source_registry_new (void) +{ + ZeitgeistDataSourceRegistry *registry; + + registry = (ZeitgeistDataSourceRegistry*) + g_object_new (ZEITGEIST_TYPE_DATA_SOURCE_REGISTRY, NULL); + + return registry; +} + +void +zeitgeist_data_source_registry_get_data_sources ( + ZeitgeistDataSourceRegistry *self, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + ZeitgeistDataSourceRegistryPrivate *priv; + gpointer *dispatch_data; + + g_return_if_fail (ZEITGEIST_IS_DATA_SOURCE_REGISTRY (self)); + g_return_if_fail (cancellable == NULL || G_IS_CANCELLABLE (cancellable)); + + priv = ZEITGEIST_DATA_SOURCE_REGISTRY_GET_PRIVATE (self); + + dispatch_data = g_new (gpointer, 3); + dispatch_data[0] = g_object_ref (self); + dispatch_data[1] = callback; + dispatch_data[2] = user_data; + + egg_zeitgeist_data_source_registry_get_data_sources ( + priv->registry, + EGG_DBUS_CALL_FLAGS_NONE, + cancellable, + dispatch_async_callback, + dispatch_data); +} + +/** + * zeitgeist_data_source_registry_get_data_sources_finish: + * @self: Instance of #ZeitgeistDataSourceRegistry. + * @res: a #GAsyncResult. + * @error: a #GError or #NULL. + * + * Returns: Newly created #GPtrArray containing #ZeitgeistDataSource(s) + * registered in Zeitgeist. Free using g_ptr_array_unref() once + * you're done using it. + */ +GPtrArray* +zeitgeist_data_source_registry_get_data_sources_finish ( + ZeitgeistDataSourceRegistry *self, + GAsyncResult *res, + GError **error) +{ + ZeitgeistDataSourceRegistryPrivate *priv; + EggDBusArraySeq *array_seq; + gboolean call_result; + GPtrArray *data_sources = NULL; + + g_return_val_if_fail (ZEITGEIST_IS_DATA_SOURCE_REGISTRY (self), NULL); + + priv = ZEITGEIST_DATA_SOURCE_REGISTRY_GET_PRIVATE (self); + + call_result = egg_zeitgeist_data_source_registry_get_data_sources_finish ( + priv->registry, + &array_seq, + res, + error); + + data_sources = + _egg_zeitgeist_data_sources_to_zeitgeist_data_sources (array_seq); + g_ptr_array_set_free_func (data_sources, g_object_unref); + + g_object_unref (array_seq); + + return data_sources; +} + +/** + * zeitgeist_data_source_registry_register_data_source: + * @self: Instance of #ZeitgeistDataSourceRegistry. + * @source: Data source to register. + * @cancellable: a #GCancellable or #NULL. + * @callback: a GAsyncReadyCallback to call when the request is finished. + * @user_data: the data to pass to callback function. + * + * Registers new data source in the registry, the @source parameter needs to + * have unique-id, name, description and optionally event_templates set, + * therefore it is useful to pass #ZeitgeistDataSource instance created using + * zeitgeist_data_source_new_full(). The registry will assume its ownership. + */ +void +zeitgeist_data_source_registry_register_data_source ( + ZeitgeistDataSourceRegistry *self, + ZeitgeistDataSource *source, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + ZeitgeistDataSourceRegistryPrivate *priv; + gpointer *dispatch_data; + EggDBusArraySeq *templates; + + g_return_if_fail (ZEITGEIST_IS_DATA_SOURCE_REGISTRY (self)); + g_return_if_fail (ZEITGEIST_IS_DATA_SOURCE (source)); + g_return_if_fail (cancellable == NULL || G_IS_CANCELLABLE (cancellable)); + + priv = ZEITGEIST_DATA_SOURCE_REGISTRY_GET_PRIVATE (self); + + g_object_ref_sink (G_OBJECT (source)); + + dispatch_data = g_new (gpointer, 3); + dispatch_data[0] = g_object_ref (self); + dispatch_data[1] = callback; + dispatch_data[2] = user_data; + + templates = _zeitgeist_events_to_egg_zeitgeist_events ( + zeitgeist_data_source_get_event_templates (source) + ); + + egg_zeitgeist_data_source_registry_register_data_source ( + priv->registry, + EGG_DBUS_CALL_FLAGS_NONE, + zeitgeist_data_source_get_unique_id (source), + zeitgeist_data_source_get_name (source), + zeitgeist_data_source_get_description (source), + templates, + cancellable, + dispatch_async_callback, + dispatch_data); + + g_object_unref (templates); + g_object_unref (source); +} + +/** + * zeitgeist_data_source_registry_register_data_source_finish: + * @self: Instance of #ZeitgeistDataSourceRegistry. + * @res: Result of the asynchronous operation. + * @error: a #GError or NULL. + * + * Returns: If error is unset, returns whether this data source is enabled. + */ +gboolean +zeitgeist_data_source_registry_register_data_source_finish ( + ZeitgeistDataSourceRegistry *self, + GAsyncResult *res, + GError **error) +{ + ZeitgeistDataSourceRegistryPrivate *priv; + gboolean result = FALSE; + + g_return_val_if_fail (ZEITGEIST_IS_DATA_SOURCE_REGISTRY (self), FALSE); + + priv = ZEITGEIST_DATA_SOURCE_REGISTRY_GET_PRIVATE (self); + + egg_zeitgeist_data_source_registry_register_data_source_finish ( + priv->registry, + &result, + res, + error); + + return result; +} + +void +zeitgeist_data_source_registry_set_data_source_enabled ( + ZeitgeistDataSourceRegistry *self, + const gchar *unique_id, + gboolean enabled, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + ZeitgeistDataSourceRegistryPrivate *priv; + gpointer *dispatch_data; + + g_return_if_fail (ZEITGEIST_IS_DATA_SOURCE_REGISTRY (self)); + g_return_if_fail (unique_id != NULL); + g_return_if_fail (cancellable == NULL || G_IS_CANCELLABLE (cancellable)); + + priv = ZEITGEIST_DATA_SOURCE_REGISTRY_GET_PRIVATE (self); + + dispatch_data = g_new (gpointer, 3); + dispatch_data[0] = g_object_ref (self); + dispatch_data[1] = callback; + dispatch_data[2] = user_data; + + egg_zeitgeist_data_source_registry_set_data_source_enabled ( + priv->registry, + EGG_DBUS_CALL_FLAGS_NONE, + unique_id, + enabled, + cancellable, + dispatch_async_callback, + dispatch_data); +} + +void +zeitgeist_data_source_registry_set_data_source_enabled_finish ( + ZeitgeistDataSourceRegistry *self, + GAsyncResult *res, + GError **error) +{ + ZeitgeistDataSourceRegistryPrivate *priv; + + g_return_if_fail (ZEITGEIST_IS_DATA_SOURCE_REGISTRY (self)); + + priv = ZEITGEIST_DATA_SOURCE_REGISTRY_GET_PRIVATE (self); + + egg_zeitgeist_data_source_registry_set_data_source_enabled_finish ( + priv->registry, + res, + error); +} + diff -Nru libzeitgeist-0.2.2/src/zeitgeist-data-source-registry.h libzeitgeist-0.2.8/src/zeitgeist-data-source-registry.h --- libzeitgeist-0.2.2/src/zeitgeist-data-source-registry.h 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/src/zeitgeist-data-source-registry.h 2010-08-24 13:18:07.000000000 +0100 @@ -0,0 +1,108 @@ +/* + * Copyright (C) 2010 Canonical, Ltd. + * + * This library is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License + * version 3.0 as published by the Free Software Foundation. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3.0 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see + * . + * + * Authored by: Michal Hruby + */ + +#if !defined (_ZEITGEIST_H_INSIDE_) && !defined (ZEITGEIST_COMPILATION) +#error "Only can be included directly." +#endif + +#ifndef _ZEITGEIST_DATA_SOURCE_REGISTRY_H_ +#define _ZEITGEIST_DATA_SOURCE_REGISTRY_H_ + +#include +#include +#include +#include +#include +#include + +G_BEGIN_DECLS + +#define ZEITGEIST_TYPE_DATA_SOURCE_REGISTRY (zeitgeist_data_source_registry_get_type()) +#define ZEITGEIST_DATA_SOURCE_REGISTRY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), ZEITGEIST_TYPE_DATA_SOURCE_REGISTRY, ZeitgeistDataSourceRegistry)) +#define ZEITGEIST_DATA_SOURCE_REGISTRY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), ZEITGEIST_TYPE_DATA_SOURCE_REGISTRY, ZeitgeistDataSourceRegistryClass)) +#define ZEITGEIST_DATA_SOURCE_REGISTRY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), ZEITGEIST_TYPE_DATA_SOURCE_REGISTRY, ZeitgeistDataSourceRegistryClass)) +#define ZEITGEIST_IS_DATA_SOURCE_REGISTRY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), ZEITGEIST_TYPE_DATA_SOURCE_REGISTRY)) +#define ZEITGEIST_IS_DATA_SOURCE_REGISTRY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), ZEITGEIST_TYPE_DATA_SOURCE_REGISTRY)) + +typedef struct _ZeitgeistDataSourceRegistry ZeitgeistDataSourceRegistry; +typedef struct _ZeitgeistDataSourceRegistryClass ZeitgeistDataSourceRegistryClass; + +struct _ZeitgeistDataSourceRegistryClass +{ + GObjectClass parent_class; + + void (*source_registered) (ZeitgeistDataSourceRegistry *registry, + ZeitgeistDataSource *source); + void (*source_disconnected) (ZeitgeistDataSourceRegistry *registry, + ZeitgeistDataSource *source); + void (*source_enabled) (ZeitgeistDataSourceRegistry *registry, + gchar *unique_id, + gboolean enabled); +}; + + +struct _ZeitgeistDataSourceRegistry +{ + GObject parent_instance; +}; + +GType zeitgeist_data_source_registry_get_type (void); + +ZeitgeistDataSourceRegistry* zeitgeist_data_source_registry_new (void); + +void zeitgeist_data_source_registry_get_data_sources ( + ZeitgeistDataSourceRegistry *self, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +GPtrArray* zeitgeist_data_source_registry_get_data_sources_finish ( + ZeitgeistDataSourceRegistry *self, + GAsyncResult *res, + GError **error); + +void zeitgeist_data_source_registry_register_data_source ( + ZeitgeistDataSourceRegistry *self, + ZeitgeistDataSource *source, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean zeitgeist_data_source_registry_register_data_source_finish ( + ZeitgeistDataSourceRegistry *self, + GAsyncResult *res, + GError **error); + +void zeitgeist_data_source_registry_set_data_source_enabled ( + ZeitgeistDataSourceRegistry *self, + const gchar *unique_id, + gboolean enabled, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +void zeitgeist_data_source_registry_set_data_source_enabled_finish ( + ZeitgeistDataSourceRegistry *self, + GAsyncResult *res, + GError **error); + +G_END_DECLS + +#endif /* _ZEITGEIST_DATA_SOURCE_REGISTRY_H_ */ + diff -Nru libzeitgeist-0.2.2/src/zeitgeist-eggdbusconversions.c libzeitgeist-0.2.8/src/zeitgeist-eggdbusconversions.c --- libzeitgeist-0.2.2/src/zeitgeist-eggdbusconversions.c 2010-06-23 12:15:54.000000000 +0100 +++ libzeitgeist-0.2.8/src/zeitgeist-eggdbusconversions.c 2010-08-24 13:18:07.000000000 +0100 @@ -298,3 +298,54 @@ return result; } + +ZeitgeistDataSource* +_egg_zeitgeist_data_source_to_zeitgeist_data_source (EggZeitgeistDataSource *data_source) +{ + ZeitgeistDataSource *result; + GPtrArray *templates; + gboolean running; + gboolean enabled; + gint64 timestamp; + + g_return_val_if_fail (EGG_ZEITGEIST_IS_DATA_SOURCE (data_source), NULL); + + templates = _egg_zeitgeist_events_to_zeitgeist_events (egg_zeitgeist_data_source_get_event_templates (data_source)); + + result = zeitgeist_data_source_new_full ( + egg_zeitgeist_data_source_get_unique_id (data_source), + egg_zeitgeist_data_source_get_name (data_source), + egg_zeitgeist_data_source_get_description (data_source), + templates); + + running = egg_zeitgeist_data_source_get_running (data_source); + enabled = egg_zeitgeist_data_source_get_enabled (data_source); + timestamp = egg_zeitgeist_data_source_get_last_seen (data_source); + + zeitgeist_data_source_set_running (result, running); + zeitgeist_data_source_set_timestamp (result, timestamp); + zeitgeist_data_source_set_enabled (result, enabled); + + return result; +} + +GPtrArray* +_egg_zeitgeist_data_sources_to_zeitgeist_data_sources (EggDBusArraySeq *data_sources) +{ + GPtrArray *result; + EggZeitgeistDataSource *source; + gint i, num_sources; + + g_return_val_if_fail (EGG_DBUS_IS_ARRAY_SEQ (data_sources), NULL); + + num_sources = egg_dbus_array_seq_get_size (data_sources); + result = g_ptr_array_sized_new (num_sources); + for (i = 0; i < num_sources; i++) + { + source = EGG_ZEITGEIST_DATA_SOURCE (egg_dbus_array_seq_get (data_sources, i)); + g_ptr_array_add (result, _egg_zeitgeist_data_source_to_zeitgeist_data_source (source)); + } + + return result; +} + diff -Nru libzeitgeist-0.2.2/src/zeitgeist-eggdbusconversions.h libzeitgeist-0.2.8/src/zeitgeist-eggdbusconversions.h --- libzeitgeist-0.2.2/src/zeitgeist-eggdbusconversions.h 2010-06-23 12:15:54.000000000 +0100 +++ libzeitgeist-0.2.8/src/zeitgeist-eggdbusconversions.h 2010-08-24 13:18:07.000000000 +0100 @@ -22,8 +22,10 @@ #define _ZEITGEIST_EGGDBUSCONVERSIONS_H_ #include +#include "zeitgeist-data-source.h" #include "zeitgeist-event.h" #include "zeitgeist-timerange.h" +#include "eggzeitgeistdatasource.h" #include "eggzeitgeistevent.h" #include "eggzeitgeisttimerange.h" #include "eggzeitgeisteventdataoffset.h" @@ -40,12 +42,16 @@ EggDBusArraySeq* _zeitgeist_events_to_egg_zeitgeist_events (GPtrArray *events); -GPtrArray* _zeitgeist_events_from_valist (va_list events); +GPtrArray* _zeitgeist_events_from_valist (va_list events); EggZeitgeistTimeRange* _zeitgeist_time_range_to_egg_zeitgeist_time_range (ZeitgeistTimeRange *time_range); ZeitgeistTimeRange* _egg_zeitgeist_time_range_to_zeitgeist_time_range (EggZeitgeistTimeRange *time_range); +ZeitgeistDataSource* _egg_zeitgeist_data_source_to_zeitgeist_data_source (EggZeitgeistDataSource *data_source); + +GPtrArray* _egg_zeitgeist_data_sources_to_zeitgeist_data_sources (EggDBusArraySeq *data_sources); + G_END_DECLS -#endif /* _ZEITGEIST_EGGDBUSCONVERSIONS_H_ */ \ No newline at end of file +#endif /* _ZEITGEIST_EGGDBUSCONVERSIONS_H_ */ diff -Nru libzeitgeist-0.2.2/src/zeitgeist-enums.h libzeitgeist-0.2.8/src/zeitgeist-enums.h --- libzeitgeist-0.2.2/src/zeitgeist-enums.h 2010-06-23 12:15:54.000000000 +0100 +++ libzeitgeist-0.2.8/src/zeitgeist-enums.h 2010-08-24 13:18:07.000000000 +0100 @@ -44,11 +44,15 @@ * @ZEITGEIST_RESULT_TYPE_MOST_RECENT_SUBJECTS: One event for each subject only, ordered with the most recent events first * @ZEITGEIST_RESULT_TYPE_LEAST_RECENT_SUBJECTS: One event for each subject only, ordered with oldest events first * @ZEITGEIST_RESULT_TYPE_MOST_POPULAR_SUBJECTS: One event for each subject only, ordered by the popularity of the subject - * @ZEITGEIST_RESULT_TYPE_LEAST_POPULAR_SUBJECTS: One event for each subject only, ordered ascendently by popularity + * @ZEITGEIST_RESULT_TYPE_LEAST_POPULAR_SUBJECTS: One event for each subject only, ordered ascendingly by popularity * @ZEITGEIST_RESULT_TYPE_MOST_POPULAR_ACTOR: The last event of each different actor, ordered with the most popular actor first * @ZEITGEIST_RESULT_TYPE_LEAST_POPULAR_ACTOR: The last event of each different actor, ordered with the least popular actor first * @ZEITGEIST_RESULT_TYPE_MOST_RECENT_ACTOR: One event for each different actor, ordered with the most recent event first * @ZEITGEIST_RESULT_TYPE_LEAST_RECENT_ACTOR: One event for each different actor, ordered with the least recent event first + * @ZEITGEIST_RESULT_TYPE_MOST_RECENT_ORIGIN: The last event of each different origin ordered with the most recent event first + * @ZEITGEIST_RESULT_TYPE_LEAST_RECENT_ORIGIN: The first event of each different origin ordered with the least recent event first + * @ZEITGEIST_RESULT_TYPE_MOST_POPULAR_ORIGIN: The last event of each different origin, ordered by the popularity of the origin + * @ZEITGEIST_RESULT_TYPE_LEAST_POPULAR_ORIGIN: The last event of each different origin, ordered ascendingly by the popularity of the origin * @ZEITGEIST_RESULT_TYPE_RELEVANCY: Only allowed on zeitgeist_index_search(). Events are sorted by query relevancy * * Used to control how the query results are grouped and sorted. @@ -66,7 +70,11 @@ ZEITGEIST_RESULT_TYPE_MOST_POPULAR_ACTOR = 6, ZEITGEIST_RESULT_TYPE_LEAST_POPULAR_ACTOR = 7, ZEITGEIST_RESULT_TYPE_MOST_RECENT_ACTOR = 8, - ZEITGEIST_RESULT_TYPE_LEAST_RECENT_ACTOR = 6, + ZEITGEIST_RESULT_TYPE_LEAST_RECENT_ACTOR = 9, + ZEITGEIST_RESULT_TYPE_MOST_RECENT_ORIGIN = 10, + ZEITGEIST_RESULT_TYPE_LEAST_RECENT_ORIGIN = 11, + ZEITGEIST_RESULT_TYPE_MOST_POPULAR_ORIGIN = 12, + ZEITGEIST_RESULT_TYPE_LEAST_POPULAR_ORIGIN = 13, ZEITGEIST_RESULT_TYPE_RELEVANCY = 100, } ZeitgeistResultType; @@ -88,4 +96,4 @@ G_END_DECLS -#endif /* _ZEITGEIST_ENUMS_H_ */ \ No newline at end of file +#endif /* _ZEITGEIST_ENUMS_H_ */ diff -Nru libzeitgeist-0.2.2/src/zeitgeist-enumtypes.c libzeitgeist-0.2.8/src/zeitgeist-enumtypes.c --- libzeitgeist-0.2.2/src/zeitgeist-enumtypes.c 2010-06-23 12:16:17.000000000 +0100 +++ libzeitgeist-0.2.8/src/zeitgeist-enumtypes.c 2010-08-24 13:18:42.000000000 +0100 @@ -22,6 +22,10 @@ { ZEITGEIST_RESULT_TYPE_LEAST_POPULAR_ACTOR, "ZEITGEIST_RESULT_TYPE_LEAST_POPULAR_ACTOR", "least-popular-actor" }, { ZEITGEIST_RESULT_TYPE_MOST_RECENT_ACTOR, "ZEITGEIST_RESULT_TYPE_MOST_RECENT_ACTOR", "most-recent-actor" }, { ZEITGEIST_RESULT_TYPE_LEAST_RECENT_ACTOR, "ZEITGEIST_RESULT_TYPE_LEAST_RECENT_ACTOR", "least-recent-actor" }, + { ZEITGEIST_RESULT_TYPE_MOST_RECENT_ORIGIN, "ZEITGEIST_RESULT_TYPE_MOST_RECENT_ORIGIN", "most-recent-origin" }, + { ZEITGEIST_RESULT_TYPE_LEAST_RECENT_ORIGIN, "ZEITGEIST_RESULT_TYPE_LEAST_RECENT_ORIGIN", "least-recent-origin" }, + { ZEITGEIST_RESULT_TYPE_MOST_POPULAR_ORIGIN, "ZEITGEIST_RESULT_TYPE_MOST_POPULAR_ORIGIN", "most-popular-origin" }, + { ZEITGEIST_RESULT_TYPE_LEAST_POPULAR_ORIGIN, "ZEITGEIST_RESULT_TYPE_LEAST_POPULAR_ORIGIN", "least-popular-origin" }, { ZEITGEIST_RESULT_TYPE_RELEVANCY, "ZEITGEIST_RESULT_TYPE_RELEVANCY", "relevancy" }, { 0, NULL, NULL } }; diff -Nru libzeitgeist-0.2.2/src/zeitgeist-event.c libzeitgeist-0.2.8/src/zeitgeist-event.c --- libzeitgeist-0.2.2/src/zeitgeist-event.c 2010-06-23 12:15:54.000000000 +0100 +++ libzeitgeist-0.2.8/src/zeitgeist-event.c 2010-08-24 13:18:07.000000000 +0100 @@ -66,6 +66,8 @@ #include #endif +#include + #include "zeitgeist-event.h" G_DEFINE_TYPE (ZeitgeistEvent, zeitgeist_event, G_TYPE_INITIALLY_UNOWNED); @@ -338,7 +340,16 @@ if (app_id != NULL) { - copy = g_strconcat ("app://", app_id, NULL); + copy = g_strconcat ("application://", app_id, NULL); + } + else if (G_IS_DESKTOP_APP_INFO (appinfo) && + g_desktop_app_info_get_filename (G_DESKTOP_APP_INFO (appinfo))) + { + const gchar *path = g_desktop_app_info_get_filename ( + G_DESKTOP_APP_INFO (appinfo)); + gchar *_app_id = g_path_get_basename (path); + copy = g_strconcat ("application://", _app_id, NULL); + g_free (_app_id); } else { @@ -346,7 +357,7 @@ app_id = g_app_info_get_name (appinfo); if (app_id != NULL) { - copy = g_strconcat ("app://", app_id, ".desktop", NULL); + copy = g_strconcat ("application://", app_id, ".desktop", NULL); } } diff -Nru libzeitgeist-0.2.2/src/zeitgeist.h libzeitgeist-0.2.8/src/zeitgeist.h --- libzeitgeist-0.2.2/src/zeitgeist.h 2010-06-23 12:15:54.000000000 +0100 +++ libzeitgeist-0.2.8/src/zeitgeist.h 2010-08-24 13:18:07.000000000 +0100 @@ -23,6 +23,8 @@ #define _ZEITGEIST_H_INSIDE_ +#include +#include #include #include #include @@ -34,9 +36,10 @@ #include #include #include +#include #include #include #undef _ZEITGEIST_H_INSIDE_ -#endif /* _ZEITGEIST_H_ */ \ No newline at end of file +#endif /* _ZEITGEIST_H_ */ diff -Nru libzeitgeist-0.2.2/src/zeitgeist-log.c libzeitgeist-0.2.8/src/zeitgeist-log.c --- libzeitgeist-0.2.2/src/zeitgeist-log.c 2010-06-23 12:15:54.000000000 +0100 +++ libzeitgeist-0.2.8/src/zeitgeist-log.c 2010-08-24 13:18:07.000000000 +0100 @@ -22,6 +22,8 @@ #include #endif +#include + #include "zeitgeist-log.h" #include "zeitgeist-simple-result-set.h" #include "zeitgeist-eggdbusconversions.h" @@ -54,6 +56,8 @@ EggDBusObjectProxy *log_proxy; EggZeitgeistLog *log; + gboolean connected; + /* Hash set of ZeitgeistMonitors we've installed. We actually store * a map of (monitor, log) because this is most convenient for use with * _zeitgeist_monitor_weak_unref() casted to a GHFunc */ @@ -65,6 +69,8 @@ { PROP_0, + PROP_CONNECTED, + LAST_PROPERTY }; @@ -122,6 +128,7 @@ { ZeitgeistLogPrivate *priv; EggDBusConnection *conn; + gchar *name_owner; priv = ZEITGEIST_LOG_GET_PRIVATE (self); @@ -138,6 +145,13 @@ priv->log = EGG_ZEITGEIST_QUERY_INTERFACE_LOG (priv->log_proxy); g_object_unref (conn); + name_owner = egg_dbus_object_proxy_get_name_owner (priv->log_proxy); + priv->connected = name_owner != NULL; + if (name_owner) + { + g_free (name_owner); + } + /* We need to detect if the Zeitgeist daemon leaves/enters the bus */ g_signal_connect_swapped (priv->log_proxy, "notify::name-owner", G_CALLBACK (_zeitgeist_log_on_name_owner_changed), @@ -214,7 +228,20 @@ object_class->finalize = zeitgeist_log_finalize; object_class->get_property = zeitgeist_log_get_property; object_class->set_property = zeitgeist_log_set_property; - + + /** + * ZeitgeistLog:connected: + * + * Determines if this Log instance is currently connected to Zeitgeist + * daemon. + */ + pspec = g_param_spec_boolean ("connected", + "Connected", + "Whether this instance is connected to Zeitgeist", + FALSE, + G_PARAM_READABLE | G_PARAM_STATIC_STRINGS); + g_object_class_install_property (object_class, PROP_CONNECTED, pspec); + g_type_class_add_private (object_class, sizeof (ZeitgeistLogPrivate)); } @@ -971,7 +998,7 @@ g_object_weak_ref (G_OBJECT (monitor), (GWeakNotify) _zeitgeist_log_on_monitor_destroyed, self); - g_hash_table_insert (priv->monitors, monitor, monitor); + g_hash_table_insert (priv->monitors, monitor, self); _zeitgeist_log_install_monitor (self, monitor, cancellable, callback, user_data); @@ -1060,13 +1087,31 @@ { ZeitgeistLogPrivate *priv; gchar *name_owner; + gboolean has_owner; priv = ZEITGEIST_LOG_GET_PRIVATE (self); g_object_get (priv->log_proxy, "name-owner", &name_owner, NULL); - + + has_owner = name_owner != NULL; + if (name_owner == NULL) { - /* The Zeitgeist daemon disconnected. Do nothing */ + /* The Zeitgeist daemon disconnected. Unregister the DBus service */ + EggDBusConnection *connection; + GHashTableIter iter; + gpointer monitor, dummy; + + connection = egg_dbus_object_proxy_get_connection (priv->log_proxy); + + g_hash_table_iter_init (&iter, priv->monitors); + while (g_hash_table_iter_next (&iter, &monitor, &dummy)) + { + egg_dbus_connection_unregister_interface ( + connection, + zeitgeist_monitor_get_path (ZEITGEIST_MONITOR (monitor)), + EGG_ZEITGEIST_TYPE_MONITOR, + G_TYPE_INVALID); + } } else { @@ -1081,5 +1126,21 @@ NULL, NULL, NULL); } g_free (name_owner); - } -} \ No newline at end of file + } + + if (has_owner != priv->connected) + { + priv->connected = has_owner; + g_object_notify (G_OBJECT (self), "connected"); + } +} + +gboolean +zeitgeist_log_is_connected (ZeitgeistLog *self) +{ + ZeitgeistLogPrivate *priv; + + priv = ZEITGEIST_LOG_GET_PRIVATE (self); + return priv->connected; +} + diff -Nru libzeitgeist-0.2.2/src/zeitgeist-log.h libzeitgeist-0.2.8/src/zeitgeist-log.h --- libzeitgeist-0.2.2/src/zeitgeist-log.h 2010-06-23 12:15:54.000000000 +0100 +++ libzeitgeist-0.2.8/src/zeitgeist-log.h 2010-08-24 13:18:07.000000000 +0100 @@ -189,6 +189,8 @@ GAsyncResult *res, GError **error); +gboolean zeitgeist_log_is_connected (ZeitgeistLog *self); + G_END_DECLS #endif /* _ZEITGEIST_LOG_H_ */ diff -Nru libzeitgeist-0.2.2/src/zeitgeist-marshal.c libzeitgeist-0.2.8/src/zeitgeist-marshal.c --- libzeitgeist-0.2.2/src/zeitgeist-marshal.c 2010-06-23 12:16:17.000000000 +0100 +++ libzeitgeist-0.2.8/src/zeitgeist-marshal.c 2010-08-24 13:18:42.000000000 +0100 @@ -21,6 +21,7 @@ #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) #define g_marshal_value_peek_object(v) g_value_get_object (v) +#define g_marshal_value_peek_variant(v) g_value_get_variant (v) #else /* !G_ENABLE_DEBUG */ /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. * Do not access GValues directly in your code. Instead, use the @@ -44,6 +45,7 @@ #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer #endif /* !G_ENABLE_DEBUG */ @@ -121,3 +123,40 @@ data2); } +/* VOID:STRING,BOOLEAN (marshal.list:8) */ +void +_zeitgeist_cclosure_marshal_VOID__STRING_BOOLEAN (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__STRING_BOOLEAN) (gpointer data1, + gpointer arg_1, + gboolean arg_2, + gpointer data2); + register GMarshalFunc_VOID__STRING_BOOLEAN callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__STRING_BOOLEAN) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_marshal_value_peek_string (param_values + 1), + g_marshal_value_peek_boolean (param_values + 2), + data2); +} + diff -Nru libzeitgeist-0.2.2/src/zeitgeist-marshal.h libzeitgeist-0.2.8/src/zeitgeist-marshal.h --- libzeitgeist-0.2.2/src/zeitgeist-marshal.h 2010-06-23 12:16:17.000000000 +0100 +++ libzeitgeist-0.2.8/src/zeitgeist-marshal.h 2010-08-24 13:18:42.000000000 +0100 @@ -22,6 +22,14 @@ gpointer invocation_hint, gpointer marshal_data); +/* VOID:STRING,BOOLEAN (marshal.list:8) */ +extern void _zeitgeist_cclosure_marshal_VOID__STRING_BOOLEAN (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); + G_END_DECLS #endif /* ___zeitgeist_cclosure_marshal_MARSHAL_H__ */ diff -Nru libzeitgeist-0.2.2/src/zeitgeist-mimetypes.c libzeitgeist-0.2.8/src/zeitgeist-mimetypes.c --- libzeitgeist-0.2.2/src/zeitgeist-mimetypes.c 2010-06-23 12:15:54.000000000 +0100 +++ libzeitgeist-0.2.8/src/zeitgeist-mimetypes.c 2010-08-24 13:18:07.000000000 +0100 @@ -52,13 +52,13 @@ return m; } -static void +/*static void mime_regex_free (MimeRegex *m) { g_regex_unref (m->regex); g_free (m->interpretation_uri); g_slice_free (MimeRegex, m); -} +}*/ static UriScheme* uri_scheme_new (const gchar *uri_scheme, const gchar *manifestation_uri) @@ -69,13 +69,13 @@ return s; } -static void +/*static void uri_scheme_free (UriScheme *s) { g_free (s->scheme); g_free (s->manifestation_uri); g_slice_free (UriScheme, s); -} +}*/ @@ -240,9 +240,17 @@ { if (mimes_loaded) return; - /* Star Office, OO.org */ + /* Star Office and OO.org */ + zeitgeist_register_mimetype_regex ("application/vnd.oasis.opendocument.text.*", + ZEITGEIST_NFO_PAGINATED_TEXT_DOCUMENT); + zeitgeist_register_mimetype_regex ("application/vnd.oasis.opendocument.presentation.*", + ZEITGEIST_NFO_PRESENTATION); + zeitgeist_register_mimetype_regex ("application/vnd.oasis.opendocument.spreadsheet.*", + ZEITGEIST_NFO_SPREADSHEET); + zeitgeist_register_mimetype_regex ("application/vnd.oasis.opendocument.graphics.*", + ZEITGEIST_NFO_VECTOR_IMAGE); zeitgeist_register_mimetype_regex ("application/vnd\\..*", - ZEITGEIST_NFO_PAGINATED_TEXT_DOCUMENT); + ZEITGEIST_NFO_DOCUMENT); /* x-applix-* */ zeitgeist_register_mimetype ("application/x-applix-word", @@ -250,7 +258,7 @@ zeitgeist_register_mimetype ("application/x-applix-spreadsheet", ZEITGEIST_NFO_SPREADSHEET); zeitgeist_register_mimetype ("application/x-applix-presents", - ZEITGEIST_NFO_SPREADSHEET); + ZEITGEIST_NFO_PRESENTATION); zeitgeist_register_mimetype_regex ("application/x-applix-.*", ZEITGEIST_NFO_DOCUMENT); @@ -267,8 +275,20 @@ /* MS */ zeitgeist_register_mimetype ("application/ms-powerpoint", ZEITGEIST_NFO_PRESENTATION); + zeitgeist_register_mimetype ("application/vnd.ms-powerpoint", + ZEITGEIST_NFO_PRESENTATION); zeitgeist_register_mimetype ("application/msword", ZEITGEIST_NFO_PAGINATED_TEXT_DOCUMENT); + zeitgeist_register_mimetype ("application/msexcel", + ZEITGEIST_NFO_SPREADSHEET); + zeitgeist_register_mimetype ("application/ms-excel", + ZEITGEIST_NFO_SPREADSHEET); + zeitgeist_register_mimetype ("application/vnd.ms-excel", + ZEITGEIST_NFO_SPREADSHEET); + zeitgeist_register_mimetype_regex ("application/vnd.ms-excel.*", + ZEITGEIST_NFO_SPREADSHEET); + zeitgeist_register_mimetype_regex ("application/vnd.ms-powerpoint.*", + ZEITGEIST_NFO_PRESENTATION); /* pdf, postscript et al */ zeitgeist_register_mimetype ("application/pdf", diff -Nru libzeitgeist-0.2.2/src/zeitgeist-symbols.c libzeitgeist-0.2.8/src/zeitgeist-symbols.c --- libzeitgeist-0.2.2/src/zeitgeist-symbols.c 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/src/zeitgeist-symbols.c 2010-08-24 13:18:07.000000000 +0100 @@ -0,0 +1,1390 @@ +/* + * Copyright (C) 2010 Canonical, Ltd. + * + * This library is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License + * version 3.0 as published by the Free Software Foundation. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3.0 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see + * . + * + * Authored by: Michal Hruby + */ + +/** + * SECTION:zeitgeist-symbols + * @short_description: Used to get information about Interpretation and/or + * Manifestation symbols + * @title: Symbol comprehension + * @include: zeitgeist.h + */ + +#include "zeitgeist-ontology-interpretations.h" +#include "zeitgeist-ontology-manifestations.h" +#include "zeitgeist-symbols.h" + +static void _ensure_symbols_loaded (void); + +static gboolean symbols_loaded = FALSE; +static GHashTable *symbol_uris = NULL; + +typedef struct +{ + gchar *uri; + GSList *parents; + GSList *children; + GSList *all_children; +} SymbolInfo; + +static SymbolInfo* +symbol_info_new (gchar *uri, + GStrv parents, + GStrv children, + GStrv all_children) +{ + gchar *iter; + SymbolInfo *i = g_slice_new0 (SymbolInfo); + i->uri = g_strdup (uri); + + while (*parents) + { + i->parents = g_slist_append (i->parents, + GINT_TO_POINTER (g_quark_from_string (*parents))); + parents++; + } + + while (*children) + { + i->children = g_slist_append (i->children, + GINT_TO_POINTER (g_quark_from_string (*children))); + children++; + } + + while (*all_children) + { + i->all_children = g_slist_append (i->all_children, + GINT_TO_POINTER (g_quark_from_string (*all_children))); + all_children++; + } + + return i; +} + +static void +zeitgeist_register_symbol (SymbolInfo *i) +{ + if (symbol_uris == NULL) + symbol_uris = g_hash_table_new (g_str_hash, g_str_equal); + + g_hash_table_insert (symbol_uris, i->uri, i); +} + +/** + * zeitgeist_symbol_get_parents: + * @symbol: A symbol. + * + * Gets list of immediate parents of the specified symbol. + * + * Returns: A newly allocated list of immediate parents of this symbol. + * The data elements of the list contain strings which you + * do not own, use g_strdup() if you intend to work with them. + * Free the list with a call to g_list_free(). + */ +GList* +zeitgeist_symbol_get_parents (const gchar *symbol) +{ + GSList *iter; + GList *result = NULL; + g_return_val_if_fail (symbol != NULL, NULL); + + _ensure_symbols_loaded (); + + SymbolInfo *info = (SymbolInfo*) g_hash_table_lookup (symbol_uris, symbol); + g_return_val_if_fail (info != NULL, NULL); + + for (iter = info->parents; iter; iter = iter->next) + { + result = g_list_prepend (result, + g_quark_to_string (GPOINTER_TO_INT (iter->data))); + } + + return g_list_reverse (result); +} + +/** + * zeitgeist_symbol_get_children: + * @symbol: A symbol. + * + * Gets list of immediate children of the specified symbol. + * + * Returns: A newly allocated list of immediate children of this symbol. + * The data elements of the list contain strings which you + * do not own, use g_strdup() if you intend to work with them. + * Free the list with a call to g_list_free(). + */ +GList* +zeitgeist_symbol_get_children (const gchar *symbol) +{ + GSList *iter; + GList *result = NULL; + g_return_val_if_fail (symbol != NULL, NULL); + + _ensure_symbols_loaded (); + + SymbolInfo *info = (SymbolInfo*) g_hash_table_lookup (symbol_uris, symbol); + g_return_val_if_fail (info != NULL, NULL); + + for (iter = info->children; iter; iter = iter->next) + { + result = g_list_prepend (result, + g_quark_to_string (GPOINTER_TO_INT (iter->data))); + } + + return g_list_reverse (result); +} + +/** + * zeitgeist_symbol_get_all_children: + * @symbol: A symbol. + * + * Gets list of all children of the specified symbol. + * + * Returns: A newly allocated list of all children of this symbol (includes + * also children of children recursively). + * The data elements of the list contain strings which you + * do not own, use g_strdup() if you intend to work with them. + * Free the list with a call to g_list_free(). + */ +GList* +zeitgeist_symbol_get_all_children (const gchar *symbol) +{ + GSList *iter; + GList *result = NULL; + g_return_val_if_fail (symbol != NULL, NULL); + + _ensure_symbols_loaded (); + + SymbolInfo *info = (SymbolInfo*) g_hash_table_lookup (symbol_uris, symbol); + g_return_val_if_fail (info != NULL, NULL); + + for (iter = info->all_children; iter; iter = iter->next) + { + result = g_list_prepend (result, + g_quark_to_string (GPOINTER_TO_INT (iter->data))); + } + + return g_list_reverse (result); +} + +/** + * zeitgeist_symbol_is_a: + * @symbol: A symbol. + * @parent: Parent symbol. + * + * Determines if @symbol is child of @parent. + * + * Returns: True if @symbol is child of @parent (or equal to @parent), + * FALSE otherwise. + */ +gboolean +zeitgeist_symbol_is_a (const gchar *symbol, const gchar *parent) +{ + if (parent == NULL || symbol == NULL) return FALSE; + + _ensure_symbols_loaded (); + + SymbolInfo *info = (SymbolInfo*) g_hash_table_lookup (symbol_uris, parent); + if (info == NULL) return FALSE; + + GQuark symbol_quark = g_quark_try_string (symbol); + if (symbol_quark == 0) return FALSE; + // catch equal symbols + if (symbol_quark == g_quark_try_string (parent)) return TRUE; + + return g_slist_find (info->all_children, GINT_TO_POINTER (symbol_quark)) != NULL; +} + +static void +_ensure_symbols_loaded (void) +{ + gchar **parents; + gchar **children; + gchar **all_children; + gchar *uri; + SymbolInfo *info; + + if (symbols_loaded) return; + + uri = ZEITGEIST_NFO_EXECUTABLE; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_SPREADSHEET; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_DOCUMENT; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_ZG_MODIFY_EVENT; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_ZG_EVENT_INTERPRETATION; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_TRASH; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_DATA_CONTAINER; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NMO_MESSAGE; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 3); + children[0] = ZEITGEIST_NMO_EMAIL; + children[1] = ZEITGEIST_NMO_IMMESSAGE; + children[2] = NULL; + all_children = g_new (char*, 3); + all_children[0] = ZEITGEIST_NMO_EMAIL; + all_children[1] = ZEITGEIST_NMO_IMMESSAGE; + all_children[2] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_WEBSITE; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NCAL_TODO; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_ZG_CREATE_EVENT; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_ZG_EVENT_INTERPRETATION; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_MEDIA_LIST; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 2); + children[0] = ZEITGEIST_NMM_MUSIC_ALBUM; + children[1] = NULL; + all_children = g_new (char*, 2); + all_children[0] = ZEITGEIST_NMM_MUSIC_ALBUM; + all_children[1] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_FILESYSTEM; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_DATA_CONTAINER; + parents[1] = NULL; + children = g_new (char*, 2); + children[0] = ZEITGEIST_NFO_FILESYSTEM_IMAGE; + children[1] = NULL; + all_children = g_new (char*, 2); + all_children[0] = ZEITGEIST_NFO_FILESYSTEM_IMAGE; + all_children[1] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_MIND_MAP; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_DOCUMENT; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NCAL_CALENDAR; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_BOOKMARK; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NMO_IMMESSAGE; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NMO_MESSAGE; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NCAL_EVENT; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_ZG_LEAVE_EVENT; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_ZG_EVENT_INTERPRETATION; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_ARCHIVE; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_DATA_CONTAINER; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_ZG_ACCESS_EVENT; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_ZG_EVENT_INTERPRETATION; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_VECTOR_IMAGE; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_IMAGE; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_CURSOR; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_RASTER_IMAGE; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_VIDEO; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_VISUAL; + parents[1] = NULL; + children = g_new (char*, 3); + children[0] = ZEITGEIST_NMM_TVSHOW; + children[1] = ZEITGEIST_NMM_MOVIE; + children[2] = NULL; + all_children = g_new (char*, 3); + all_children[0] = ZEITGEIST_NMM_TVSHOW; + all_children[1] = ZEITGEIST_NMM_MOVIE; + all_children[2] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_BOOKMARK_FOLDER; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_HTML_DOCUMENT; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_PLAIN_TEXT_DOCUMENT; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_PLAIN_TEXT_DOCUMENT; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_TEXT_DOCUMENT; + parents[1] = NULL; + children = g_new (char*, 3); + children[0] = ZEITGEIST_NFO_SOURCE_CODE; + children[1] = ZEITGEIST_NFO_HTML_DOCUMENT; + children[2] = NULL; + all_children = g_new (char*, 3); + all_children[0] = ZEITGEIST_NFO_SOURCE_CODE; + all_children[1] = ZEITGEIST_NFO_HTML_DOCUMENT; + all_children[2] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_FONT; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_DATA_CONTAINER; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 5); + children[0] = ZEITGEIST_NFO_FILESYSTEM; + children[1] = ZEITGEIST_NFO_ARCHIVE; + children[2] = ZEITGEIST_NFO_FOLDER; + children[3] = ZEITGEIST_NFO_TRASH; + children[4] = NULL; + all_children = g_new (char*, 6); + all_children[0] = ZEITGEIST_NFO_FILESYSTEM_IMAGE; + all_children[1] = ZEITGEIST_NFO_ARCHIVE; + all_children[2] = ZEITGEIST_NFO_FOLDER; + all_children[3] = ZEITGEIST_NFO_TRASH; + all_children[4] = ZEITGEIST_NFO_FILESYSTEM; + all_children[5] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_RASTER_IMAGE; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_IMAGE; + parents[1] = NULL; + children = g_new (char*, 2); + children[0] = ZEITGEIST_NFO_CURSOR; + children[1] = NULL; + all_children = g_new (char*, 2); + all_children[0] = ZEITGEIST_NFO_CURSOR; + all_children[1] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_IMAGE; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_VISUAL; + parents[1] = NULL; + children = g_new (char*, 4); + children[0] = ZEITGEIST_NFO_ICON; + children[1] = ZEITGEIST_NFO_VECTOR_IMAGE; + children[2] = ZEITGEIST_NFO_RASTER_IMAGE; + children[3] = NULL; + all_children = g_new (char*, 5); + all_children[0] = ZEITGEIST_NFO_ICON; + all_children[1] = ZEITGEIST_NFO_VECTOR_IMAGE; + all_children[2] = ZEITGEIST_NFO_CURSOR; + all_children[3] = ZEITGEIST_NFO_RASTER_IMAGE; + all_children[4] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_ZG_EVENT_INTERPRETATION; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 8); + children[0] = ZEITGEIST_ZG_LEAVE_EVENT; + children[1] = ZEITGEIST_ZG_MODIFY_EVENT; + children[2] = ZEITGEIST_ZG_CREATE_EVENT; + children[3] = ZEITGEIST_ZG_SEND_EVENT; + children[4] = ZEITGEIST_ZG_ACCESS_EVENT; + children[5] = ZEITGEIST_ZG_DELETE_EVENT; + children[6] = ZEITGEIST_ZG_RECEIVE_EVENT; + children[7] = NULL; + all_children = g_new (char*, 8); + all_children[0] = ZEITGEIST_ZG_LEAVE_EVENT; + all_children[1] = ZEITGEIST_ZG_MODIFY_EVENT; + all_children[2] = ZEITGEIST_ZG_CREATE_EVENT; + all_children[3] = ZEITGEIST_ZG_SEND_EVENT; + all_children[4] = ZEITGEIST_ZG_ACCESS_EVENT; + all_children[5] = ZEITGEIST_ZG_DELETE_EVENT; + all_children[6] = ZEITGEIST_ZG_RECEIVE_EVENT; + all_children[7] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_ZG_SEND_EVENT; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_ZG_EVENT_INTERPRETATION; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_APPLICATION; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_SOFTWARE; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_DOCUMENT; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 5); + children[0] = ZEITGEIST_NFO_TEXT_DOCUMENT; + children[1] = ZEITGEIST_NFO_PRESENTATION; + children[2] = ZEITGEIST_NFO_MIND_MAP; + children[3] = ZEITGEIST_NFO_SPREADSHEET; + children[4] = NULL; + all_children = g_new (char*, 9); + all_children[0] = ZEITGEIST_NFO_SOURCE_CODE; + all_children[1] = ZEITGEIST_NFO_SPREADSHEET; + all_children[2] = ZEITGEIST_NFO_PAGINATED_TEXT_DOCUMENT; + all_children[3] = ZEITGEIST_NFO_TEXT_DOCUMENT; + all_children[4] = ZEITGEIST_NFO_HTML_DOCUMENT; + all_children[5] = ZEITGEIST_NFO_MIND_MAP; + all_children[6] = ZEITGEIST_NFO_PLAIN_TEXT_DOCUMENT; + all_children[7] = ZEITGEIST_NFO_PRESENTATION; + all_children[8] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NMM_MUSIC_PIECE; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_MEDIA; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NMO_MAILBOX; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_TEXT_DOCUMENT; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_DOCUMENT; + parents[1] = NULL; + children = g_new (char*, 3); + children[0] = ZEITGEIST_NFO_PAGINATED_TEXT_DOCUMENT; + children[1] = ZEITGEIST_NFO_PLAIN_TEXT_DOCUMENT; + children[2] = NULL; + all_children = g_new (char*, 5); + all_children[0] = ZEITGEIST_NFO_SOURCE_CODE; + all_children[1] = ZEITGEIST_NFO_HTML_DOCUMENT; + all_children[2] = ZEITGEIST_NFO_PAGINATED_TEXT_DOCUMENT; + all_children[3] = ZEITGEIST_NFO_PLAIN_TEXT_DOCUMENT; + all_children[4] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_FILESYSTEM_IMAGE; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_FILESYSTEM; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NCAL_JOURNAL; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_ICON; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_IMAGE; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_PRESENTATION; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_DOCUMENT; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NMM_MUSIC_ALBUM; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_MEDIA_LIST; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_SOURCE_CODE; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_PLAIN_TEXT_DOCUMENT; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_VISUAL; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_MEDIA; + parents[1] = NULL; + children = g_new (char*, 3); + children[0] = ZEITGEIST_NFO_IMAGE; + children[1] = ZEITGEIST_NFO_VIDEO; + children[2] = NULL; + all_children = g_new (char*, 9); + all_children[0] = ZEITGEIST_NMM_TVSHOW; + all_children[1] = ZEITGEIST_NFO_VECTOR_IMAGE; + all_children[2] = ZEITGEIST_NFO_VIDEO; + all_children[3] = ZEITGEIST_NMM_MOVIE; + all_children[4] = ZEITGEIST_NFO_CURSOR; + all_children[5] = ZEITGEIST_NFO_ICON; + all_children[6] = ZEITGEIST_NFO_IMAGE; + all_children[7] = ZEITGEIST_NFO_RASTER_IMAGE; + all_children[8] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NMO_EMAIL; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NMO_MESSAGE; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_PAGINATED_TEXT_DOCUMENT; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_TEXT_DOCUMENT; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NMM_TVSHOW; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_VIDEO; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NMM_TVSERIES; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_AUDIO; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_MEDIA; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_OPERATING_SYSTEM; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_SOFTWARE; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_SOFTWARE; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 3); + children[0] = ZEITGEIST_NFO_APPLICATION; + children[1] = ZEITGEIST_NFO_OPERATING_SYSTEM; + children[2] = NULL; + all_children = g_new (char*, 3); + all_children[0] = ZEITGEIST_NFO_OPERATING_SYSTEM; + all_children[1] = ZEITGEIST_NFO_APPLICATION; + all_children[2] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NMM_MOVIE; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_VIDEO; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NCAL_TIMEZONE; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NCAL_ALARM; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_FOLDER; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_DATA_CONTAINER; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NMO_MIME_ENTITY; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NCAL_FREEBUSY; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_MEDIA; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 4); + children[0] = ZEITGEIST_NFO_VISUAL; + children[1] = ZEITGEIST_NFO_AUDIO; + children[2] = ZEITGEIST_NMM_MUSIC_PIECE; + children[3] = NULL; + all_children = g_new (char*, 12); + all_children[0] = ZEITGEIST_NMM_TVSHOW; + all_children[1] = ZEITGEIST_NMM_MUSIC_PIECE; + all_children[2] = ZEITGEIST_NFO_AUDIO; + all_children[3] = ZEITGEIST_NFO_VECTOR_IMAGE; + all_children[4] = ZEITGEIST_NFO_VIDEO; + all_children[5] = ZEITGEIST_NMM_MOVIE; + all_children[6] = ZEITGEIST_NFO_VISUAL; + all_children[7] = ZEITGEIST_NFO_CURSOR; + all_children[8] = ZEITGEIST_NFO_ICON; + all_children[9] = ZEITGEIST_NFO_IMAGE; + all_children[10] = ZEITGEIST_NFO_RASTER_IMAGE; + all_children[11] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_ZG_DELETE_EVENT; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_ZG_EVENT_INTERPRETATION; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_ZG_RECEIVE_EVENT; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_ZG_EVENT_INTERPRETATION; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_HARD_DISK_PARTITION; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_ARCHIVE_ITEM; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_EMBEDDED_FILE_DATA_OBJECT; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_FILE_DATA_OBJECT; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 4); + children[0] = ZEITGEIST_NFO_EMBEDDED_FILE_DATA_OBJECT; + children[1] = ZEITGEIST_NFO_DELETED_RESOURCE; + children[2] = ZEITGEIST_NFO_REMOTE_DATA_OBJECT; + children[3] = NULL; + all_children = g_new (char*, 6); + all_children[0] = ZEITGEIST_NFO_EMBEDDED_FILE_DATA_OBJECT; + all_children[1] = ZEITGEIST_NFO_ARCHIVE_ITEM; + all_children[2] = ZEITGEIST_NFO_DELETED_RESOURCE; + all_children[3] = ZEITGEIST_NCAL_ATTACHMENT; + all_children[4] = ZEITGEIST_NFO_REMOTE_DATA_OBJECT; + all_children[5] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_SOFTWARE_SERVICE; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_ZG_SCHEDULED_ACTIVITY; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_ZG_EVENT_MANIFESTATION; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_MEDIA_STREAM; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_EMBEDDED_FILE_DATA_OBJECT; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_FILE_DATA_OBJECT; + parents[1] = NULL; + children = g_new (char*, 3); + children[0] = ZEITGEIST_NFO_ARCHIVE_ITEM; + children[1] = ZEITGEIST_NFO_ATTACHMENT; + children[2] = NULL; + all_children = g_new (char*, 3); + all_children[0] = ZEITGEIST_NFO_ARCHIVE_ITEM; + all_children[1] = ZEITGEIST_NCAL_ATTACHMENT; + all_children[2] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NCAL_ATTACHMENT; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_ATTACHMENT; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_ZG_HEURISTIC_ACTIVITY; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_ZG_EVENT_MANIFESTATION; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_REMOTE_DATA_OBJECT; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_FILE_DATA_OBJECT; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_ZG_EVENT_MANIFESTATION; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 6); + children[0] = ZEITGEIST_ZG_USER_ACTIVITY; + children[1] = ZEITGEIST_ZG_SYSTEM_NOTIFICATION; + children[2] = ZEITGEIST_ZG_HEURISTIC_ACTIVITY; + children[3] = ZEITGEIST_ZG_SCHEDULED_ACTIVITY; + children[4] = ZEITGEIST_ZG_WORLD_ACTIVITY; + children[5] = NULL; + all_children = g_new (char*, 6); + all_children[0] = ZEITGEIST_ZG_USER_ACTIVITY; + all_children[1] = ZEITGEIST_ZG_WORLD_ACTIVITY; + all_children[2] = ZEITGEIST_ZG_HEURISTIC_ACTIVITY; + all_children[3] = ZEITGEIST_ZG_SCHEDULED_ACTIVITY; + all_children[4] = ZEITGEIST_ZG_SYSTEM_NOTIFICATION; + all_children[5] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NMO_MAILBOX_DATA_OBJECT; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NCAL_CALENDAR_DATA_OBJECT; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_ZG_USER_ACTIVITY; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_ZG_EVENT_MANIFESTATION; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_REMOTE_PORT_ADDRESS; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_ZG_WORLD_ACTIVITY; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_ZG_EVENT_MANIFESTATION; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_SOFTWARE_ITEM; + parents = g_new (char*, 1); + parents[0] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_NFO_DELETED_RESOURCE; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_NFO_FILE_DATA_OBJECT; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + uri = ZEITGEIST_ZG_SYSTEM_NOTIFICATION; + parents = g_new (char*, 2); + parents[0] = ZEITGEIST_ZG_EVENT_MANIFESTATION; + parents[1] = NULL; + children = g_new (char*, 1); + children[0] = NULL; + all_children = g_new (char*, 1); + all_children[0] = NULL; + info = symbol_info_new (uri, parents, children, all_children); + zeitgeist_register_symbol (info); + g_free (parents); + g_free (children); + g_free (all_children); + + + symbols_loaded = TRUE; +} + diff -Nru libzeitgeist-0.2.2/src/zeitgeist-symbols.h libzeitgeist-0.2.8/src/zeitgeist-symbols.h --- libzeitgeist-0.2.2/src/zeitgeist-symbols.h 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/src/zeitgeist-symbols.h 2010-08-24 13:18:07.000000000 +0100 @@ -0,0 +1,42 @@ +/* + * Copyright (C) 2010 Canonical, Ltd. + * + * This library is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License + * version 3.0 as published by the Free Software Foundation. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3.0 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see + * . + * + * Authored by: Michal Hruby + */ + +#if !defined (_ZEITGEIST_H_INSIDE_) && !defined (ZEITGEIST_COMPILATION) +#error "Only can be included directly." +#endif + +#ifndef _ZEITGEIST_SYMBOLS_H_ +#define _ZEITGEIST_SYMBOLS_H_ + +#include +#include + +G_BEGIN_DECLS + +GList* zeitgeist_symbol_get_parents (const gchar *symbol); + +GList* zeitgeist_symbol_get_children (const gchar *symbol); + +GList* zeitgeist_symbol_get_all_children (const gchar *symbol); + +gboolean zeitgeist_symbol_is_a (const gchar *symbol, const gchar *parent); + +G_END_DECLS + +#endif /* _ZEITGEIST_SYMBOLS_H_ */ diff -Nru libzeitgeist-0.2.2/src/zeitgeist-timestamp.c libzeitgeist-0.2.8/src/zeitgeist-timestamp.c --- libzeitgeist-0.2.2/src/zeitgeist-timestamp.c 2010-06-23 12:15:54.000000000 +0100 +++ libzeitgeist-0.2.8/src/zeitgeist-timestamp.c 2010-08-24 13:18:07.000000000 +0100 @@ -45,7 +45,7 @@ gint64 zeitgeist_timestamp_from_timeval (GTimeVal *tv) { - g_return_if_fail (tv != NULL); + g_return_val_if_fail (tv != NULL, -1); return ((gint64)tv->tv_sec)*G_GINT64_CONSTANT(1000) + ((gint64)tv->tv_usec)/G_GINT64_CONSTANT(1000); @@ -103,7 +103,7 @@ { GTimeVal tv; - g_return_if_fail (datetime != NULL); + g_return_val_if_fail (datetime != NULL, -1); if (g_time_val_from_iso8601 (datetime, &tv)) return zeitgeist_timestamp_from_timeval (&tv); diff -Nru libzeitgeist-0.2.2/tests/Makefile.am libzeitgeist-0.2.8/tests/Makefile.am --- libzeitgeist-0.2.2/tests/Makefile.am 2010-06-23 12:15:54.000000000 +0100 +++ libzeitgeist-0.2.8/tests/Makefile.am 2010-08-24 13:18:07.000000000 +0100 @@ -18,6 +18,8 @@ test.desktop helper_sources = \ + $(top_srcdir)/src/eggzeitgeistdatasource.c \ + $(top_srcdir)/src/eggzeitgeistdatasource.h \ $(top_srcdir)/src/eggzeitgeistevent.c \ $(top_srcdir)/src/eggzeitgeistevent.h \ $(top_srcdir)/src/eggzeitgeisttimerange.c \ @@ -38,6 +40,10 @@ test_timestamp_SOURCES = test-timestamp.c $(helper_sources) test_timestamp_LDADD = $(zeitgeist_libs) +TEST_PROGS += test-symbols +test_symbols_SOURCES = test-symbols.c $(helper_sources) +test_symbols_LDADD = $(zeitgeist_libs) + TEST_PROGS += test-monitor test_monitor_SOURCES = test-monitor.c $(helper_sources) test_monitor_LDADD = $(zeitgeist_libs) diff -Nru libzeitgeist-0.2.2/tests/Makefile.in libzeitgeist-0.2.8/tests/Makefile.in --- libzeitgeist-0.2.2/tests/Makefile.in 2010-06-23 12:16:12.000000000 +0100 +++ libzeitgeist-0.2.8/tests/Makefile.in 2010-08-24 13:18:30.000000000 +0100 @@ -52,11 +52,12 @@ CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = am__EXEEXT_1 = test-timerange$(EXEEXT) test-timestamp$(EXEEXT) \ - test-monitor$(EXEEXT) test-eggdbusconversions$(EXEEXT) \ - test-log$(EXEEXT) test-event$(EXEEXT) test-mimetypes$(EXEEXT) + test-symbols$(EXEEXT) test-monitor$(EXEEXT) \ + test-eggdbusconversions$(EXEEXT) test-log$(EXEEXT) \ + test-event$(EXEEXT) test-mimetypes$(EXEEXT) PROGRAMS = $(noinst_PROGRAMS) -am__objects_1 = eggzeitgeistevent.$(OBJEXT) \ - eggzeitgeisttimerange.$(OBJEXT) \ +am__objects_1 = eggzeitgeistdatasource.$(OBJEXT) \ + eggzeitgeistevent.$(OBJEXT) eggzeitgeisttimerange.$(OBJEXT) \ zeitgeist-eggdbusconversions.$(OBJEXT) \ zeitgeist-mimetypes.$(OBJEXT) am_test_eggdbusconversions_OBJECTS = \ @@ -69,8 +70,7 @@ am__v_lt_0 = --silent am_test_event_OBJECTS = test-event.$(OBJEXT) $(am__objects_1) test_event_OBJECTS = $(am_test_event_OBJECTS) -am__DEPENDENCIES_1 = -test_event_DEPENDENCIES = $(zeitgeist_libs) $(am__DEPENDENCIES_1) +test_event_DEPENDENCIES = $(zeitgeist_libs) am_test_log_OBJECTS = test-log.$(OBJEXT) $(am__objects_1) test_log_OBJECTS = $(am_test_log_OBJECTS) test_log_DEPENDENCIES = $(zeitgeist_libs) @@ -80,6 +80,9 @@ am_test_monitor_OBJECTS = test-monitor.$(OBJEXT) $(am__objects_1) test_monitor_OBJECTS = $(am_test_monitor_OBJECTS) test_monitor_DEPENDENCIES = $(zeitgeist_libs) +am_test_symbols_OBJECTS = test-symbols.$(OBJEXT) $(am__objects_1) +test_symbols_OBJECTS = $(am_test_symbols_OBJECTS) +test_symbols_DEPENDENCIES = $(zeitgeist_libs) am_test_timerange_OBJECTS = test-timerange.$(OBJEXT) $(am__objects_1) test_timerange_OBJECTS = $(am_test_timerange_OBJECTS) test_timerange_DEPENDENCIES = $(zeitgeist_libs) @@ -114,12 +117,13 @@ am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(test_eggdbusconversions_SOURCES) $(test_event_SOURCES) \ $(test_log_SOURCES) $(test_mimetypes_SOURCES) \ - $(test_monitor_SOURCES) $(test_timerange_SOURCES) \ - $(test_timestamp_SOURCES) + $(test_monitor_SOURCES) $(test_symbols_SOURCES) \ + $(test_timerange_SOURCES) $(test_timestamp_SOURCES) DIST_SOURCES = $(test_eggdbusconversions_SOURCES) \ $(test_event_SOURCES) $(test_log_SOURCES) \ $(test_mimetypes_SOURCES) $(test_monitor_SOURCES) \ - $(test_timerange_SOURCES) $(test_timestamp_SOURCES) + $(test_symbols_SOURCES) $(test_timerange_SOURCES) \ + $(test_timestamp_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) @@ -150,8 +154,10 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ -GIO_UNIX_CFLAGS = @GIO_UNIX_CFLAGS@ -GIO_UNIX_LIBS = @GIO_UNIX_LIBS@ +GIO2_CFLAGS = @GIO2_CFLAGS@ +GIO2_LIBS = @GIO2_LIBS@ +GIO_UNIX2_CFLAGS = @GIO_UNIX2_CFLAGS@ +GIO_UNIX2_LIBS = @GIO_UNIX2_LIBS@ GLIB2_CFLAGS = @GLIB2_CFLAGS@ GLIB2_LIBS = @GLIB2_LIBS@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ @@ -177,6 +183,7 @@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ +MAINTAINER_CFLAGS = @MAINTAINER_CFLAGS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ NM = @NM@ @@ -194,6 +201,8 @@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ @@ -201,6 +210,8 @@ STRIP = @STRIP@ VERSION = @VERSION@ ZEITGEIST_CFLAGS = @ZEITGEIST_CFLAGS@ +ZEITGEIST_GIOMODULE_CFLAGS = @ZEITGEIST_GIOMODULE_CFLAGS@ +ZEITGEIST_GIOMODULE_LIBS = @ZEITGEIST_GIOMODULE_LIBS@ ZEITGEIST_LIBS = @ZEITGEIST_LIBS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ @@ -225,6 +236,7 @@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ +giomodulesdir = @giomodulesdir@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ @@ -259,7 +271,7 @@ # initialize variables for unconditional += appending EXTRA_DIST = test.desktop -TEST_PROGS = test-timerange test-timestamp test-monitor \ +TEST_PROGS = test-timerange test-timestamp test-symbols test-monitor \ test-eggdbusconversions test-log test-event test-mimetypes INCLUDES = \ -I$(top_srcdir)/src -I$(srcdir) \ @@ -275,6 +287,8 @@ zeitgeist_libs = $(top_builddir)/src/libzeitgeist-1.0.la helper_sources = \ + $(top_srcdir)/src/eggzeitgeistdatasource.c \ + $(top_srcdir)/src/eggzeitgeistdatasource.h \ $(top_srcdir)/src/eggzeitgeistevent.c \ $(top_srcdir)/src/eggzeitgeistevent.h \ $(top_srcdir)/src/eggzeitgeisttimerange.c \ @@ -289,6 +303,8 @@ test_timerange_LDADD = $(zeitgeist_libs) test_timestamp_SOURCES = test-timestamp.c $(helper_sources) test_timestamp_LDADD = $(zeitgeist_libs) +test_symbols_SOURCES = test-symbols.c $(helper_sources) +test_symbols_LDADD = $(zeitgeist_libs) test_monitor_SOURCES = test-monitor.c $(helper_sources) test_monitor_LDADD = $(zeitgeist_libs) test_eggdbusconversions_SOURCES = test-eggdbusconversions.c $(helper_sources) @@ -357,6 +373,9 @@ test-monitor$(EXEEXT): $(test_monitor_OBJECTS) $(test_monitor_DEPENDENCIES) @rm -f test-monitor$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_monitor_OBJECTS) $(test_monitor_LDADD) $(LIBS) +test-symbols$(EXEEXT): $(test_symbols_OBJECTS) $(test_symbols_DEPENDENCIES) + @rm -f test-symbols$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(test_symbols_OBJECTS) $(test_symbols_LDADD) $(LIBS) test-timerange$(EXEEXT): $(test_timerange_OBJECTS) $(test_timerange_DEPENDENCIES) @rm -f test-timerange$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_timerange_OBJECTS) $(test_timerange_LDADD) $(LIBS) @@ -370,6 +389,7 @@ distclean-compile: -rm -f *.tab.c +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eggzeitgeistdatasource.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eggzeitgeistevent.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eggzeitgeisttimerange.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-eggdbusconversions.Po@am__quote@ @@ -377,6 +397,7 @@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-log.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-mimetypes.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-monitor.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-symbols.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-timerange.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-timestamp.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zeitgeist-eggdbusconversions.Po@am__quote@ @@ -406,6 +427,22 @@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< +eggzeitgeistdatasource.o: $(top_srcdir)/src/eggzeitgeistdatasource.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT eggzeitgeistdatasource.o -MD -MP -MF $(DEPDIR)/eggzeitgeistdatasource.Tpo -c -o eggzeitgeistdatasource.o `test -f '$(top_srcdir)/src/eggzeitgeistdatasource.c' || echo '$(srcdir)/'`$(top_srcdir)/src/eggzeitgeistdatasource.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/eggzeitgeistdatasource.Tpo $(DEPDIR)/eggzeitgeistdatasource.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(top_srcdir)/src/eggzeitgeistdatasource.c' object='eggzeitgeistdatasource.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o eggzeitgeistdatasource.o `test -f '$(top_srcdir)/src/eggzeitgeistdatasource.c' || echo '$(srcdir)/'`$(top_srcdir)/src/eggzeitgeistdatasource.c + +eggzeitgeistdatasource.obj: $(top_srcdir)/src/eggzeitgeistdatasource.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT eggzeitgeistdatasource.obj -MD -MP -MF $(DEPDIR)/eggzeitgeistdatasource.Tpo -c -o eggzeitgeistdatasource.obj `if test -f '$(top_srcdir)/src/eggzeitgeistdatasource.c'; then $(CYGPATH_W) '$(top_srcdir)/src/eggzeitgeistdatasource.c'; else $(CYGPATH_W) '$(srcdir)/$(top_srcdir)/src/eggzeitgeistdatasource.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/eggzeitgeistdatasource.Tpo $(DEPDIR)/eggzeitgeistdatasource.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(top_srcdir)/src/eggzeitgeistdatasource.c' object='eggzeitgeistdatasource.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o eggzeitgeistdatasource.obj `if test -f '$(top_srcdir)/src/eggzeitgeistdatasource.c'; then $(CYGPATH_W) '$(top_srcdir)/src/eggzeitgeistdatasource.c'; else $(CYGPATH_W) '$(srcdir)/$(top_srcdir)/src/eggzeitgeistdatasource.c'; fi` + eggzeitgeistevent.o: $(top_srcdir)/src/eggzeitgeistevent.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT eggzeitgeistevent.o -MD -MP -MF $(DEPDIR)/eggzeitgeistevent.Tpo -c -o eggzeitgeistevent.o `test -f '$(top_srcdir)/src/eggzeitgeistevent.c' || echo '$(srcdir)/'`$(top_srcdir)/src/eggzeitgeistevent.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/eggzeitgeistevent.Tpo $(DEPDIR)/eggzeitgeistevent.Po diff -Nru libzeitgeist-0.2.2/tests/test-eggdbusconversions.c libzeitgeist-0.2.8/tests/test-eggdbusconversions.c --- libzeitgeist-0.2.2/tests/test-eggdbusconversions.c 2010-06-23 12:15:54.000000000 +0100 +++ libzeitgeist-0.2.8/tests/test-eggdbusconversions.c 2010-08-24 13:18:07.000000000 +0100 @@ -19,9 +19,11 @@ #include #include +#include "zeitgeist-data-source.h" #include "zeitgeist-event.h" #include "zeitgeist-subject.h" #include "zeitgeist-eggdbusconversions.h" +#include "zeitgeist-timestamp.h" typedef struct { @@ -410,6 +412,74 @@ } static void +test_egg_to_z_ds_empty (Fixture *fix, gconstpointer data) +{ + ZeitgeistDataSource *zds; + EggZeitgeistDataSource *eggds; + EggDBusArraySeq *templates; + + templates = egg_dbus_array_seq_new (EGG_ZEITGEIST_TYPE_DATA_SOURCE, + g_object_unref, + NULL, + NULL); + + eggds = egg_zeitgeist_data_source_new ("", "", "", templates, + FALSE, 0, FALSE); + + zds = _egg_zeitgeist_data_source_to_zeitgeist_data_source (eggds); + + /* We unref the eggds here to assert that we have completely separated + * the memory of the converted data source */ + g_object_unref (eggds); + g_object_unref (templates); + + g_assert_cmpstr ("", ==, zeitgeist_data_source_get_unique_id (zds)); + g_assert_cmpstr ("", ==, zeitgeist_data_source_get_name (zds)); + g_assert_cmpstr ("", ==, zeitgeist_data_source_get_description (zds)); + g_assert_cmpint (0, ==, zeitgeist_data_source_is_running (zds)); + g_assert_cmpint (0, ==, zeitgeist_data_source_is_enabled (zds)); + g_assert_cmpint (0, ==, zeitgeist_data_source_get_timestamp (zds)); + + g_object_unref (zds); +} + +static void +test_egg_to_z_ds_full (Fixture *fix, gconstpointer data) +{ + ZeitgeistDataSource *zds; + EggZeitgeistDataSource *eggds; + EggDBusArraySeq *templates; + gint64 timestamp; + + templates = egg_dbus_array_seq_new (EGG_ZEITGEIST_TYPE_DATA_SOURCE, + g_object_unref, + NULL, + NULL); + timestamp = zeitgeist_timestamp_for_now (); + + eggds = egg_zeitgeist_data_source_new ("id", "name", "desc", templates, + FALSE, + timestamp, + TRUE); + + zds = _egg_zeitgeist_data_source_to_zeitgeist_data_source (eggds); + + /* We unref the eggds here to assert that we have completely separated + * the memory of the converted data source */ + g_object_unref (eggds); + g_object_unref (templates); + + g_assert_cmpstr ("id", ==, zeitgeist_data_source_get_unique_id (zds)); + g_assert_cmpstr ("name", ==, zeitgeist_data_source_get_name (zds)); + g_assert_cmpstr ("desc", ==, zeitgeist_data_source_get_description (zds)); + g_assert_cmpint (0, ==, zeitgeist_data_source_is_running (zds)); + g_assert_cmpint (0, !=, zeitgeist_data_source_is_enabled (zds)); + g_assert_cmpint (timestamp, ==, zeitgeist_data_source_get_timestamp (zds)); + + g_object_unref (zds); +} + +static void test_timestamp (Fixture *fix, gconstpointer data) { ZeitgeistEvent *zev; @@ -469,8 +539,14 @@ g_test_add ("/Zeitgeist/EggDBusConversions/EggToZEmpty", Fixture, NULL, setup, test_egg_to_z_empty, teardown); + g_test_add ("/Zeitgeist/EggDBusConversions/EggToZDSFull", Fixture, NULL, + setup, test_egg_to_z_ds_full, teardown); + + g_test_add ("/Zeitgeist/EggDBusConversions/EggToZDSEmpty", Fixture, NULL, + setup, test_egg_to_z_ds_empty, teardown); + g_test_add ("/Zeitgeist/EggDBusConversions/Timestamp", Fixture, NULL, setup, test_timestamp, teardown); return g_test_run(); -} \ No newline at end of file +} diff -Nru libzeitgeist-0.2.2/tests/test-event.c libzeitgeist-0.2.8/tests/test-event.c --- libzeitgeist-0.2.2/tests/test-event.c 2010-06-23 12:15:54.000000000 +0100 +++ libzeitgeist-0.2.8/tests/test-event.c 2010-08-24 13:18:07.000000000 +0100 @@ -119,7 +119,7 @@ ev = zeitgeist_event_new (); zeitgeist_event_set_actor_from_app_info (ev, appinfo); - g_assert_cmpstr ("app://test.desktop", ==, zeitgeist_event_get_actor (ev)); + g_assert_cmpstr ("application://test.desktop", ==, zeitgeist_event_get_actor (ev)); } int diff -Nru libzeitgeist-0.2.2/tests/test-symbols.c libzeitgeist-0.2.8/tests/test-symbols.c --- libzeitgeist-0.2.2/tests/test-symbols.c 1970-01-01 01:00:00.000000000 +0100 +++ libzeitgeist-0.2.8/tests/test-symbols.c 2010-08-24 13:18:07.000000000 +0100 @@ -0,0 +1,220 @@ +/* + * Copyright (C) 2010 Canonical Ltd + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * Authored by Michal Hruby + * + */ + +#include +#include +#include +#include "zeitgeist-symbols.h" +#include "zeitgeist-ontology-interpretations.h" + +typedef struct +{ + +} Fixture; + +static void setup (Fixture *fix, gconstpointer data); +static void teardown (Fixture *fix, gconstpointer data); + +static void +setup (Fixture *fix, gconstpointer data) +{ + +} + +static void +teardown (Fixture *fix, gconstpointer data) +{ + +} + +static void +test_null_symbols (Fixture *fix, gconstpointer data) +{ + // shouldn't crash + zeitgeist_symbol_is_a (NULL, NULL); +} + +static void +test_null_first (Fixture *fix, gconstpointer data) +{ + gboolean res = zeitgeist_symbol_is_a (NULL, ZEITGEIST_NFO_MEDIA); + + g_assert_cmpint (res, ==, FALSE); +} + +static void +test_null_second (Fixture *fix, gconstpointer data) +{ + gboolean res = zeitgeist_symbol_is_a (ZEITGEIST_NFO_MEDIA, NULL); + + g_assert_cmpint (res, ==, FALSE); +} + +static void +test_not_uri (Fixture *fix, gconstpointer data) +{ + gboolean res = zeitgeist_symbol_is_a ("first", "second"); + + g_assert_cmpint (res, ==, FALSE); +} + +static void +test_not_uri_equal (Fixture *fix, gconstpointer data) +{ + gboolean res = zeitgeist_symbol_is_a ("something", "something"); + + g_assert_cmpint (res, ==, FALSE); +} + +static void +test_uris_equal (Fixture *fix, gconstpointer data) +{ + gboolean res = zeitgeist_symbol_is_a (ZEITGEIST_NFO_AUDIO, + ZEITGEIST_NFO_AUDIO); + + g_assert_cmpint (res, ==, TRUE); +} + +static void +test_vector_image_media (Fixture *fix, gconstpointer data) +{ + gboolean res = zeitgeist_symbol_is_a (ZEITGEIST_NFO_VECTOR_IMAGE, + ZEITGEIST_NFO_MEDIA); + + g_assert_cmpint (res, ==, TRUE); +} + +static void +test_media_vector_image (Fixture *fix, gconstpointer data) +{ + gboolean res = zeitgeist_symbol_is_a (ZEITGEIST_NFO_MEDIA, + ZEITGEIST_NFO_VECTOR_IMAGE); + + g_assert_cmpint (res, ==, FALSE); +} + +static void +test_media_software (Fixture *fix, gconstpointer data) +{ + gboolean res = zeitgeist_symbol_is_a (ZEITGEIST_NFO_MEDIA, + ZEITGEIST_NFO_SOFTWARE); + + g_assert_cmpint (res, ==, FALSE); +} + +static void +is_uri_valid (gpointer data, gpointer unused) +{ + const gchar SEM_D_URI[] = "http://www.semanticdesktop.org/ontologies"; + gchar *uri = (gchar*) data; + g_assert (uri != NULL && g_str_has_prefix (uri, SEM_D_URI)); + gchar *str = g_strdup_printf ("%s", uri); + + g_free (str); +} + +static void +test_media_children (Fixture *fix, gconstpointer data) +{ + GList* children = zeitgeist_symbol_get_children (ZEITGEIST_NFO_MEDIA); + + g_assert_cmpint (g_list_length (children), >, 0); + g_list_foreach (children, is_uri_valid, NULL); + + g_list_free (children); +} + +static void +test_media_all_children (Fixture *fix, gconstpointer data) +{ + GList* children = zeitgeist_symbol_get_all_children (ZEITGEIST_NFO_MEDIA); + + g_assert_cmpint (g_list_length (children), >, 0); + g_list_foreach (children, is_uri_valid, NULL); + + g_list_free (children); +} + +static void +test_vector_image_parents (Fixture *fix, gconstpointer data) +{ + GList* parents = zeitgeist_symbol_get_parents (ZEITGEIST_NFO_VECTOR_IMAGE); + + g_assert_cmpint (g_list_length (parents), >, 0); + g_list_foreach (parents, is_uri_valid, NULL); + + g_list_free (parents); +} + +static void +test_media_complex (Fixture *fix, gconstpointer data) +{ + GList* iter; + GList* children = zeitgeist_symbol_get_children (ZEITGEIST_NFO_MEDIA); + GList* all_ch = zeitgeist_symbol_get_all_children (ZEITGEIST_NFO_MEDIA); + + g_assert_cmpint (g_list_length (children), >, 0); + g_assert_cmpint (g_list_length (all_ch), >, g_list_length (children)); + + for (iter = children; iter; iter = iter->next) + { + // check that it's also in all_children + g_assert (g_list_find_custom (all_ch, iter->data, (GCompareFunc) strcmp)); + } + + g_list_free (all_ch); + g_list_free (children); +} + +int +main (int argc, + char *argv[]) +{ + g_type_init (); + g_test_init (&argc, &argv, NULL); + + g_test_add ("/Zeitgeist/Symbols/NullNull", Fixture, NULL, + setup, test_null_symbols, teardown); + g_test_add ("/Zeitgeist/Symbols/FirstNull", Fixture, NULL, + setup, test_null_first, teardown); + g_test_add ("/Zeitgeist/Symbols/SecondNull", Fixture, NULL, + setup, test_null_second, teardown); + g_test_add ("/Zeitgeist/Symbols/NotUris", Fixture, NULL, + setup, test_not_uri, teardown); + g_test_add ("/Zeitgeist/Symbols/NotUrisEqual", Fixture, NULL, + setup, test_not_uri_equal, teardown); + g_test_add ("/Zeitgeist/Symbols/EqualUris", Fixture, NULL, + setup, test_uris_equal, teardown); + g_test_add ("/Zeitgeist/Symbols/ValidParent", Fixture, NULL, + setup, test_vector_image_media, teardown); + g_test_add ("/Zeitgeist/Symbols/ValidChild", Fixture, NULL, + setup, test_media_vector_image, teardown); + g_test_add ("/Zeitgeist/Symbols/Unrelated", Fixture, NULL, + setup, test_media_software, teardown); + g_test_add ("/Zeitgeist/Symbols/GetChildren", Fixture, NULL, + setup, test_media_children, teardown); + g_test_add ("/Zeitgeist/Symbols/GetAllChildren", Fixture, NULL, + setup, test_media_all_children, teardown); + g_test_add ("/Zeitgeist/Symbols/GetParents", Fixture, NULL, + setup, test_vector_image_parents, teardown); + g_test_add ("/Zeitgeist/Symbols/SymbolInfo", Fixture, NULL, + setup, test_media_complex, teardown); + + return g_test_run(); +}