[tracker/anonymous-file-nodes: 6/6] Make tracker-info not rely on ID==URI.
- From: Carlos Garnacho <carlosg src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [tracker/anonymous-file-nodes: 6/6] Make tracker-info not rely on ID==URI.
- Date: Tue, 26 Jan 2010 11:26:45 +0000 (UTC)
commit 3c71dcd66b46a0c5d744ec4173beecc063e6d8c5
Author: Carlos Garnacho <carlos lanedo com>
Date: Tue Jan 26 12:21:27 2010 +0100
Make tracker-info not rely on ID==URI.
src/tracker-utils/tracker-info.c | 30 +++++++++++++++++++++++++++++-
1 files changed, 29 insertions(+), 1 deletions(-)
---
diff --git a/src/tracker-utils/tracker-info.c b/src/tracker-utils/tracker-info.c
index 8d64d5d..ed0145f 100644
--- a/src/tracker-utils/tracker-info.c
+++ b/src/tracker-utils/tracker-info.c
@@ -141,6 +141,7 @@ main (int argc, char **argv)
GError *error = NULL;
gchar *uri;
gchar *query;
+ gchar *urn;
g_print ("%s:'%s'\n",
_("Querying information for file"),
@@ -157,7 +158,34 @@ main (int argc, char **argv)
g_object_unref (file);
}
- query = g_strdup_printf ("SELECT ?predicate ?object WHERE { <%s> ?predicate ?object }", uri);
+ query = g_strdup_printf ("SELECT ?urn WHERE { ?urn nie:url \"%s\" }", uri);
+ results = tracker_resources_sparql_query (client, query, &error);
+ g_free (query);
+
+ if (error) {
+ g_printerr (" %s, %s\n",
+ _("Unable to retrieve URN for URI"),
+ error->message);
+
+ g_error_free (error);
+ continue;
+ }
+
+ if (!results) {
+ g_print (" %s\n",
+ _("No URN available for that URI"));
+ continue;
+ } else {
+ gchar **args;
+
+ args = g_ptr_array_index (results, 0);
+ urn = g_strdup (args[0]);
+
+ g_ptr_array_foreach (results, (GFunc) g_strfreev, NULL);
+ g_ptr_array_free (results, TRUE);
+ }
+
+ query = g_strdup_printf ("SELECT ?predicate ?object WHERE { <%s> ?predicate ?object }", urn);
results = tracker_resources_sparql_query (client, query, &error);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]