@mdf.js/service-registry
Version:
MMS - API - Service Registry
72 lines • 2.13 kB
JavaScript
;
/**
* Copyright 2024 Mytra Control S.L. All rights reserved.
*
* Use of this source code is governed by an MIT-style license that can be found in the LICENSE file
* or at https://opensource.org/licenses/MIT.
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.Controller = void 0;
const crash_1 = require("@mdf.js/crash");
/** Controller class */
class Controller {
/**
* Create an instance of Controller class
* @param service - service instance
*/
constructor(service) {
this.service = service;
}
/**
* Return the configuration objects
* @param request - HTTP request express object
* @param response - HTTP response express object
* @param next - Next express middleware function
*/
query(request, response, next) {
let selector;
const param = request.params['id'];
switch (param) {
case 'presets':
selector = this.service.presets();
break;
case 'config':
selector = this.service.config();
break;
default:
selector = undefined;
}
if (!selector) {
next(crash_1.BoomHelpers.badRequest(`Invalid parameter ${param}`, request.uuid));
}
else {
selector
.then(result => {
response.status(200).json(result);
})
.catch(next);
}
}
/**
* Return the readme object
* @param request - HTTP request express object
* @param response - HTTP response express object
* @param next - Next express middleware function
* @returns
*/
readme(request, response, next) {
this.service
.readme()
.then(result => {
if (!result) {
response.status(204).send();
}
else {
response.status(200).send(result);
}
})
.catch(next);
}
}
exports.Controller = Controller;
//# sourceMappingURL=config.controller.js.map