On Debian/Ubuntu linux you can install it as follows:
```sh
- sudo apt-get install libcunit1 libcunit1-dev zlib1g zlib1g-dev
+ sudo apt-get install g++ libcunit1 libcunit1-dev zlib1g zlib1g-dev
```
**Installation from node package manager:**
```npm install ejdb```
+EJDB NodeJS API
+----------------------------------
+
+
+### EJDB.open(dbFile, openMode)
+
+Open database. Returns database instance handle object.
+<br/>Default open mode: `JBOWRITER | JBOCREAT`.
+<br/>This is blocking function.
+
+__Arguments__
+
+ * {String} dbFile Database main file name
+ * {Number} `[openMode=JBOWRITER | JBOCREAT]` Bitmast of open modes:
+ - `JBOREADER` Open as a reader.
+ - `JBOWRITER` Open as a writer.
+ - `JBOCREAT` Create db if it not exists
+ - `JBOTRUNC` Truncate db.
+
+
+
EJDB C Library
==================================
--------------------------------
**System libraries:**
+* gcc
* cunit
* zlib
On Debian/Ubuntu linux you can install it as follows:
```sh
- sudo apt-get install libcunit1 libcunit1-dev zlib1g zlib1g-dev
+ sudo apt-get install gcc libcunit1 libcunit1-dev zlib1g zlib1g-dev
```
Building
* Open database.
* Returns database instance handle object .
*
+ * Default open mode: JBOWRITER | JBOCREAT
+ *
* This is blocking function.
*
* @param {String} dbFile Database main file name
- * @param {Number} [openMode] Bitmast of open modes:
+ * @param {Number} [openMode=JBOWRITER | JBOCREAT] Bitmast of open modes:
* - `JBOREADER` Open as a reader.
* - `JBOWRITER` Open as a writer.
* - `JBOCREAT` Create db if it not exists
* Collection level transactions.
* String token matching queries: ```$stror``` ```$strand```
+NodeJS binding
+=================================
+
+One snippet intro
+---------------------------------
+```JavaScript
+var EJDB = require("ejdb");
+//Open zoo DB
+var jb = EJDB.open("zoo", EJDB.DEFAULT_OPEN_MODE | EJDB.JBOTRUNC);
+
+var parrot1 = {
+ "name" : "Grenny",
+ "type" : "African Grey",
+ "male" : true,
+ "age" : 1,
+ "birthdate" : new Date(),
+ "likes" : ["green color", "night", "toys"],
+ "extra1" : null
+};
+var parrot2 = {
+ "name" : "Bounty",
+ "type" : "Cockatoo",
+ "male" : false,
+ "age" : 15,
+ "birthdate" : new Date(),
+ "likes" : ["sugar cane"]
+};
+
+jb.save("parrots", [parrot1, parrot2], function(err, oids) {
+ if (err) {
+ console.error(err);
+ return;
+ }
+ console.log("Grenny OID: " + parrot1["_id"]);
+ console.log("Bounty OID: " + parrot2["_id"]);
+
+ jb.find("parrots",
+ {"likes" : "toys"},
+ {"$orderby" : {"name" : 1}},
+ function(err, cursor, count) {
+ if (err) {
+ console.error(err);
+ return;
+ }
+ console.log("Found " + count + " parrots");
+ while (cursor.next()) {
+ console.log(cursor.field("name") + " likes toys!");
+ }
+ cursor.close(); //It's not mandatory to close cursor explicitly
+ jb.close(); //Close the database
+ });
+});
+```
+
+Installation
+--------------------------------
+**System libraries:**
+
+* g++
+* cunit
+* zlib
+
+On Debian/Ubuntu linux you can install it as follows:
+
+```sh
+ sudo apt-get install g++ libcunit1 libcunit1-dev zlib1g zlib1g-dev
+```
+
+**Installation from node package manager:**
+ ```npm install ejdb```
+
+
EJDB C Library
==================================
--------------------------------
**System libraries:**
+* gcc
* cunit
* zlib
On Debian/Ubuntu linux you can install it as follows:
```sh
- sudo apt-get install libcunit1 libcunit1-dev zlib1g zlib1g-dev
+ sudo apt-get install gcc libcunit1 libcunit1-dev zlib1g zlib1g-dev
```
Building
* Case insensitive string indexes
* Collect collection index statistic
* Windows port
-