blob: eb3f3e1f29b75d74e3ca4022eb4934c3b5a3d93a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
var extend = require('util')._extend
function constructObject(initialObject) {
initialObject = initialObject || {}
return {
extend: function (object) {
return constructObject(extend(initialObject, object))
},
done: function () {
return initialObject
}
}
}
function constructOptionsFrom(uri, options) {
var params = constructObject()
if (typeof uri === 'object') params.extend(uri)
if (typeof uri === 'string') params.extend({uri: uri})
params.extend(options)
return params.done()
}
function filterForCallback(values) {
var callbacks = values.filter(isFunction)
return callbacks[0]
}
function isFunction(value) {
return typeof value === 'function'
}
function paramsHaveRequestBody(params) {
return (
params.options.body ||
params.options.requestBodyStream ||
(params.options.json && typeof params.options.json !== 'boolean') ||
params.options.multipart
)
}
exports.isFunction = isFunction
exports.constructObject = constructObject
exports.constructOptionsFrom = constructOptionsFrom
exports.filterForCallback = filterForCallback
exports.paramsHaveRequestBody = paramsHaveRequestBody
|