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.

32 lines (31 loc) 1.4 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.waitUntilObjectExists = exports.waitForObjectExists = void 0; const util_waiter_1 = require("@aws-sdk/util-waiter"); const HeadObjectCommand_1 = require("../commands/HeadObjectCommand"); const checkState = async (client, input) => { let reason; try { const result = await client.send(new HeadObjectCommand_1.HeadObjectCommand(input)); reason = result; return { state: util_waiter_1.WaiterState.SUCCESS, reason }; } catch (exception) { reason = exception; if (exception.name && exception.name == "NotFound") { return { state: util_waiter_1.WaiterState.RETRY, reason }; } } return { state: util_waiter_1.WaiterState.RETRY, reason }; }; const waitForObjectExists = async (params, input) => { const serviceDefaults = { minDelay: 5, maxDelay: 120 }; return util_waiter_1.createWaiter({ ...serviceDefaults, ...params }, input, checkState); }; exports.waitForObjectExists = waitForObjectExists; const waitUntilObjectExists = async (params, input) => { const serviceDefaults = { minDelay: 5, maxDelay: 120 }; const result = await util_waiter_1.createWaiter({ ...serviceDefaults, ...params }, input, checkState); return util_waiter_1.checkExceptions(result); }; exports.waitUntilObjectExists = waitUntilObjectExists;