UNPKG

@slickteam/nestjs-warp10

Version:
94 lines 4.24 kB
"use strict"; var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata = (this && this.__metadata) || function (k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var Warp10Service_1; Object.defineProperty(exports, "__esModule", { value: true }); exports.Warp10Service = void 0; const common_1 = require("@nestjs/common"); const config_1 = require("@nestjs/config"); const warp10_1 = require("@senx/warp10"); const JsonLib_1 = require("./utils/JsonLib"); const Utils_1 = require("./utils/Utils"); let Warp10Service = Warp10Service_1 = class Warp10Service { configService; warp10Url; warp10Timeout; writeToken; readToken; logger = new common_1.Logger(Warp10Service_1.name); BASE_APP_CLASS_NAME; w10; constructor(configService) { this.configService = configService; this.warp10Url = this.configService.get('WARP10_URL') ?? 'http://localhost:8080'; this.warp10Timeout = this.configService.get('WARP10_HTTP_TIMEOUT') ?? 5000; this.writeToken = this.configService.get('WARP10_WRITE_TOKEN') ?? ''; this.readToken = this.configService.get('WARP10_READ_TOKEN') ?? ''; this.BASE_APP_CLASS_NAME = this.configService.get('WARP10_BASE_CLASS_NAME') ?? 'fr.slickteam.wattson'; this.w10 = new warp10_1.Warp10().endpoint(this.warp10Url).timeout(this.warp10Timeout); } async exec(request, withInnerToken = false) { if (request) { let _request; if (withInnerToken) { _request = `'${this.writeToken}' 'wt' STORE`; _request += `\r\n'${this.readToken}' 'rt' STORE`; _request += `\r\n${request}`; } else { _request = request; } this.logger.verbose(_request); const warp10EndpointExec = `${this.warp10Url}/api/v0/exec`; try { const response = await Utils_1.Utils.httpPost(warp10EndpointExec, _request); if (response) { return new JsonLib_1.JsonLib().parse(response.data); } } catch (err) { console.error(err); } } return []; } async execWithGtsListResult(request, withInnerToken = false) { let result = await this.exec(request, withInnerToken); if (!Array.isArray(result)) { result = [result]; } if (result.length > 0) { result = result[0]; result = Array.isArray(result) ? result : result ? [result] : []; } return result; } fetch(readToken, className, labels, start, stop, format, dedup) { return this.w10.fetch(readToken ?? this.readToken, className, labels, start, stop, format, dedup); } meta(writeToken, meta) { return this.w10.meta(writeToken ?? this.writeToken, meta); } update(writeToken, dataPoints) { return this.w10.update(writeToken ?? this.writeToken, dataPoints); } delete(writeToken, className, labels, start, end, deleteAll) { return this.w10.delete(writeToken ?? this.writeToken, className, labels, start, end, deleteAll); } deleteByTimestamp(writeToken, className, labels, timestamp) { return this.w10.delete(writeToken ?? this.writeToken, className, labels, timestamp, timestamp, false); } }; exports.Warp10Service = Warp10Service; exports.Warp10Service = Warp10Service = Warp10Service_1 = __decorate([ (0, common_1.Injectable)(), __metadata("design:paramtypes", [config_1.ConfigService]) ], Warp10Service); //# sourceMappingURL=warp10.service.js.map