@citrineos/base
Version:
The base module for OCPP v2.0.1 including all interfaces. This module is not intended to be used directly, but rather as a dependency for other modules.
51 lines • 1.81 kB
JavaScript
// Copyright (c) 2023 S44, LLC
// Copyright Contributors to the CitrineOS Project
//
// SPDX-License-Identifier: Apache 2.0
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 { Logger } from 'tslog';
/**
* Abstract class implementing {@link IMessageHandler}.
*/
export class AbstractMessageHandler {
/**
* Constructor
*
* @param config The system configuration.
* @param logger [Optional] The logger to use.
*/
constructor(config, logger, module) {
this._config = config;
this._module = module;
this._logger = logger
? logger.getSubLogger({ name: this.constructor.name })
: new Logger({ name: this.constructor.name });
}
/**
* Getter & Setter
*/
get module() {
return this._module;
}
set module(value) {
this._module = value;
}
/**
* Methods
*/
handle(message, props) {
return __awaiter(this, void 0, void 0, function* () {
var _a;
yield ((_a = this._module) === null || _a === void 0 ? void 0 : _a.handle(message, props));
});
}
}
//# sourceMappingURL=AbstractMessageHandler.js.map