UNPKG

deep-package-manager

Version:
70 lines (57 loc) 1.4 kB
/** * Created by AlexanderC on 11/24/15. */ 'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.DynamoDBDriver = undefined; var _AbstractDriver = require('./AbstractDriver'); var _DynamoDBService = require('../Service/DynamoDBService'); class DynamoDBDriver extends _AbstractDriver.AbstractDriver { /** * @param {*} args */ constructor(...args) { super(...args); } /** * @returns {String[]} */ static get AVAILABLE_REGIONS() { return _DynamoDBService.DynamoDBService.AVAILABLE_REGIONS; } /** * @param {Function} cb * @param {String|undefined} _lastTableName */ list(cb, _lastTableName) { this._awsService.listTables({ Limit: DynamoDBDriver.LIMIT, ExclusiveStartTableName: _lastTableName }, (error, data) => { if (error) { cb(error); return; } for (let i in data.TableNames) { if (!data.TableNames.hasOwnProperty(i)) { continue; } let tableName = data.TableNames[i]; this._checkPushStack(tableName, tableName); } if (data.LastEvaluatedTableName && data.TableNames.length > 0) { return this.list(cb, data.LastEvaluatedTableName); } cb(null); }); } /** * @returns {Number} */ static get LIMIT() { return 100; } } exports.DynamoDBDriver = DynamoDBDriver;