# HG changeset patch
# User Fabien Amarger <fabien.amarger@logilab.fr>
# Date 1709193458 -3600
#      Thu Feb 29 08:57:38 2024 +0100
# Node ID a626feac4ea4c29a9fdb11bcadd9d55523f557e9
# Parent  4e4f832447526e7e858393f06370836311493b13
feat(process): Use upload_graph_to_sparql_endpoint into the default process type

diff --git a/cubicweb_rodolf/sobjects/process_type_registry.py b/cubicweb_rodolf/sobjects/process_type_registry.py
--- a/cubicweb_rodolf/sobjects/process_type_registry.py
+++ b/cubicweb_rodolf/sobjects/process_type_registry.py
@@ -2,9 +2,11 @@
 from rdflib import Graph
 
 from cubicweb.appobject import AppObject
-from cubicweb import Binary
 
-from cubicweb_rodolf.process_helpers import get_graph_from_url
+from cubicweb_rodolf.process_helpers import (
+    get_graph_from_url,
+    upload_graph_to_sparql_endpoint,
+)
 from cubicweb_rodolf.schema import ImportProcess
 
 
@@ -14,15 +16,24 @@
 
     def __call__(self, import_process: ImportProcess, log: logging.Logger) -> Graph:
         import_recipe = import_process.import_recipe[0]
+        import_procedure = import_process.import_procedure[0]
         dataservice = import_recipe.dataservice[0]
         graph = get_graph_from_url(dataservice.data_url, log)
+        dataset_file = self._cw.create_entity(
+            "File",
+            title=f"Graph file for ImportProcess#{import_process.eid}",
+            data=Binary(graph.serialize(format="ttl").encode("utf8")),
+            data_name=f"data_ImportProcess_{import_process.eid}.ttl",
+            data_format="text/turtle",
+        )
         import_process.cw_set(
-            has_output_dataset=self._cw.create_entity(
-                "File",
-                title=f"Graph file for ImportProcess#{import_process.eid}",
-                data=Binary(graph.serialize(format="ttl").encode("utf8")),
-                data_name=f"data_ImportProcess_{import_process.eid}.ttl",
-                data_format="text/turtle",
-            )
+            has_output_dataset=dataset_file,
+        )
+        upload_graph_to_sparql_endpoint(
+            import_procedure,
+            graph,
+            import_recipe.graph_uri,
+            dataset_file.data_name,
+            log,
         )
         return graph