metallic-app
Version:
Koa application for CARTO services
38 lines (35 loc) • 3.31 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
class HttpServerLoggerMixin {
static mix(superclass) {
return class extends superclass {
constructor({ logger }) {
super(...arguments);
this.logger = logger;
}
async run() {
try {
const httpServer = await super.run();
this.logger.info('Server started on port', httpServer.address().port);
return httpServer;
} catch (err) {
this.logger.error('Server failed on linstening', err);
throw err;
}
}
async close() {
try {
await super.close();
this.logger.info('Server stopped');
} catch (err) {
this.logger.error('Failed on close', err);
throw err;
}
}
};
}
}
exports.default = HttpServerLoggerMixin;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9odHRwLXNlcnZlci1sb2dnZXItbWl4aW4uanMiXSwibmFtZXMiOlsiSHR0cFNlcnZlckxvZ2dlck1peGluIiwibWl4Iiwic3VwZXJjbGFzcyIsImNvbnN0cnVjdG9yIiwibG9nZ2VyIiwiYXJndW1lbnRzIiwicnVuIiwiaHR0cFNlcnZlciIsImluZm8iLCJhZGRyZXNzIiwicG9ydCIsImVyciIsImVycm9yIiwiY2xvc2UiXSwibWFwcGluZ3MiOiI7Ozs7O0FBQWUsTUFBTUEscUJBQU4sQ0FBNEI7QUFDekMsU0FBT0MsR0FBUCxDQUFZQyxVQUFaLEVBQXdCO0FBQ3RCLFdBQU8sY0FBY0EsVUFBZCxDQUF5QjtBQUM5QkMsa0JBQWEsRUFBRUMsTUFBRixFQUFiLEVBQXlCO0FBQ3ZCLGNBQU0sR0FBR0MsU0FBVDtBQUNBLGFBQUtELE1BQUwsR0FBY0EsTUFBZDtBQUNEOztBQUVELFlBQU1FLEdBQU4sR0FBYTtBQUNYLFlBQUk7QUFDRixnQkFBTUMsYUFBYSxNQUFNLE1BQU1ELEdBQU4sRUFBekI7QUFDQSxlQUFLRixNQUFMLENBQVlJLElBQVosQ0FBaUIsd0JBQWpCLEVBQTJDRCxXQUFXRSxPQUFYLEdBQXFCQyxJQUFoRTtBQUNBLGlCQUFPSCxVQUFQO0FBQ0QsU0FKRCxDQUlFLE9BQU9JLEdBQVAsRUFBWTtBQUNaLGVBQUtQLE1BQUwsQ0FBWVEsS0FBWixDQUFrQiw2QkFBbEIsRUFBaURELEdBQWpEO0FBQ0EsZ0JBQU1BLEdBQU47QUFDRDtBQUNGOztBQUVELFlBQU1FLEtBQU4sR0FBZTtBQUNiLFlBQUk7QUFDRixnQkFBTSxNQUFNQSxLQUFOLEVBQU47QUFDQSxlQUFLVCxNQUFMLENBQVlJLElBQVosQ0FBaUIsZ0JBQWpCO0FBQ0QsU0FIRCxDQUdFLE9BQU9HLEdBQVAsRUFBWTtBQUNaLGVBQUtQLE1BQUwsQ0FBWVEsS0FBWixDQUFrQixpQkFBbEIsRUFBcUNELEdBQXJDO0FBQ0EsZ0JBQU1BLEdBQU47QUFDRDtBQUNGO0FBekI2QixLQUFoQztBQTJCRDtBQTdCd0M7a0JBQXRCWCxxQiIsImZpbGUiOiJodHRwLXNlcnZlci1sb2dnZXItbWl4aW4uanMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBjbGFzcyBIdHRwU2VydmVyTG9nZ2VyTWl4aW4ge1xuICBzdGF0aWMgbWl4IChzdXBlcmNsYXNzKSB7XG4gICAgcmV0dXJuIGNsYXNzIGV4dGVuZHMgc3VwZXJjbGFzcyB7XG4gICAgICBjb25zdHJ1Y3RvciAoeyBsb2dnZXIgfSkge1xuICAgICAgICBzdXBlciguLi5hcmd1bWVudHMpXG4gICAgICAgIHRoaXMubG9nZ2VyID0gbG9nZ2VyXG4gICAgICB9XG5cbiAgICAgIGFzeW5jIHJ1biAoKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgY29uc3QgaHR0cFNlcnZlciA9IGF3YWl0IHN1cGVyLnJ1bigpXG4gICAgICAgICAgdGhpcy5sb2dnZXIuaW5mbygnU2VydmVyIHN0YXJ0ZWQgb24gcG9ydCcsIGh0dHBTZXJ2ZXIuYWRkcmVzcygpLnBvcnQpXG4gICAgICAgICAgcmV0dXJuIGh0dHBTZXJ2ZXJcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IoJ1NlcnZlciBmYWlsZWQgb24gbGluc3RlbmluZycsIGVycilcbiAgICAgICAgICB0aHJvdyBlcnJcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBhc3luYyBjbG9zZSAoKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgYXdhaXQgc3VwZXIuY2xvc2UoKVxuICAgICAgICAgIHRoaXMubG9nZ2VyLmluZm8oJ1NlcnZlciBzdG9wcGVkJylcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IoJ0ZhaWxlZCBvbiBjbG9zZScsIGVycilcbiAgICAgICAgICB0aHJvdyBlcnJcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19