[tracker] Add tracker:modified property
- From: Jürg Billeter <juergbi src gnome org>
- To: svn-commits-list gnome org
- Subject: [tracker] Add tracker:modified property
- Date: Tue, 19 May 2009 11:14:31 -0400 (EDT)
commit 631a609f3f8440f3993f917198e3660d7ba11713
Author: Jürg Billeter <j bitron ch>
Date: Tue May 19 17:00:42 2009 +0200
Add tracker:modified property
This property gets implicitly updated when statements about the resource
are inserted or deleted. It can be used for synchronization purposes.
---
data/ontologies/11-rdf.ontology | 7 +++++++
src/libtracker-data/tracker-data-manager.c | 4 ++--
src/libtracker-data/tracker-data-update.c | 6 +++---
3 files changed, 12 insertions(+), 5 deletions(-)
diff --git a/data/ontologies/11-rdf.ontology b/data/ontologies/11-rdf.ontology
index f67957d..28c7589 100644
--- a/data/ontologies/11-rdf.ontology
+++ b/data/ontologies/11-rdf.ontology
@@ -84,3 +84,10 @@ tracker:transient a rdf:Property ;
nrl:maxCardinality 1 ;
rdfs:domain rdf:Property ;
rdfs:range xsd:boolean .
+
+# implicitly updated modification time
+tracker:modified a rdf:Property ;
+ nrl:maxCardinality 1 ;
+ rdfs:domain rdfs:Resource ;
+ rdfs:range xsd:dateTime .
+
diff --git a/src/libtracker-data/tracker-data-manager.c b/src/libtracker-data/tracker-data-manager.c
index 16f7ef0..7e5fef6 100644
--- a/src/libtracker-data/tracker-data-manager.c
+++ b/src/libtracker-data/tracker-data-manager.c
@@ -636,7 +636,7 @@ create_decomposed_metadata_tables (TrackerDBInterface *iface,
sql = g_string_new ("");
g_string_append_printf (sql, "CREATE TABLE \"%s\" (ID INTEGER NOT NULL PRIMARY KEY", service_name);
if (main_class) {
- g_string_append (sql, ", Uri TEXT NOT NULL, Modified INTEGER NOT NULL, Available INTEGER NOT NULL");
+ g_string_append (sql, ", Uri TEXT NOT NULL, Available INTEGER NOT NULL");
}
properties = tracker_ontology_get_properties ();
@@ -696,7 +696,7 @@ create_decomposed_metadata_tables (TrackerDBInterface *iface,
TrackerDBStatement *stmt;
stmt = tracker_db_interface_create_statement (iface,
- "INSERT OR IGNORE INTO \"rdfs:Resource\" (ID, Uri, Modified) VALUES (?, ?, ?)");
+ "INSERT OR IGNORE INTO \"rdfs:Resource\" (ID, Uri, \"tracker:modified\") VALUES (?, ?, ?)");
tracker_db_statement_bind_int (stmt, 0, ++(*max_id));
tracker_db_statement_bind_text (stmt, 1, tracker_class_get_uri (service));
tracker_db_statement_bind_int64 (stmt, 2, (gint64) time (NULL));
diff --git a/src/libtracker-data/tracker-data-update.c b/src/libtracker-data/tracker-data-update.c
index a970a23..5cbdc35 100644
--- a/src/libtracker-data/tracker-data-update.c
+++ b/src/libtracker-data/tracker-data-update.c
@@ -253,7 +253,7 @@ ensure_resource_id (const gchar *uri)
iface = tracker_db_manager_get_db_interface ();
id = tracker_data_update_get_new_service_id (common);
- stmt = tracker_db_interface_create_statement (iface, "INSERT INTO \"rdfs:Resource\" (ID, Uri, Modified, Available) VALUES (?, ?, ?, 1)");
+ stmt = tracker_db_interface_create_statement (iface, "INSERT INTO \"rdfs:Resource\" (ID, Uri, \"tracker:modified\", Available) VALUES (?, ?, ?, 1)");
tracker_db_statement_bind_int (stmt, 0, id);
tracker_db_statement_bind_text (stmt, 1, uri);
tracker_db_statement_bind_int64 (stmt, 2, (gint64) time(NULL));
@@ -957,7 +957,7 @@ tracker_data_insert_statement (const gchar *subject,
update_buffer.types = tracker_data_query_rdf_type (update_buffer.id);
g_value_set_int64 (&gvalue, (gint64) time (NULL));
- cache_insert_value ("rdfs:Resource", "Modified", &gvalue, FALSE, FALSE);
+ cache_insert_value ("rdfs:Resource", "tracker:modified", &gvalue, FALSE, FALSE);
}
if (strcmp (predicate, RDF_PREFIX "type") == 0) {
@@ -1043,7 +1043,7 @@ tracker_data_update_replace_service (const gchar *uri,
iface = tracker_db_manager_get_db_interface ();
result_set = tracker_db_interface_execute_query (iface, &error,
- "SELECT ID, Modified < '%s' FROM \"rdfs:Resource\" "
+ "SELECT ID, \"tracker:modified\" < '%s' FROM \"rdfs:Resource\" "
"WHERE Uri = '%s'",
modified,
escaped_uri);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]