forked from clojars/clojars-web
/
db.clj
51 lines (33 loc) · 845 Bytes
/
db.clj
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
;;; TODO: split into seperate files
(ns clojars.db
"CouchDB database backend"
(:use [clojure.contrib.ns-utils :only [immigrate]])
(:require (clojars.db utils users jars groups)))
(immigrate 'clojars.db.utils
'clojars.db.users
'clojars.db.jars
'clojars.db.groups)
(defn init-db []
(init-users-view)
(init-jars-view))
(comment
(conj {} {1 2})
(with-db db (doall (view-seq "users" :all {})))
(def db {:name "clojars-test"
:language "clojure"})
(with-db db
(init-db)
(find-user "atox")
)
(lazy-seq (concat [1 2] [3 4]))
(with-db db
(get-view "users" :all))
(= [1 2 3] '(1 2 3))
(update-document)
(with-db db
(create-document
{:type "user"
:username "atox"}))
(ad-hoc-view
(with-clj-view-server
(fn [doc] [nil doc]))))