diff options
author | Carlos Garnacho <carlosg@gnome.org> | 2022-01-16 15:40:01 +0100 |
---|---|---|
committer | Carlos Garnacho <carlosg@gnome.org> | 2022-02-10 23:36:58 +0100 |
commit | e312cb33bd513bf463c8bde5a055b5e6463ef0aa (patch) | |
tree | 6099d56b532836af88056729502f77fe4362e9fc | |
parent | 64f8b5decbf72a1bb0295ec60b249943724e088b (diff) | |
download | tracker-e312cb33bd513bf463c8bde5a055b5e6463ef0aa.tar.gz |
libtracker-data: Use TrackerRowid in ontology data
Use TrackerRowid in the places where we map properties/classes to
ROWIDs, and map between URIs an those.
-rw-r--r-- | src/libtracker-data/tracker-class.c | 6 | ||||
-rw-r--r-- | src/libtracker-data/tracker-class.h | 6 | ||||
-rw-r--r-- | src/libtracker-data/tracker-data-manager.c | 20 | ||||
-rw-r--r-- | src/libtracker-data/tracker-ontologies.c | 16 | ||||
-rw-r--r-- | src/libtracker-data/tracker-ontologies.h | 4 | ||||
-rw-r--r-- | src/libtracker-data/tracker-property.c | 6 | ||||
-rw-r--r-- | src/libtracker-data/tracker-property.h | 4 | ||||
-rw-r--r-- | src/libtracker-data/tracker-sparql.c | 2 |
8 files changed, 33 insertions, 31 deletions
diff --git a/src/libtracker-data/tracker-class.c b/src/libtracker-data/tracker-class.c index c83879f86..3a9eac370 100644 --- a/src/libtracker-data/tracker-class.c +++ b/src/libtracker-data/tracker-class.c @@ -34,7 +34,7 @@ typedef struct _TrackerClassPrivate TrackerClassPrivate; struct _TrackerClassPrivate { gchar *uri; gchar *name; - gint id; + TrackerRowid id; guint is_new : 1; guint db_schema_changed : 1; guint notify : 1; @@ -189,7 +189,7 @@ tracker_class_get_name (TrackerClass *service) return priv->name; } -gint +TrackerRowid tracker_class_get_id (TrackerClass *service) { TrackerClassPrivate *priv; @@ -367,7 +367,7 @@ tracker_class_set_uri (TrackerClass *service, void tracker_class_set_id (TrackerClass *service, - gint value) + TrackerRowid value) { TrackerClassPrivate *priv; diff --git a/src/libtracker-data/tracker-class.h b/src/libtracker-data/tracker-class.h index e806c035f..c57631595 100644 --- a/src/libtracker-data/tracker-class.h +++ b/src/libtracker-data/tracker-class.h @@ -23,6 +23,8 @@ #include <glib-object.h> +#include "tracker-rowid.h" + G_BEGIN_DECLS #if !defined (__LIBTRACKER_DATA_INSIDE__) && !defined (TRACKER_COMPILATION) @@ -53,7 +55,7 @@ GType tracker_class_get_type (void) G_GNUC_CONST; TrackerClass * tracker_class_new (gboolean use_gvdb); const gchar * tracker_class_get_uri (TrackerClass *service); const gchar * tracker_class_get_name (TrackerClass *service); -gint tracker_class_get_id (TrackerClass *service); +TrackerRowid tracker_class_get_id (TrackerClass *service); gboolean tracker_class_get_is_new (TrackerClass *service); gboolean tracker_class_get_db_schema_changed (TrackerClass *service); gboolean tracker_class_get_notify (TrackerClass *service); @@ -78,7 +80,7 @@ void tracker_class_del_domain_index (TrackerClass *ser void tracker_class_reset_domain_indexes (TrackerClass *service); void tracker_class_reset_super_classes (TrackerClass *service); void tracker_class_set_id (TrackerClass *service, - gint id); + TrackerRowid id); void tracker_class_set_is_new (TrackerClass *service, gboolean value); void tracker_class_set_db_schema_changed (TrackerClass *service, diff --git a/src/libtracker-data/tracker-data-manager.c b/src/libtracker-data/tracker-data-manager.c index ca51c9e4f..640f1de87 100644 --- a/src/libtracker-data/tracker-data-manager.c +++ b/src/libtracker-data/tracker-data-manager.c @@ -575,7 +575,7 @@ update_property_value (TrackerDataManager *manager, if (!unsup_onto_err) { GValue value = G_VALUE_INIT; - gint64 subject_id = 0; + TrackerRowid subject_id = 0; tracker_data_query_string_to_value (manager, str, NULL, @@ -614,7 +614,7 @@ update_property_value (TrackerDataManager *manager, if (!error && needed && object) { GValue value = G_VALUE_INIT; - gint64 subject_id = 0; + TrackerRowid subject_id = 0; tracker_data_query_string_to_value (manager, object, NULL, @@ -858,7 +858,7 @@ tracker_data_ontology_load_statement (TrackerDataManager *manager, if (g_strcmp0 (predicate, RDF_TYPE) == 0) { if (g_strcmp0 (object, RDFS_CLASS) == 0) { TrackerClass *class; - gint subject_id; + TrackerRowid subject_id; class = tracker_ontologies_get_class_by_uri (manager->ontologies, subject); @@ -903,7 +903,7 @@ tracker_data_ontology_load_statement (TrackerDataManager *manager, g_object_unref (class); } else if (g_strcmp0 (object, RDF_PROPERTY) == 0) { TrackerProperty *property; - gint subject_id; + TrackerRowid subject_id; property = tracker_ontologies_get_property_by_uri (manager->ontologies, subject); if (property != NULL) { @@ -1550,7 +1550,7 @@ check_for_deleted_domain_index (TrackerDataManager *manager, TrackerProperty *prop = l->data; const gchar *uri; GValue value = G_VALUE_INIT; - gint64 class_id = 0; + TrackerRowid class_id = 0; TRACKER_NOTE (ONTOLOGY_CHANGES, g_message ("Ontology change: deleting nrl:domainIndex: %s", @@ -1741,7 +1741,7 @@ check_for_deleted_super_properties (TrackerDataManager *manager, const gchar *object = tracker_property_get_uri (prop_to_remove); const gchar *subject = tracker_property_get_uri (property); GValue value = G_VALUE_INIT; - gint64 subject_id; + TrackerRowid subject_id; property = tracker_ontologies_get_property_by_uri (ontologies, TRACKER_PREFIX_RDFS "subPropertyOf"); @@ -2220,7 +2220,7 @@ tracker_data_ontology_process_statement (TrackerDataManager *manager, { TrackerProperty *property; GValue value = G_VALUE_INIT; - gint64 subject_id = 0; + TrackerRowid subject_id = 0; if (g_strcmp0 (predicate, RDF_TYPE) == 0) { if (g_strcmp0 (object, RDFS_CLASS) == 0) { @@ -2599,7 +2599,7 @@ db_get_static_data (TrackerDBInterface *iface, while (tracker_db_cursor_iter_next (cursor, NULL, &internal_error)) { TrackerClass *class; const gchar *uri; - gint id; + TrackerRowid id; GValue value = { 0 }; gboolean notify; @@ -2668,7 +2668,7 @@ db_get_static_data (TrackerDBInterface *iface, const gchar *uri, *domain_uri, *range_uri, *secondary_index_uri; gboolean multi_valued, indexed, fulltext_indexed; gboolean is_inverse_functional_property; - gint id; + TrackerRowid id; property = tracker_property_new (FALSE); @@ -2775,7 +2775,7 @@ static void insert_uri_in_resource_table (TrackerDataManager *manager, TrackerDBInterface *iface, const gchar *uri, - gint id, + TrackerRowid id, GError **error) { TrackerDBStatement *stmt; diff --git a/src/libtracker-data/tracker-ontologies.c b/src/libtracker-data/tracker-ontologies.c index ed97bf648..ef0f8306d 100644 --- a/src/libtracker-data/tracker-ontologies.c +++ b/src/libtracker-data/tracker-ontologies.c @@ -102,8 +102,8 @@ tracker_ontologies_init (TrackerOntologies *ontologies) g_free, g_object_unref); - priv->id_uri_pairs = g_hash_table_new_full (g_direct_hash, g_direct_equal, - NULL, + priv->id_uri_pairs = g_hash_table_new_full (tracker_rowid_hash, tracker_rowid_equal, + (GDestroyNotify) tracker_rowid_free, g_free); priv->properties = g_ptr_array_new_with_free_func (g_object_unref); @@ -174,13 +174,13 @@ tracker_ontologies_get_rdf_type (TrackerOntologies *ontologies) const gchar* tracker_ontologies_get_uri_by_id (TrackerOntologies *ontologies, - gint id) + TrackerRowid id) { TrackerOntologiesPrivate *priv = tracker_ontologies_get_instance_private (ontologies); g_return_val_if_fail (id != -1, NULL); - return g_hash_table_lookup (priv->id_uri_pairs, GINT_TO_POINTER (id)); + return g_hash_table_lookup (priv->id_uri_pairs, &id); } void @@ -362,13 +362,13 @@ tracker_ontologies_add_property (TrackerOntologies *ontologies, void tracker_ontologies_add_id_uri_pair (TrackerOntologies *ontologies, - gint id, + TrackerRowid id, const gchar *uri) { TrackerOntologiesPrivate *priv = tracker_ontologies_get_instance_private (ontologies); g_hash_table_insert (priv->id_uri_pairs, - GINT_TO_POINTER (id), + tracker_rowid_copy (&id), g_strdup (uri)); } @@ -561,7 +561,7 @@ tracker_ontologies_write_gvdb (TrackerOntologies *ontologies, item = gvdb_hash_table_insert_item (table, root, uri); - str = g_strdup_printf ("%d", tracker_class_get_id (class)); + str = g_strdup_printf ("%" G_GINT64_FORMAT, tracker_class_get_id (class)); gvdb_hash_table_insert_statement (table, item, uri, "id", str); g_free (str); @@ -593,7 +593,7 @@ tracker_ontologies_write_gvdb (TrackerOntologies *ontologies, item = gvdb_hash_table_insert_item (table, root, uri); - str = g_strdup_printf ("%d", tracker_property_get_id (property)); + str = g_strdup_printf ("%" G_GINT64_FORMAT, tracker_property_get_id (property)); gvdb_hash_table_insert_statement (table, item, uri, "id", str); g_free (str); diff --git a/src/libtracker-data/tracker-ontologies.h b/src/libtracker-data/tracker-ontologies.h index c984b7a2e..529be25fa 100644 --- a/src/libtracker-data/tracker-ontologies.h +++ b/src/libtracker-data/tracker-ontologies.h @@ -83,9 +83,9 @@ TrackerNamespace * tracker_ontologies_get_namespace_by_uri (TrackerOntologies *o TrackerOntology * tracker_ontologies_get_ontology_by_uri (TrackerOntologies *ontologies, const gchar *namespace_uri); const gchar* tracker_ontologies_get_uri_by_id (TrackerOntologies *ontologies, - gint id); + TrackerRowid id); void tracker_ontologies_add_id_uri_pair (TrackerOntologies *ontologies, - gint id, + TrackerRowid id, const gchar *uri); gboolean tracker_ontologies_write_gvdb (TrackerOntologies *ontologies, diff --git a/src/libtracker-data/tracker-property.c b/src/libtracker-data/tracker-property.c index 7d84a7b35..0bab37b1b 100644 --- a/src/libtracker-data/tracker-property.c +++ b/src/libtracker-data/tracker-property.c @@ -71,7 +71,7 @@ struct _TrackerPropertyPrivate { TrackerClass *domain_index; TrackerClass *range; gint weight; - gint id; + TrackerRowid id; guint use_gvdb : 1; guint indexed : 1; guint orig_fulltext_indexed : 1; @@ -469,7 +469,7 @@ tracker_property_get_weight (TrackerProperty *property) return priv->weight; } -gint +TrackerRowid tracker_property_get_id (TrackerProperty *property) { TrackerPropertyPrivate *priv; @@ -879,7 +879,7 @@ tracker_property_set_weight (TrackerProperty *property, void tracker_property_set_id (TrackerProperty *property, - gint value) + TrackerRowid value) { TrackerPropertyPrivate *priv; g_return_if_fail (TRACKER_IS_PROPERTY (property)); diff --git a/src/libtracker-data/tracker-property.h b/src/libtracker-data/tracker-property.h index 6ad6b9fda..84e98b5f5 100644 --- a/src/libtracker-data/tracker-property.h +++ b/src/libtracker-data/tracker-property.h @@ -82,7 +82,7 @@ TrackerClass * tracker_property_get_domain (TrackerProperty TrackerClass * tracker_property_get_range (TrackerProperty *property); TrackerClass ** tracker_property_get_domain_indexes (TrackerProperty *property); gint tracker_property_get_weight (TrackerProperty *property); -gint tracker_property_get_id (TrackerProperty *property); +TrackerRowid tracker_property_get_id (TrackerProperty *property); gboolean tracker_property_get_indexed (TrackerProperty *property); TrackerProperty * tracker_property_get_secondary_index (TrackerProperty *property); gboolean tracker_property_get_orig_fulltext_indexed(TrackerProperty *property); @@ -116,7 +116,7 @@ void tracker_property_set_range (TrackerProperty void tracker_property_set_weight (TrackerProperty *property, gint value); void tracker_property_set_id (TrackerProperty *property, - gint value); + TrackerRowid value); void tracker_property_set_indexed (TrackerProperty *property, gboolean value); void tracker_property_set_secondary_index (TrackerProperty *property, diff --git a/src/libtracker-data/tracker-sparql.c b/src/libtracker-data/tracker-sparql.c index a7915b441..2931c18d7 100644 --- a/src/libtracker-data/tracker-sparql.c +++ b/src/libtracker-data/tracker-sparql.c @@ -1112,7 +1112,7 @@ _prepend_path_element (TrackerSparql *sparql, _append_string (sparql, "WHERE "); } - _append_string_printf (sparql, "predicate != %d ", + _append_string_printf (sparql, "predicate != %" G_GINT64_FORMAT " ", tracker_property_get_id (path_elem->data.property)); _append_string (sparql, ") "); break; |