UNPKG

@bitblit/epsilon

Version:

Tiny adapter to simplify building API gateway Lambda APIS

66 lines 3.65 kB
"use strict"; 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()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.EpsilonConstants = void 0; const logger_1 = require("@bitblit/ratchet/common/logger"); class EpsilonConstants { static load(filePath, className) { // eslint-disable-next-line @typescript-eslint/no-var-frequires logger_1.Logger.info('Searching for %s : %s : %s', filePath, className, __dirname); let rval = null; const val = require(filePath); if (val) { logger_1.Logger.debug('Found %s - pulling object : %j : %s', filePath, Object.keys(val), className); rval = val[className]; } return rval; } static findDynamicImportEpsilonGlobalHandlerProvider() { return __awaiter(this, void 0, void 0, function* () { const importPath = process.env[EpsilonConstants.EPSILON_FINDER_DYNAMIC_IMPORT_PATH_ENV_NAME] || EpsilonConstants.DEFAULT_EPSILON_FINDER_DYNAMIC_IMPORT_PATH; const fnName = process.env[EpsilonConstants.EPSILON_FINDER_FUNCTION_NAME_ENV_NAME] || EpsilonConstants.DEFAULT_EPSILON_FINDER_FUNCTION_NAME; logger_1.Logger.debug('Using epsilon finder dynamic import path : %s / %s', importPath, fnName); let provider = null; try { provider = this.load(importPath, fnName); } catch (err) { logger_1.Logger.error('Error loading provider : %s / %s : %s', importPath, fnName, err, err); } let rval = null; if (provider) { logger_1.Logger.debug('Type2 is : %s', typeof provider); //const fn = provider.fetchEpsilonGlobalHandler(); logger_1.Logger.info('Got3 : %s : %s', provider, typeof provider); rval = provider(); logger_1.Logger.info('Rval3 is %s', rval); } return rval; }); } //producer: () => Promise<EpsilonGlobalHandler> // Prevent instantiation // eslint-disable-next-line @typescript-eslint/no-empty-function constructor() { } } exports.EpsilonConstants = EpsilonConstants; EpsilonConstants.EPSILON_FINDER_DYNAMIC_IMPORT_PATH_ENV_NAME = 'EPSILON_FINDER_DYNAMIC_IMPORT_PATH'; EpsilonConstants.EPSILON_FINDER_FUNCTION_NAME_ENV_NAME = 'EPSILON_FINDER_FUNCTION_NAME'; EpsilonConstants.DEFAULT_EPSILON_FINDER_DYNAMIC_IMPORT_PATH = 'epsilon-global-handler-provider'; EpsilonConstants.DEFAULT_EPSILON_FINDER_FUNCTION_NAME = 'findEpsilonGlobalHandler'; EpsilonConstants.AUTH_HEADER_PREFIX = 'Bearer '; EpsilonConstants.AUTH_HEADER_NAME = 'Authorization'; EpsilonConstants.BACKGROUND_SQS_TYPE_FIELD = 'BACKGROUND_TYPE'; EpsilonConstants.BACKGROUND_SNS_START_MARKER = 'BACKGROUND_START_MARKER'; EpsilonConstants.BACKGROUND_SNS_IMMEDIATE_RUN_FLAG = 'BACKGROUND_IMMEDIATE_RUN_FLAG'; EpsilonConstants.INTER_API_SNS_EVENT = 'EPSILON_INTER_API_EVENT'; //# sourceMappingURL=epsilon-constants.js.map