about summary refs log tree commit diff
diff options
context:
space:
mode:
authorMunyoki Kilyungi2023-05-29 11:25:42 +0300
committerBonfaceKilz2023-05-30 11:51:30 +0300
commit128b2a9ff19356529a9d09a15b680dcf1b8f8482 (patch)
tree514a6e51080b73f529ce13d6ad7cc0586ad698cf
parent319ba985efd3c43952040826a4e868396991c1aa (diff)
downloadgn-transform-databases-128b2a9ff19356529a9d09a15b680dcf1b8f8482.tar.gz
Allow upleading all files in a directory to virtuoso
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
-rwxr-xr-xload-rdf.scm45
1 files changed, 25 insertions, 20 deletions
diff --git a/load-rdf.scm b/load-rdf.scm
index 6719bd5..e07665f 100755
--- a/load-rdf.scm
+++ b/load-rdf.scm
@@ -185,26 +185,31 @@ DELETE FROM rdf_quad WHERE g = iri_to_id ('~a');"
                      (assq-ref connection-settings 'virtuoso-password)
                      %graph-uri)))
        ;; Load data into virtuoso.
-       (ftw rdf-file
-            (lambda (filename statinfo flag)
-              (begin
-                (when (eq? 'regular (stat:type statinfo))
-                  (format (current-output-port)
-                          "~a loaded into virtuoso in ~a seconds~%"
-                          filename
-                          (time-thunk
-                           (cut put-graph
-                                (build-uri
-                                 (assq-ref connection-settings 'sparql-scheme)
-                                 #:host (assq-ref connection-settings 'sparql-host)
-                                 #:port (assq-ref connection-settings 'sparql-port)
-                                 #:path "/sparql-graph-crud-auth")
-                                (assq-ref connection-settings 'virtuoso-username)
-                                (assq-ref connection-settings 'virtuoso-password)
-                                filename
-                                %graph-uri
-                                #t))))
-                #t)))))
+       (let ((host (assq-ref connection-settings 'sparql-host))
+             (port (assq-ref connection-settings 'sparql-port))
+             (path "/sparql-graph-crud-auth")
+             (username (assq-ref connection-settings 'virtuoso-username))
+             (password (assq-ref connection-settings 'virtuoso-password)))
+         (ftw rdf-file
+              (lambda (filename statinfo flag)
+                (begin
+                  (when (eq? 'regular (stat:type statinfo))
+                    (format (current-output-port)
+                            "~a loaded into virtuoso in ~a seconds~%"
+                            filename
+                            (time-thunk
+                             (cut put-graph
+                                  (build-uri
+                                   (assq-ref connection-settings 'sparql-scheme)
+                                   #:host host
+                                   #:port port
+                                   #:path path)
+                                  username
+                                  password
+                                  filename
+                                  %graph-uri
+                                  #t))))
+                  #t))))))
     ((arg0 _ ...)
      (format (current-error-port) "Usage: ~a CONNECTION-SETTINGS-FILE RDF-FILE-OR-RDF-DIR~%" arg0)
      (exit #f))))