UNPKG

@softchef/cdk-iot-device-management

Version:

IoT device management is composed of things, thing types, thing groups, jobs, files API services. The constructs can be used independently, that are based on full-managed service to create an API Gateway & Lambda function.

75 lines (74 loc) 3.19 kB
import { __asyncGenerator, __await, __awaiter, __generator, __read, __spreadArray } from "tslib"; import { ListTablesCommand } from "../commands/ListTablesCommand"; import { DynamoDB } from "../DynamoDB"; import { DynamoDBClient } from "../DynamoDBClient"; var makePagedClientRequest = function (client, input) { var args = []; for (var _i = 2; _i < arguments.length; _i++) { args[_i - 2] = arguments[_i]; } return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) { switch (_a.label) { case 0: return [4, client.send.apply(client, __spreadArray([new ListTablesCommand(input)], __read(args)))]; case 1: return [2, _a.sent()]; } }); }); }; var makePagedRequest = function (client, input) { var args = []; for (var _i = 2; _i < arguments.length; _i++) { args[_i - 2] = arguments[_i]; } return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) { switch (_a.label) { case 0: return [4, client.listTables.apply(client, __spreadArray([input], __read(args)))]; case 1: return [2, _a.sent()]; } }); }); }; export function paginateListTables(config, input) { var additionalArguments = []; for (var _i = 2; _i < arguments.length; _i++) { additionalArguments[_i - 2] = arguments[_i]; } return __asyncGenerator(this, arguments, function paginateListTables_1() { var token, hasNext, page; return __generator(this, function (_a) { switch (_a.label) { case 0: token = config.startingToken || undefined; hasNext = true; _a.label = 1; case 1: if (!hasNext) return [3, 9]; input.ExclusiveStartTableName = token; input["Limit"] = config.pageSize; if (!(config.client instanceof DynamoDB)) return [3, 3]; return [4, __await(makePagedRequest.apply(void 0, __spreadArray([config.client, input], __read(additionalArguments))))]; case 2: page = _a.sent(); return [3, 6]; case 3: if (!(config.client instanceof DynamoDBClient)) return [3, 5]; return [4, __await(makePagedClientRequest.apply(void 0, __spreadArray([config.client, input], __read(additionalArguments))))]; case 4: page = _a.sent(); return [3, 6]; case 5: throw new Error("Invalid client, expected DynamoDB | DynamoDBClient"); case 6: return [4, __await(page)]; case 7: return [4, _a.sent()]; case 8: _a.sent(); token = page.LastEvaluatedTableName; hasNext = !!token; return [3, 1]; case 9: return [4, __await(undefined)]; case 10: return [2, _a.sent()]; } }); }); }