update-cert | (fn [id new-metadata-hash new-title] (let [cert (get #134/registry %0) ] (cond (nil? %3) (fail :NOT-FOUND "Certificate does not exist") nil) (let [updated (assoc %3 :metadata-hash %1 :title %2 :updated-at *timestamp*) ] (cond (lookup-meta *address* registry) (def registry (assoc #134/registry %0 %4)) (fail :UNDECLARED registry)) %4))) | nil |
owned-by | (fn [user-id] (cond (get #134/ownership %0) *result* #{})) | nil |
init-next-id | (fn [start-id] (do (cond (lookup-meta *address* next-id) (def next-id %0) (fail :UNDECLARED next-id)) %0)) | nil |
next-id | 9729 | nil |
ownership | {"cmffwzmy30008jt8gib1vptav" #{9728}} | nil |
total-issued | (fn [] (dec #134/next-id)) | nil |
lookup | (fn [id] (get #134/registry %0)) | nil |
transfer-cert | (fn [id new-user-id] (let [cert (get #134/registry %0) ] (cond (nil? %2) (fail :NOT-FOUND "Certificate does not exist") nil) (let [old-user (get %2 :user-id) updated (assoc %2 :user-id %1) ] (cond (lookup-meta *address* registry) (def registry (assoc #134/registry %0 %4)) (fail :UNDECLARED registry)) (cond (lookup-meta *address* ownership) (def ownership (assoc #134/ownership %3 (disj (get #134/ownership %3) %0))) (fail :UNDECLARED ownership)) (cond (lookup-meta *address* ownership) (def ownership (assoc #134/ownership %1 (conj (cond (get #134/ownership %1) *result* #{}) %0))) (fail :UNDECLARED ownership)) %4))) | nil |
registry | {9728 {:timestamp 1773253580953,:user-id "cmffwzmy30008jt8gib1vptav",:registered-by #133,:metadata-hash "110021ad74ca1f28a160bcea424c343dd11b283e315d35b8012bfdf1696bc77d",:title "Tongue Tied",:id 9728}} | nil |
register | (fn [user-id metadata-hash title-hint] (let [id #134/next-id cert (hash-map :timestamp *timestamp* :user-id %0 :registered-by *caller* :metadata-hash %1 :title %2 :id %3) ] (cond (lookup-meta *address* next-id) (def next-id (inc %3)) (fail :UNDECLARED next-id)) (cond (lookup-meta *address* registry) (def registry (assoc #134/registry %3 %4)) (fail :UNDECLARED registry)) (cond (lookup-meta *address* ownership) (def ownership (assoc #134/ownership %0 (conj (cond (get #134/ownership %0) *result* #{}) %3))) (fail :UNDECLARED ownership)) %4)) | nil |