Sebastian's Gopherspace (HTTP Gateway)

Introduction
------------------------------------------------------------
 
This library provides a content-addressable block store.
 
 
Installation
------------------------------------------------------------
 
This library can be installed from Clojars[1].
 
Leiningen/Boot
--------------
 
[zcfux/blocks-monger "0.3.0"]
 
 
Usage
------------------------------------------------------------
 
The blocks.store.monger namespace provides the
monger-block-store constructor. Specify at least the host
and db-name option to connect to your MongoDB server.
 
Blocks are stored in a collection named blocks. Each
document contains the hex-encoded id of the stored block,
meta data, algorithm and data (base64 encoded).
 
  => (require '[blocks.core :as blocks]
              '[blocks.store.monger])
 
  ; create a new block store:
  => (def store (blocks/->store
                 "monger://localhost/my-storage"))
 
  ; insert block:
  => @(blocks/put! store (blocks/read! "hello world"))
  Block[hash:sha2-256:b94d27b9934d3e08a52e52d7da7dabfac484ef
  e37a5380ee9088f7ace2efcde9 11 *]
 
  ; listing blocks - data is filtered on server-side:
  => (blocks/list-seq store :limit 1
                            :algorithm
                            :sha2-256
                            :after "122")
  (Block[hash:sha2-256:b94d27b9934d3e08a52e52d7da7dabfac484e
  fe37a5380ee9088f7ace2efcde9 11 *])
 
  ; deleting all documents:
  (blocks/erase! store)
 
 
References
------------------------------------------------------------
[1]: Clojars
 
 
Links
------------------------------------------------------------
master.zip
GitHub