[gnome-photos/wip/rishi/tracker3] isPartOf -> isLogicalPartOf; fix collection icon query



commit b8c2512a4ae5bdb85bac136085b700aa1a6573a0
Author: Debarshi Ray <debarshir gnome org>
Date:   Wed Mar 10 01:59:28 2021 +0100

    isPartOf -> isLogicalPartOf; fix collection icon query

 src/photos-base-item.c                       |  2 +-
 src/photos-query-all.sparql.template         |  2 +-
 src/photos-query-builder.c                   | 31 +++++++++++++++++++++-------
 src/photos-query-collections.sparql.template |  4 ++--
 4 files changed, 27 insertions(+), 12 deletions(-)
---
diff --git a/src/photos-base-item.c b/src/photos-base-item.c
index 0d72f9c5..f9d66865 100644
--- a/src/photos-base-item.c
+++ b/src/photos-base-item.c
@@ -3773,7 +3773,7 @@ photos_base_item_get_where (PhotosBaseItem *self)
   priv = photos_base_item_get_instance_private (self);
 
   if (priv->collection)
-    ret_val = g_strconcat ("{ ?urn nie:isPartOf <", priv->id, "> }", NULL);
+    ret_val = g_strconcat ("{ ?urn nie:isLogicalPartOf <", priv->id, "> }", NULL);
   else
     ret_val = g_strdup ("");
 
diff --git a/src/photos-query-all.sparql.template b/src/photos-query-all.sparql.template
index 01c90852..f1cf8cfc 100644
--- a/src/photos-query-all.sparql.template
+++ b/src/photos-query-all.sparql.template
@@ -27,7 +27,7 @@ FROM NAMED tracker:Pictures
                     {{values}}
                     VALUES (?file ?filename) { ("" "") }
                     ?urn a nfo:DataContainer.
-                    ?item a nmm:Photo ; nie:isPartOf ?urn .
+                    ?item a nmm:Photo ; nie:isLogicalPartOf ?urn .
                     {{item_where}}
                 }
                 GROUP BY (?urn)
diff --git a/src/photos-query-builder.c b/src/photos-query-builder.c
index 021a78a1..4c9de1ea 100644
--- a/src/photos-query-builder.c
+++ b/src/photos-query-builder.c
@@ -198,14 +198,28 @@ photos_query_builder_create_collection_query (PhotosSearchContextState *state,
 PhotosQuery *
 photos_query_builder_collection_icon_query (PhotosSearchContextState *state, const gchar *resource)
 {
+  GApplication *app;
   PhotosQuery *query;
+  const gchar *miner_files_name;
   g_autofree gchar *sparql = NULL;
 
-  sparql = g_strdup_printf ("SELECT ?urn "
-                            "tracker:coalesce(nfo:fileLastModified(?urn), nie:contentLastModified(?urn)) AS 
?mtime "
-                            "WHERE { ?urn nie:isPartOf <%s> } "
-                            "ORDER BY DESC (?mtime) LIMIT 4",
-                            resource);
+  app = g_application_get_default ();
+  miner_files_name = photos_application_get_miner_files_name (PHOTOS_APPLICATION (app));
+
+  sparql
+    = g_strdup_printf ("SELECT ?urn "
+                       "tracker:coalesce(nfo:fileLastModified(?file), nie:contentLastModified(?urn)) AS 
?mtime "
+                       "WHERE {"
+                       "  SERVICE <dbus:%s> {"
+                       "    GRAPH tracker:Pictures {"
+                       "      SELECT ?urn WHERE { ?urn a nmm:Photo ; nie:isStoredAs ?file . }"
+                       "    }"
+                       "  }"
+                       "  ?urn nie:isLogicalPartOf <%s> . "
+                       "}"
+                       "ORDER BY DESC (?mtime) LIMIT 4",
+                       miner_files_name,
+                       resource);
 
   query = photos_query_new (state, sparql);
 
@@ -296,7 +310,8 @@ photos_query_builder_fetch_collections_for_urn_query (PhotosSearchContextState *
   PhotosQuery *query;
   g_autofree gchar *sparql = NULL;
 
-  sparql = g_strdup_printf ("SELECT ?urn WHERE { ?urn a nfo:DataContainer . <%s> nie:isPartOf ?urn }", 
resource);
+  sparql = g_strdup_printf ("SELECT ?urn WHERE { ?urn a nfo:DataContainer . <%s> nie:isLogicalPartOf ?urn }",
+                            resource);
   query = photos_query_new (state, sparql);
 
   return query;
@@ -363,7 +378,7 @@ photos_query_builder_set_collection_query (PhotosSearchContextState *state,
     {
       sparql = g_strdup_printf ("INSERT DATA { "
                                 "  GRAPH tracker:Pictures {"
-                                "    <%s> a nie:DataObject , nmm:Photo ; nie:isPartOf <%s> ."
+                                "    <%s> a nmm:Photo ; nie:isLogicalPartOf <%s> ."
                                 "  }"
                                 "}", item_urn, collection_urn);
     }
@@ -371,7 +386,7 @@ photos_query_builder_set_collection_query (PhotosSearchContextState *state,
     {
       sparql = g_strdup_printf ("DELETE DATA { "
                                 "  GRAPH tracker:Pictures {"
-                                "    <%s> nie:isPartOf <%s> "
+                                "    <%s> nie:isLogicalPartOf <%s> "
                                 "  }"
                                 "}", item_urn, collection_urn);
     }
diff --git a/src/photos-query-collections.sparql.template b/src/photos-query-collections.sparql.template
index 46b907f9..36b0884b 100644
--- a/src/photos-query-collections.sparql.template
+++ b/src/photos-query-collections.sparql.template
@@ -31,7 +31,7 @@ FROM tracker:Pictures
                             {{values}}
                             VALUES (?file ?filename) { ("" "") }
                             ?urn a nfo:DataContainer .
-                            ?item a nmm:Photo ; nie:isPartOf ?urn .
+                            ?item a nmm:Photo ; nie:isLogicalPartOf ?urn .
                             {{item_where}}
                         }
                         GROUP BY (?urn)
@@ -53,7 +53,7 @@ FROM tracker:Pictures
                     {{values}}
                     VALUES (?file ?filename) { ("" "") }
                     ?urn a nfo:DataContainer .
-                    ?item a nmm:Photo ; nie:isPartOf ?urn .
+                    ?item a nmm:Photo ; nie:isLogicalPartOf ?urn .
                     {{item_where}}
                 }
                 GROUP BY (?urn)


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]