34 lines
624 B
JavaScript
34 lines
624 B
JavaScript
|
var util = require('../util');
|
||
|
var property = util.property;
|
||
|
|
||
|
function ResourceWaiter(name, waiter, options) {
|
||
|
options = options || {};
|
||
|
property(this, 'name', name);
|
||
|
property(this, 'api', options.api, false);
|
||
|
|
||
|
if (waiter.operation) {
|
||
|
property(this, 'operation', util.string.lowerFirst(waiter.operation));
|
||
|
}
|
||
|
|
||
|
var self = this;
|
||
|
var keys = [
|
||
|
'type',
|
||
|
'description',
|
||
|
'delay',
|
||
|
'maxAttempts',
|
||
|
'acceptors'
|
||
|
];
|
||
|
|
||
|
keys.forEach(function(key) {
|
||
|
var value = waiter[key];
|
||
|
if (value) {
|
||
|
property(self, key, value);
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @api private
|
||
|
*/
|
||
|
module.exports = ResourceWaiter;
|