#Windows Azure DocumentDB Node.js Q promises wrapper
This project provides a node module that makes it easy to interact with Azure DocumentDB.
For documentation please see the Microsoft Azure Node.js Developer Center and the Microsoft Azure DocumentDB Node.js SDK Documentation.
##Installation
This is a wrapper of the Azure DocumentDB Node.js SDK using the Q promises library.
npm install documentdb-q-promises
##Usage
To use this SDK to call Azure DocumentDB, you need to first create an account.
##Hello world example code using Q promises
var DocumentClient = require('documentdb-q-promises').DocumentClientWrapper;
var host = [hostendpoint]; // Add your endpoint
var masterKey = [database account masterkey]; // Add the massterkey of the endpoint
var client = new DocumentClient(host, {masterKey: masterKey});
var databaseDefinition = { id: "sample database" }
var collectionDefinition = { id: "sample collection" };
var documentDefinition = { id: "hello world doc", content: "Hello World!" };
var database, collection, document;
client.createDatabaseAsync(databaseDefinition)
.then(function(databaseResponse) {
database = databaseResponse.resource;
return client.createCollectionAsync(database._self, collectionDefinition);
})
.then(function(collectionResponse) {
collection = collectionResponse.resource;
return client.createDocumentAsync(collection._self, documentDefinition);
})
.then(function(documentResponse) {
var document = documentResponse.resource;
console.log('Created Document with content: ', document.content);
})
.fail(function(error) {
console.log("An error occured", error);
});