Loading scripts/convert-ql-dist.lisp +4 −2 Original line number Diff line number Diff line Loading @@ -25,8 +25,10 @@ :uri ql-dist-uri :cache-pathname ql-cache-dir :http-client http-client)) (index (make-instance 'clpi:file-index :root clpi-dir))) (index (make-instance 'ql-clpi:ql-index :object-store (make-instance 'clpi:file-object-store :root clpi-dir)))) (ql-dist-to-clpi ql-dist index :appendable-p appendable-p) index)) Loading src/ql-clpi-index.lisp +21 −26 Original line number Diff line number Diff line Loading @@ -6,10 +6,7 @@ (uiop:define-package #:ql-clpi/ql-clpi-index (:use #:cl) (:import-from #:clpi) (:export #:ql-dual-index #:ql-file-index #:ql-http-index #:ql-index (:export #:ql-index #:ql-index-latest-version-synced #:ql-project-version-aliases)) Loading @@ -23,17 +20,8 @@ :initarg :latest-version-synced :accessor ql-index-latest-version-synced))) (defclass ql-file-index (ql-index clpi:file-index) ()) (defclass ql-http-index (ql-index clpi:http-index) ()) (defclass ql-dual-index (ql-index clpi:dual-index) ()) (defmethod slot-unbound (class (index ql-index) (slot-name (eql 'latest-version-synced))) (clpi:with-open-index-object-stream (s index "ext/ql/latest-version-synced" (clpi:with-open-object-stream (s (clpi:index-object-store index) "ext/ql/latest-version-synced" :if-does-not-exist nil) (setf (ql-index-latest-version-synced index) (when s Loading @@ -42,7 +30,7 @@ (defmethod clpi:index-save :after ((index ql-index)) (when (slot-boundp index 'latest-version-synced) (clpi:with-open-index-object-stream (s index "ext/ql/latest-version-synced" (clpi:with-open-object-stream (s (clpi:index-object-store index) "ext/ql/latest-version-synced" :direction :output :if-exists :supersede) (clpi:with-clpi-io-syntax () Loading @@ -52,6 +40,14 @@ (defmethod clpi:index-project-class ((index ql-index)) 'ql-project) (defmethod clpi:index-sync :after ((index ql-index)) (let ((object-store (clpi:index-object-store index))) (when (typep object-store 'clpi:dual-object-store) (clpi:dual-object-store-update-object object-store "ext/ql/latest-version-synced") (dolist (p (clpi:index-projects index)) (clpi:dual-object-store-update-object object-store (clpi:project-object-path p "ext/ql/version-aliases")))))) ;; * Projects Loading @@ -61,9 +57,8 @@ :accessor ql-project-version-aliases))) (defmethod slot-unbound (class (project ql-project) (slot-name (eql 'version-aliases))) (clpi:with-open-index-object-stream (s (clpi:index project) (clpi:project-object-path project "ext/ql/version-aliases") (clpi:with-open-object-stream (s (clpi:index-object-store (clpi:index project)) (clpi:project-object-path project "ext/ql/version-aliases") :if-does-not-exist nil) (setf (ql-project-version-aliases project) (when s Loading @@ -72,7 +67,7 @@ (defmethod clpi:project-save :after ((project ql-project)) (when (slot-boundp project 'version-aliases) (clpi:with-open-index-object-stream (s (clpi:index project) (clpi:with-open-object-stream (s (clpi:index-object-store (clpi:index project)) (clpi:project-object-path project "ext/ql/version-aliases") :direction :output :if-exists :supersede) Loading src/ql-clpi.lisp +1 −3 Original line number Diff line number Diff line Loading @@ -14,9 +14,7 @@ (:import-from #:clpi) (:export #:ql-dist #:ql-dist-to-clpi #:ql-dual-index #:ql-file-index #:ql-http-index #:ql-index #:project-version-aliases)) (in-package #:ql-clpi/ql-clpi) Loading Loading
scripts/convert-ql-dist.lisp +4 −2 Original line number Diff line number Diff line Loading @@ -25,8 +25,10 @@ :uri ql-dist-uri :cache-pathname ql-cache-dir :http-client http-client)) (index (make-instance 'clpi:file-index :root clpi-dir))) (index (make-instance 'ql-clpi:ql-index :object-store (make-instance 'clpi:file-object-store :root clpi-dir)))) (ql-dist-to-clpi ql-dist index :appendable-p appendable-p) index)) Loading
src/ql-clpi-index.lisp +21 −26 Original line number Diff line number Diff line Loading @@ -6,10 +6,7 @@ (uiop:define-package #:ql-clpi/ql-clpi-index (:use #:cl) (:import-from #:clpi) (:export #:ql-dual-index #:ql-file-index #:ql-http-index #:ql-index (:export #:ql-index #:ql-index-latest-version-synced #:ql-project-version-aliases)) Loading @@ -23,17 +20,8 @@ :initarg :latest-version-synced :accessor ql-index-latest-version-synced))) (defclass ql-file-index (ql-index clpi:file-index) ()) (defclass ql-http-index (ql-index clpi:http-index) ()) (defclass ql-dual-index (ql-index clpi:dual-index) ()) (defmethod slot-unbound (class (index ql-index) (slot-name (eql 'latest-version-synced))) (clpi:with-open-index-object-stream (s index "ext/ql/latest-version-synced" (clpi:with-open-object-stream (s (clpi:index-object-store index) "ext/ql/latest-version-synced" :if-does-not-exist nil) (setf (ql-index-latest-version-synced index) (when s Loading @@ -42,7 +30,7 @@ (defmethod clpi:index-save :after ((index ql-index)) (when (slot-boundp index 'latest-version-synced) (clpi:with-open-index-object-stream (s index "ext/ql/latest-version-synced" (clpi:with-open-object-stream (s (clpi:index-object-store index) "ext/ql/latest-version-synced" :direction :output :if-exists :supersede) (clpi:with-clpi-io-syntax () Loading @@ -52,6 +40,14 @@ (defmethod clpi:index-project-class ((index ql-index)) 'ql-project) (defmethod clpi:index-sync :after ((index ql-index)) (let ((object-store (clpi:index-object-store index))) (when (typep object-store 'clpi:dual-object-store) (clpi:dual-object-store-update-object object-store "ext/ql/latest-version-synced") (dolist (p (clpi:index-projects index)) (clpi:dual-object-store-update-object object-store (clpi:project-object-path p "ext/ql/version-aliases")))))) ;; * Projects Loading @@ -61,9 +57,8 @@ :accessor ql-project-version-aliases))) (defmethod slot-unbound (class (project ql-project) (slot-name (eql 'version-aliases))) (clpi:with-open-index-object-stream (s (clpi:index project) (clpi:project-object-path project "ext/ql/version-aliases") (clpi:with-open-object-stream (s (clpi:index-object-store (clpi:index project)) (clpi:project-object-path project "ext/ql/version-aliases") :if-does-not-exist nil) (setf (ql-project-version-aliases project) (when s Loading @@ -72,7 +67,7 @@ (defmethod clpi:project-save :after ((project ql-project)) (when (slot-boundp project 'version-aliases) (clpi:with-open-index-object-stream (s (clpi:index project) (clpi:with-open-object-stream (s (clpi:index-object-store (clpi:index project)) (clpi:project-object-path project "ext/ql/version-aliases") :direction :output :if-exists :supersede) Loading
src/ql-clpi.lisp +1 −3 Original line number Diff line number Diff line Loading @@ -14,9 +14,7 @@ (:import-from #:clpi) (:export #:ql-dist #:ql-dist-to-clpi #:ql-dual-index #:ql-file-index #:ql-http-index #:ql-index #:project-version-aliases)) (in-package #:ql-clpi/ql-clpi) Loading