UNPKG

@iotize/tap

Version:

IoTize Device client for Javascript

102 lines 8.07 kB
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; import { StepOperations } from '@iotize/common/task-manager'; import { sleep } from '@iotize/common/utility'; import '@iotize/tap'; import '@iotize/tap/service/all'; import { READ_CONFIGURATOR_CONFIG, } from './read-configurator-config'; function stepEvent(observer, step, context, extraData) { observer.next(Object.assign({ step, progress: { loaded: context.index + 1, total: context.total, } }, (extraData || {}))); } /** * Configure tap from a configuration file schema * */ export class TapConfiguratorReader { constructor(calls = READ_CONFIGURATOR_CONFIG) { this.calls = calls; } createReadOperations(tap) { const configureContext = { tap, }; const operations = []; const outputConfig = {}; this.addConfigurCalls(configureContext, this.calls, operations, outputConfig, tap); return StepOperations.sequential(operations); } addConfigurCalls(configureContext, calls, operations, outputConfig, tap) { let index = 0; for (const key in calls) { const context = { firmwareVersion: '9999.9999', service: tap.service, param: undefined, config: outputConfig, }; const configKey = key; const factoryFct = calls[configKey]; if (!factoryFct) { index++; continue; } const callOrErrorOrUndefined = factoryFct(context); if (callOrErrorOrUndefined) { operations.push((observer, context) => __awaiter(this, void 0, void 0, function* () { if (callOrErrorOrUndefined instanceof Error) { stepEvent(observer, TapConfiguratorReader.Step.readKeyError, context, { configKey, error: callOrErrorOrUndefined, // call: callOrError }); } else { try { outputConfig[configKey] = (yield configureContext.tap.lwm2m.execute(callOrErrorOrUndefined)).body(); stepEvent(observer, TapConfiguratorReader.Step.readKeySuccess, context, { configKey, value: outputConfig[configKey], call: callOrErrorOrUndefined, }); } catch (error) { stepEvent(observer, TapConfiguratorReader.Step.readKeyError, context, { configKey, call: callOrErrorOrUndefined, error, }); } } })); } index++; } operations.push((observer, context) => __awaiter(this, void 0, void 0, function* () { stepEvent(observer, TapConfiguratorReader.Step.done, context, { config: outputConfig, }); })); } sleep(delayMs) { return sleep(delayMs); } } (function (TapConfiguratorReader) { let Step; (function (Step) { Step["readKeySuccess"] = "TapConfiguratorReaderreadKeySuccess"; Step["readKeyError"] = "TapConfiguratorReaderReadKeyError"; Step["done"] = "TapConfiguratorReaderDone"; })(Step = TapConfiguratorReader.Step || (TapConfiguratorReader.Step = {})); })(TapConfiguratorReader || (TapConfiguratorReader = {})); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFwLWNvbmZpZ3VyYXRvci1yZWFkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9jb25maWd1cmF0b3Ivc3JjL2xpYi90YXAtY29uZmlndXJhdG9yLXJlYWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFFQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDN0QsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQy9DLE9BQU8sYUFBYSxDQUFDO0FBRXJCLE9BQU8seUJBQXlCLENBQUM7QUFHakMsT0FBTyxFQUVMLHdCQUF3QixHQUN6QixNQUFNLDRCQUE0QixDQUFDO0FBTXBDLFNBQVMsU0FBUyxDQUNoQixRQUF1QixFQUN2QixJQUFnQyxFQUNoQyxPQUFZLEVBQ1osU0FBYTtJQUViLFFBQVEsQ0FBQyxJQUFJLGlCQUNYLElBQUksRUFDSixRQUFRLEVBQUU7WUFDUixNQUFNLEVBQUUsT0FBTyxDQUFDLEtBQUssR0FBRyxDQUFDO1lBQ3pCLEtBQUssRUFBRSxPQUFPLENBQUMsS0FBSztTQUNyQixJQUNFLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQyxFQUNwQixDQUFDO0FBQ0wsQ0FBQztBQUVEOzs7R0FHRztBQUNILE1BQU0sT0FBTyxxQkFBcUI7SUFDaEMsWUFDUyxRQUEwQyx3QkFBd0I7UUFBbEUsVUFBSyxHQUFMLEtBQUssQ0FBNkQ7SUFDeEUsQ0FBQztJQUVHLG9CQUFvQixDQUFDLEdBQVE7UUFDbEMsTUFBTSxnQkFBZ0IsR0FBcUI7WUFDekMsR0FBRztTQUNKLENBQUM7UUFDRixNQUFNLFVBQVUsR0FBOEMsRUFBRSxDQUFDO1FBQ2pFLE1BQU0sWUFBWSxHQUF3QyxFQUFFLENBQUM7UUFDN0QsSUFBSSxDQUFDLGdCQUFnQixDQUNuQixnQkFBZ0IsRUFDaEIsSUFBSSxDQUFDLEtBQUssRUFDVixVQUFVLEVBQ1YsWUFBWSxFQUNaLEdBQUcs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