documentdb-util
Advanced tools
Comparing version 2.2.6 to 2.3.0
@@ -12,3 +12,5 @@ declare class DocumentDbUtility { | ||
createDocumentLink(databaseId: string, collectionId: string, documentId: string): string; | ||
storedProcedure(collection: {}, proc: { id: string, body?: Function, serverScript?: Function }); | ||
storedProcedure(collection: {}, proc: { id: string, serverScript: Function }); | ||
//userDefinedFunction(collection:{}, udf:{ id: string, serverScript: Function }) | ||
//createTrigger(collection: {}, proc: { id: string, serverScript: Function }) | ||
executeStoredProcedure(proc: {}, params?: any[]); | ||
@@ -15,0 +17,0 @@ } |
55
index.js
@@ -92,3 +92,3 @@ var DocumentDBClient = require('documentdb').DocumentClient; | ||
/** | ||
* Get of create stored procedure | ||
* Get or Create stored procedure | ||
* | ||
@@ -100,5 +100,40 @@ * @param {string} collection - Collection | ||
return new Promise((resolve, reject) => { | ||
this.client.createStoredProcedure(collection._self, proc, null, (err, response) => { | ||
let querySpec = { | ||
query: 'SELECT * FROM root r WHERE r.id=@id', | ||
parameters: [{ | ||
name: '@id', | ||
value: proc.id | ||
}] | ||
}; | ||
this.client.queryStoredProcedures(collection._self, querySpec).toArray((err, results) => { | ||
if (err) return reject(err); | ||
if (results.length === 0) { | ||
this.client.createStoredProcedure(collection._self, proc, null, (err, response) => { | ||
if (err) return reject(err); | ||
resolve(response); | ||
}); | ||
} else { | ||
resolve(results[0]); | ||
} | ||
}); | ||
}); | ||
} | ||
/** | ||
* Create user defined function | ||
* | ||
* @param {string} collection - Collection | ||
* @param {Function} udf - User defined function | ||
*/ | ||
createUserDefinedFunction(collection, udf) { | ||
return new Promise((resolve, reject) => { | ||
this.client.createUserDefinedFunction(collection._self, udf, null, (err, response) => { | ||
if (err) return reject(err); | ||
resolve(response); | ||
@@ -110,2 +145,18 @@ }); | ||
/** | ||
* Get of create user defined function | ||
* | ||
* @param {string} collection - Collection | ||
* @param {Function} trigger - Trigger | ||
*/ | ||
createTrigger(collection, trigger) { | ||
return new Promise((resolve, reject) => { | ||
this.client.createTrigger(collection._self, trigger, null, (err, response) => { | ||
if (err) return reject(err); | ||
resolve(response); | ||
}); | ||
}); | ||
} | ||
/** | ||
* Execute stored procedure | ||
@@ -112,0 +163,0 @@ * |
{ | ||
"name": "documentdb-util", | ||
"version": "2.2.6", | ||
"version": "2.3.0", | ||
"description": "A little wrapper utility around document db to perform simple operations", | ||
@@ -5,0 +5,0 @@ "typings":"./index.d.ts", |
@@ -74,3 +74,3 @@ [![Npm Version](https://img.shields.io/npm/v/documentdb-util.svg?style=flat)](https://www.npmjs.com/package/documentdb-util) | ||
let procInstance = await dbUtil.storedProcedure(collection, proc); | ||
let procInstance = await dbUtil.createStoredProcedure(collection, proc); | ||
let result = await dbUtil.executeStoredProcedure(procInstance,[1,2]); | ||
@@ -77,0 +77,0 @@ ``` |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
12141
262