[tracker/wip/carlosg/backports-for-3-1: 4/16] libtracker-data: Update ontology nrl:lastModified with GDateTime
- From: Carlos Garnacho <carlosg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [tracker/wip/carlosg/backports-for-3-1: 4/16] libtracker-data: Update ontology nrl:lastModified with GDateTime
- Date: Fri, 11 Jun 2021 13:52:12 +0000 (UTC)
commit 123a2d09f8a048b9217b95308ee0bc1aef31a46b
Author: Carlos Garnacho <carlosg gnome org>
Date: Wed Apr 7 12:26:50 2021 +0200
libtracker-data: Update ontology nrl:lastModified with GDateTime
Instead of our own helpers.
src/libtracker-data/tracker-data-manager.c | 26 ++++++++++++++++++++++++--
1 file changed, 24 insertions(+), 2 deletions(-)
---
diff --git a/src/libtracker-data/tracker-data-manager.c b/src/libtracker-data/tracker-data-manager.c
index 2be94685d..264f6a5ea 100644
--- a/src/libtracker-data/tracker-data-manager.c
+++ b/src/libtracker-data/tracker-data-manager.c
@@ -1243,6 +1243,8 @@ tracker_data_ontology_load_statement (TrackerDataManager *manager,
tracker_namespace_set_prefix (namespace, object);
} else if (g_strcmp0 (predicate, NRL_LAST_MODIFIED) == 0) {
TrackerOntology *ontology;
+ GDateTime *datetime;
+ GError *error = NULL;
ontology = tracker_ontologies_get_ontology_by_uri (manager->ontologies, subject);
if (ontology == NULL) {
@@ -1254,7 +1256,16 @@ tracker_data_ontology_load_statement (TrackerDataManager *manager,
return;
}
- tracker_ontology_set_last_modified (ontology, tracker_string_to_date (object, NULL, NULL));
+ datetime = tracker_date_new_from_iso8601 (object, &error);
+ if (!datetime) {
+ g_critical ("%s: error parsing nrl:lastModified: %s",
+ ontology_path, error->message);
+ g_error_free (error);
+ return;
+ }
+
+ tracker_ontology_set_last_modified (ontology, g_date_time_to_unix (datetime));
+ g_date_time_unref (datetime);
}
}
@@ -1856,6 +1867,8 @@ get_ontology_from_file (TrackerDataManager *manager,
}
} else if (g_strcmp0 (predicate, NRL_LAST_MODIFIED) == 0) {
TrackerOntology *ontology;
+ GDateTime *datetime;
+ GError *error = NULL;
ontology = g_hash_table_lookup (ontology_uris, subject);
if (ontology == NULL) {
@@ -1865,7 +1878,16 @@ get_ontology_from_file (TrackerDataManager *manager,
return NULL;
}
- tracker_ontology_set_last_modified (ontology, tracker_string_to_date (object, NULL,
NULL));
+ datetime = tracker_date_new_from_iso8601 (object, NULL);
+ if (!datetime) {
+ g_critical ("%s: error parsing nrl:lastModified: %s",
+ subject, error->message);
+ g_error_free (error);
+ return NULL;
+ }
+
+ tracker_ontology_set_last_modified (ontology, g_date_time_to_unix (datetime));
+ g_date_time_unref (datetime);
/* This one is here because lower ontology_uris is destroyed, and
* else would this one's reference also be destroyed with it */
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]