[tracker/coalesce-support: 1/2] Add tracker:coalesce function
- From: Mikael Ottela <mottela src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [tracker/coalesce-support: 1/2] Add tracker:coalesce function
- Date: Mon, 21 Dec 2009 12:47:32 +0000 (UTC)
commit f7043f1e39fa0cd48d8f9bd58c66d19e9a5d3644
Author: Mikael Ottela <mikael ottela ixonos com>
Date: Thu Dec 17 20:38:57 2009 +0200
Add tracker:coalesce function
src/libtracker-data/tracker-sparql-query.vala | 14 ++++++++++++++
1 files changed, 14 insertions(+), 0 deletions(-)
---
diff --git a/src/libtracker-data/tracker-sparql-query.vala b/src/libtracker-data/tracker-sparql-query.vala
index a5b3c36..b77b05c 100644
--- a/src/libtracker-data/tracker-sparql-query.vala
+++ b/src/libtracker-data/tracker-sparql-query.vala
@@ -241,6 +241,7 @@ public class Tracker.SparqlQuery : Object {
const string FN_NS = "http://www.w3.org/2005/xpath-functions#";
const string FTS_NS = "http://www.tracker-project.org/ontologies/fts#";
+ const string TRACKER_NS = "http://www.tracker-project.org/ontologies/tracker#";
string query_string;
bool update_extensions;
@@ -1407,6 +1408,19 @@ public class Tracker.SparqlQuery : Object {
sql.append_printf ("\"%s_u_offsets\"", v);
return PropertyType.STRING;
+ } else if (uri == TRACKER_NS + "coalesce") {
+ sql.append ("COALESCE(");
+ translate_expression_as_string (sql);
+ sql.append (", ");
+ expect (SparqlTokenType.COMMA);
+ translate_expression_as_string (sql);
+ while (accept (SparqlTokenType.COMMA)) {
+ sql.append (", ");
+ translate_expression_as_string (sql);
+ }
+ sql.append (")");
+
+ return PropertyType.STRING;
} else {
// support properties as functions
var prop = Ontology.get_property_by_uri (uri);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]