resource_waiter.js 624 B

123456789101112131415161718192021222324252627282930313233
  1. var util = require('../util');
  2. var property = util.property;
  3. function ResourceWaiter(name, waiter, options) {
  4. options = options || {};
  5. property(this, 'name', name);
  6. property(this, 'api', options.api, false);
  7. if (waiter.operation) {
  8. property(this, 'operation', util.string.lowerFirst(waiter.operation));
  9. }
  10. var self = this;
  11. var keys = [
  12. 'type',
  13. 'description',
  14. 'delay',
  15. 'maxAttempts',
  16. 'acceptors'
  17. ];
  18. keys.forEach(function(key) {
  19. var value = waiter[key];
  20. if (value) {
  21. property(self, key, value);
  22. }
  23. });
  24. }
  25. /**
  26. * @api private
  27. */
  28. module.exports = ResourceWaiter;