add a castToArray option to paramAsBody spec (#541)

(cherry picked from commit 35b342550e)
This commit is contained in:
Spencer
2017-05-09 14:11:02 -07:00
committed by spalger
parent d750b019e2
commit 90a0ae1eb9
2 changed files with 15 additions and 1 deletions

View File

@ -289,5 +289,15 @@ function (spec) {
examples: {
scroll: 'scroll_<5.0.asciidoc'
}
},
{
version: '>=5.3,<5.5',
paramAsBody: {
clearScroll: {
param: 'scrollId',
body: 'scroll_id',
castToArray: true,
}
}
}
];

View File

@ -257,7 +257,11 @@ function exec(transport, spec, params, cb) {
if (!params.body && spec.paramAsBody) {
if (typeof spec.paramAsBody === 'object') {
params.body = {};
params.body[spec.paramAsBody.body] = params[spec.paramAsBody.param];
if (spec.paramAsBody.castToArray) {
params.body[spec.paramAsBody.body] = [].concat(params[spec.paramAsBody.param]);
} else {
params.body[spec.paramAsBody.body] = params[spec.paramAsBody.param];
}
delete params[spec.paramAsBody.param];
} else {
params.body = params[spec.paramAsBody];