From aee7cd453c2ee1b7d4404c22b737d95c50cad25a Mon Sep 17 00:00:00 2001 From: Carlos Garnacho Date: Tue, 5 Oct 2021 15:05:19 +0200 Subject: [PATCH 1/2] libtracker-sparql: Add specific error code for missing nrl:lastModified Add a new error code for this specific error situation when parsing the database ontology. Based on code by Abanoub Ghadban . --- src/libtracker-data/tracker-data-manager.c | 2 +- src/libtracker-sparql/tracker-error.c | 1 + src/libtracker-sparql/tracker-error.h | 2 ++ 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/libtracker-data/tracker-data-manager.c b/src/libtracker-data/tracker-data-manager.c index 14ca1a71a..d1a8edc83 100644 --- a/src/libtracker-data/tracker-data-manager.c +++ b/src/libtracker-data/tracker-data-manager.c @@ -2121,7 +2121,7 @@ get_ontology_from_file (TrackerDataManager *manager, if (ret == NULL) { g_set_error (error, TRACKER_SPARQL_ERROR, - TRACKER_SPARQL_ERROR_OPEN_ERROR, + TRACKER_SPARQL_ERROR_MISSING_LAST_MODIFIED_HEADER, "%s: Ontology has no nrl:lastModified header", ontology_uri); goto out; } diff --git a/src/libtracker-sparql/tracker-error.c b/src/libtracker-sparql/tracker-error.c index 730655968..ec649a67c 100644 --- a/src/libtracker-sparql/tracker-error.c +++ b/src/libtracker-sparql/tracker-error.c @@ -35,6 +35,7 @@ static const GDBusErrorEntry tracker_sparql_error_entries[] = {TRACKER_SPARQL_ERROR_UNKNOWN_GRAPH, "org.freedesktop.Tracker.Error.UnknownGraph"}, {TRACKER_SPARQL_ERROR_UNKNOWN_PROPERTY, "org.freedesktop.Tracker.Error.UnknownProperty"}, {TRACKER_SPARQL_ERROR_UNSUPPORTED, "org.freedesktop.Tracker.Error.Unsupported"}, + {TRACKER_SPARQL_ERROR_MISSING_LAST_MODIFIED_HEADER, "org.freedesktop.Tracker.Error.MissingLastModifiedHeader"}, }; G_STATIC_ASSERT (G_N_ELEMENTS (tracker_sparql_error_entries) == TRACKER_SPARQL_N_ERRORS); diff --git a/src/libtracker-sparql/tracker-error.h b/src/libtracker-sparql/tracker-error.h index 68c48d094..95ca6f6a0 100644 --- a/src/libtracker-sparql/tracker-error.h +++ b/src/libtracker-sparql/tracker-error.h @@ -50,6 +50,7 @@ G_BEGIN_DECLS * @TRACKER_SPARQL_ERROR_UNKNOWN_GRAPH: Unknown graph. * @TRACKER_SPARQL_ERROR_UNKNOWN_PROPERTY: Unknown property. * @TRACKER_SPARQL_ERROR_UNSUPPORTED: Unsupported feature or method. + * @TRACKER_SPARQL_ERROR_MISSING_LAST_MODIFIED_HEADER: The ontology doesn't contain nrl:lastModified header * @TRACKER_SPARQL_N_ERRORS: The total number of error codes. * * Error domain for Tracker Sparql. Errors in this domain will be from the @@ -69,6 +70,7 @@ typedef enum { TRACKER_SPARQL_ERROR_UNKNOWN_GRAPH, TRACKER_SPARQL_ERROR_UNKNOWN_PROPERTY, TRACKER_SPARQL_ERROR_UNSUPPORTED, + TRACKER_SPARQL_ERROR_MISSING_LAST_MODIFIED_HEADER, TRACKER_SPARQL_N_ERRORS, } TrackerSparqlError; -- GitLab From fb36e343693dfab3210ed5dfd3f78da7b0fcbeb7 Mon Sep 17 00:00:00 2001 From: Carlos Garnacho Date: Tue, 5 Oct 2021 15:07:40 +0200 Subject: [PATCH 2/2] libtracker-sparql: Add specific error code for incomplete properties Add a new error code for this specific error situation when parsing the database ontology. Based on code by Abanoub Ghadban . --- src/libtracker-data/tracker-data-manager.c | 2 +- src/libtracker-sparql/tracker-error.c | 1 + src/libtracker-sparql/tracker-error.h | 2 ++ 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/libtracker-data/tracker-data-manager.c b/src/libtracker-data/tracker-data-manager.c index d1a8edc83..dad0fa323 100644 --- a/src/libtracker-data/tracker-data-manager.c +++ b/src/libtracker-data/tracker-data-manager.c @@ -1963,7 +1963,7 @@ check_properties_completeness (TrackerOntologies *ontologies, g_set_error (error, TRACKER_SPARQL_ERROR, - TRACKER_SPARQL_ERROR_OPEN_ERROR, + TRACKER_SPARQL_ERROR_INCOMPLETE_PROPERTY_DEFINITION, "%s: Property %s has no defined %s.", definition_location, property_name, missing_definition); diff --git a/src/libtracker-sparql/tracker-error.c b/src/libtracker-sparql/tracker-error.c index ec649a67c..8be2effc2 100644 --- a/src/libtracker-sparql/tracker-error.c +++ b/src/libtracker-sparql/tracker-error.c @@ -36,6 +36,7 @@ static const GDBusErrorEntry tracker_sparql_error_entries[] = {TRACKER_SPARQL_ERROR_UNKNOWN_PROPERTY, "org.freedesktop.Tracker.Error.UnknownProperty"}, {TRACKER_SPARQL_ERROR_UNSUPPORTED, "org.freedesktop.Tracker.Error.Unsupported"}, {TRACKER_SPARQL_ERROR_MISSING_LAST_MODIFIED_HEADER, "org.freedesktop.Tracker.Error.MissingLastModifiedHeader"}, + {TRACKER_SPARQL_ERROR_INCOMPLETE_PROPERTY_DEFINITION, "org.freedesktop.Tracker.Error.IncompleteProperty"}, }; G_STATIC_ASSERT (G_N_ELEMENTS (tracker_sparql_error_entries) == TRACKER_SPARQL_N_ERRORS); diff --git a/src/libtracker-sparql/tracker-error.h b/src/libtracker-sparql/tracker-error.h index 95ca6f6a0..e56cfb2c1 100644 --- a/src/libtracker-sparql/tracker-error.h +++ b/src/libtracker-sparql/tracker-error.h @@ -51,6 +51,7 @@ G_BEGIN_DECLS * @TRACKER_SPARQL_ERROR_UNKNOWN_PROPERTY: Unknown property. * @TRACKER_SPARQL_ERROR_UNSUPPORTED: Unsupported feature or method. * @TRACKER_SPARQL_ERROR_MISSING_LAST_MODIFIED_HEADER: The ontology doesn't contain nrl:lastModified header + * @TRACKER_SPARQL_ERROR_INCOMPLETE_PROPERTY_DEFINITION: The property is not completely defined. * @TRACKER_SPARQL_N_ERRORS: The total number of error codes. * * Error domain for Tracker Sparql. Errors in this domain will be from the @@ -71,6 +72,7 @@ typedef enum { TRACKER_SPARQL_ERROR_UNKNOWN_PROPERTY, TRACKER_SPARQL_ERROR_UNSUPPORTED, TRACKER_SPARQL_ERROR_MISSING_LAST_MODIFIED_HEADER, + TRACKER_SPARQL_ERROR_INCOMPLETE_PROPERTY_DEFINITION, TRACKER_SPARQL_N_ERRORS, } TrackerSparqlError; -- GitLab