UNPKG

@betit/orion-node-sdk

Version:
97 lines 3.71 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 }); const response_1 = require("../response/response"); const request_1 = require("../request/request"); exports.WHO_ARE_YOU = 'WHO_ARE_YOU'; var AggregationType; (function (AggregationType) { AggregationType["INTERNAL"] = "internal"; AggregationType["EXTERNAL"] = "external"; })(AggregationType = exports.AggregationType || (exports.AggregationType = {})); var HealthCheckResult; (function (HealthCheckResult) { HealthCheckResult["HC_OK"] = "OK"; HealthCheckResult["HC_WARN"] = "WARN"; HealthCheckResult["HC_CRIT"] = "CRIT"; })(HealthCheckResult = exports.HealthCheckResult || (exports.HealthCheckResult = {})); function AmIUpHandle(req) { return __awaiter(this, void 0, void 0, function* () { return new AmIUpResponse(); }); } exports.AmIUpHandle = AmIUpHandle; class AmIUpResponse extends response_1.Response { constructor() { super({ status: HealthCheckResult.HC_OK }); } } exports.AmIUpResponse = AmIUpResponse; class AmIUpRequest extends request_1.Request { } exports.AmIUpRequest = AmIUpRequest; class AggregateRequest extends request_1.Request { constructor(path, params) { super(path); this.params = params; } } exports.AggregateRequest = AggregateRequest; class AggregateResponse extends response_1.Response { constructor(payload) { super(payload); this.payload = payload; } } exports.AggregateResponse = AggregateResponse; function checkToObject(checkName, str, err) { const res = { result: HealthCheckResult.HC_OK }; if (err) { res.result = err.code; res.details = str; res.description = 'Health check for ' + checkName; } return res; } function AggregateHandleGenerator(checks) { return (req) => __awaiter(this, void 0, void 0, function* () { const res = new AggregateResponse([]); for (const name in checks) { const check = checks[name]; if (req.params.type === undefined || (req.params.type === AggregationType.INTERNAL) === check.isInternal) { const [str, err] = yield check.checkIsWorking(); res.payload.push(checkToObject(check.name, str, err)); } } return res; }); } exports.AggregateHandleGenerator = AggregateHandleGenerator; class DependencyRequest extends request_1.Request { } exports.DependencyRequest = DependencyRequest; class DependencyResponse extends response_1.Response { constructor(payload) { super(payload); this.payload = payload; } } exports.DependencyResponse = DependencyResponse; function DependencyHandleGenerator(check) { return (req) => __awaiter(this, void 0, void 0, function* () { const [str, err] = yield check.checkIsWorking(); return new DependencyResponse(checkToObject(check.name, str, err)); }); } exports.DependencyHandleGenerator = DependencyHandleGenerator; //# sourceMappingURL=messages.js.map