Commit graph

83 commits

Author SHA1 Message Date
Michael S. Klishin
758fb9e7e6 Support skip & limit for monger.collection/find and /find-maps
As test example demonstrates, closely following DBCollection and DBCursor API has one downside:
queries that use sorting look really ugly. So monger needs to come up with a DSL à la Casbah or SQLKorma
to make this really nice.
2011-11-05 09:45:54 +04:00
Michael S. Klishin
20c271eee5 A typo 2011-11-05 08:31:46 +04:00
Michael S. Klishin
746d83459e Rename function that sets *default* write concern 2011-10-18 18:11:51 +04:00
Michael S. Klishin
fbd00ee151 Use WriteConcern/SAFE by default
WriteConcern/NORMAL is ridiculously dangerous and most apps simply do not have performance
requirements to justify completely ignoring server responses.
2011-10-18 17:50:28 +04:00
Oleksandr Petrov
edbaec0a3b Merge branch 'master' of https://github.com/michaelklishin/monger 2011-10-16 16:04:55 +02:00
Oleksandr Petrov
1dc94ae351 Adding some docs for indexing. 2011-10-16 16:04:51 +02:00
Oleksandr Petrov
410ef23b03 Adding some docs and minor tests for monger.core/command. 2011-10-16 15:39:21 +02:00
Michael S. Klishin
4336b6f414 Introduce monger.js/load-resource, a helper that loads JS files from the classpath
Yes, to be used with map/reduce and so on.
2011-10-16 15:54:53 +04:00
Michael S. Klishin
3963808152 Introduce monger.collection/distinct 2011-10-16 14:19:04 +04:00
Michael S. Klishin
c62c433559 Initial map/reduce support 2011-10-14 22:18:35 +04:00
Michael S. Klishin
7d79866eff To serialize joda.time.DateTime to JSON, use ISO date time format 2011-10-14 01:01:40 +04:00
Michael S. Klishin
8b22e9eef1 Extend JodaTime integration
This is not perfect since it currently ignores output writer paramter
and assumes clojure.data.json but it is a significantly better choice than
forcing every clojure.data.json user to use JodaTime.
2011-10-13 23:47:36 +04:00
Michael S. Klishin
cae818f646 Add (optional) conversion protocol extension to support Joda Time types
Much like we already do with clojure.data.json.
2011-10-13 18:04:49 +04:00
Michael S. Klishin
d966fabd3e Clean up 2011-10-13 18:03:53 +04:00
Oleksandr Petrov
75d52331bf Adding some docs and tests to collection. 2011-10-11 18:55:40 +02:00
Michael S. Klishin
886a270bf9 Introduce monger.collection/find-seq
For cases when you do not want to work with DBCursors but also
do not need conversion to maps that monger.collection/find-maps does.
2011-10-08 12:08:26 +04:00
Michael S. Klishin
74dcd77092 Use "new style" type hints 2011-10-08 03:48:46 +04:00
Michael S. Klishin
c875883534 declare vars that are initially unbound 2011-09-19 12:34:10 +04:00
Michael S. Klishin
c5850bd59f Get rid of monger.util/with-ns
It was an awful hack, now replaced by a less awful one.
2011-09-19 12:31:29 +04:00
Michael S. Klishin
189d2366ab Hm, yeah 2011-09-19 12:29:22 +04:00
Michael S. Klishin
2673c5bc0f Add monger.core/with-connection and monger.core/with-db 2011-09-19 12:18:07 +04:00
Michael S. Klishin
5e12f9aec2 Introduce monger.core/connect! and monger.core/set-db!
Even though it is not idiomatic Clojure to mutate vars like this,
it is very common for many applications to only use one MongoDB
connection (so, no per-thread var rebinding) and one main database.

For those cases, these function eliminate the need for mundaine
hacks with namespace switching.
2011-09-19 12:14:48 +04:00
Michael S. Klishin
3e6a6fac44 Simplify finders that use document id 2011-09-14 14:11:56 +04:00
Michael S. Klishin
3e8e5d7b32 Don't assume id is a string (most of the time it is not) 2011-09-14 14:01:20 +04:00
Michael S. Klishin
ec84824334 Correct documentation examples 2011-09-12 10:37:24 +04:00
Michael S. Klishin
57d8e62058 monger.util/get-id now can also handle Clojure maps, using both :_id and "_id" as id keys 2011-09-11 23:16:36 +04:00
Michael S. Klishin
6d12e34465 monger.convertion => monger.conversion 2011-09-11 23:02:46 +04:00
Oleksandr Petrov
30ed15e67f Adding docs for major collection methods. 2011-09-11 16:13:29 +02:00
Oleksandr Petrov
5a94424402 Adding monger.utils/get-id protocol extension for DBObject. 2011-09-11 16:13:14 +02:00
Oleksandr Petrov
25a24a5231 Adding basic operations documentation 2011-09-11 14:40:46 +02:00
Michael S. Klishin
1ea892328f Use "new style" type hints 2011-09-11 11:11:02 +04:00
Michael S. Klishin
a63fc0fadd Add license header 2011-09-11 11:10:42 +04:00
Michael S. Klishin
63d8e0848f Blow the dust off monger.core 2011-09-10 20:41:23 +04:00
Michael S. Klishin
fadf939cd5 Implement monger.collection/rename 2011-09-10 08:46:17 +04:00
Michael S. Klishin
e681bf1a1c Implement monger.core/command 2011-09-10 08:46:10 +04:00
Michael S. Klishin
1f091ab735 Implement monger.collection/create 2011-09-10 08:19:19 +04:00
Michael S. Klishin
24b2dbe516 Implement monger.collection/exists? and monger.collection/drop 2011-09-10 08:09:32 +04:00
Michael S. Klishin
1f9b611003 update-multi is not really worth having, monger.collection/date with the :multi option is good enough 2011-09-10 07:46:41 +04:00
Michael S. Klishin
b90834fdc5 Implement index operations 2011-09-10 07:45:47 +04:00
Michael S. Klishin
60e93b4275 Eliminate a reflection warning 2011-09-09 06:58:57 +04:00
Michael S. Klishin
1a9e0715cd Don't refer to clojure.core functions monger.collection and monger.core replace 2011-09-09 06:57:01 +04:00
Michael S. Klishin
4124b033f6 Cosmetics 2011-09-04 04:55:06 +04:00
Michael S. Klishin
c29748e46c Add monger.json that extends clojure.data.json.Write-JSON protocol to handle org.bson.types.ObjectId 2011-09-04 00:49:47 +04:00
Michael S. Klishin
4700213bd5 Introduce monger.collection/find-maps 2011-09-03 18:31:26 +04:00
Michael S. Klishin
a670b31462 Introduce monger.collection/find-map-by-id 2011-09-03 01:02:46 +04:00
Michael S. Klishin
6d17366bdd Nuke some reflection warnings 2011-09-02 04:08:39 +04:00
Michael S. Klishin
7e29ff457d Introduce monger.collection/find-one-as-map 2011-09-02 04:08:31 +04:00
Michael S. Klishin
f8845111f2 Make monger.collection/find-one return a DBObject, not a cursor 2011-09-02 03:28:40 +04:00
Michael S. Klishin
be1355b5b9 Add specialized identity convertion of DBObjects, makes it very easy to insert an object and immediately fetch its _id from it 2011-09-02 03:10:18 +04:00
Michael S. Klishin
2ff340ab08 Implement monger.result.MongoCommandResult/updated-existing? 2011-09-01 22:29:46 +04:00