Adds system to load initial project data

This commit is contained in:
alonso.torres 2021-01-19 15:04:28 +01:00 committed by Andrey Antukh
parent dfc6ebfeb0
commit 66fe0048a5
5 changed files with 174 additions and 11 deletions

View file

@ -94,16 +94,19 @@
(def ^:private sql:retrieve-storage-object
"select * from storage_object where id = ? and deleted_at is null")
(defn row->storage-object [res]
(let [mdata (some-> (:metadata res) (db/decode-transit-pgobject))]
(StorageObject. (:id res)
(:size res)
(:created-at res)
(keyword (:backend res))
mdata
nil)))
(defn- retrieve-database-object
[{:keys [conn] :as storage} id]
(when-let [res (db/exec-one! conn [sql:retrieve-storage-object id])]
(let [mdata (some-> (:metadata res) (db/decode-transit-pgobject))]
(StorageObject. (:id res)
(:size res)
(:created-at res)
(keyword (:backend res))
mdata
nil))))
(row->storage-object res)))
(def sql:delete-storage-object
"update storage_object set deleted_at=now() where id=? and deleted_at is null")