Commit 43653e37 authored by Patricio Bruna's avatar Patricio Bruna

add option to BatchRequest for continuing on error

parent fdc77bc0
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
{ {
"name": "zimbra-admin-api-js", "name": "zimbra-admin-api-js",
"version": "0.0.25", "version": "0.0.26",
"private": true, "private": true,
"main": "lib/zimbra-admin-api.js", "main": "lib/zimbra-admin-api.js",
"dependencies": { "dependencies": {
......
...@@ -98,10 +98,11 @@ export default class ZimbraAdminApi { ...@@ -98,10 +98,11 @@ export default class ZimbraAdminApi {
return request; return request;
} }
makeBatchRequest(request_data_array, callback) { makeBatchRequest(request_data_array, callback, batchOnError = 'continue') {
const that = this; const that = this;
const onError = batchOnError;
if (request_data_array.length === 0) return; if (request_data_array.length === 0) return;
let request_object = this.buildRequest({isBatch: true}); let request_object = this.buildRequest({isBatch: true, batchOnError: onError});
request_data_array.forEach((request_data) => { request_data_array.forEach((request_data) => {
request_object.addRequest(request_data.params, function(err, reqid){ request_object.addRequest(request_data.params, function(err, reqid){
if (err) return that.handleError(err); if (err) return that.handleError(err);
......
...@@ -125,10 +125,8 @@ ...@@ -125,10 +125,8 @@
api.client.options.timeout = 5000; api.client.options.timeout = 5000;
let callback = function(err, data) { let callback = function(err, data) {
if (err) return console.error(err); if (err) return console.error(err);
expect(data.options.response.BatchResponse).to.exist; expect(data.GetAllAccountsResponse).to.exist;
expect(data.options.response.BatchResponse.GetAllAccountsResponse).to.exist; expect(data.GetAllDomainsResponse).to.exist;
expect(data.options.response.BatchResponse.GetAllDomainsResponse).to.exist;
expect(data.isBatch).to.be.true;
done(); done();
} }
const getAllAccounts = api.buildRequestData('GetAllAccounts', callback); const getAllAccounts = api.buildRequestData('GetAllAccounts', callback);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment