UNPKG

metallic-launcher

Version:
45 lines (41 loc) 3.87 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); class LauncherLoggerMixin { static mix(superclass) { return class extends superclass { constructor({ logger }) { super(...arguments); this.logger = logger; } async run() { try { await this.logger.run(); const httpServer = await super.run(); this.logger.info('Ready'); return httpServer; } catch (err) { this.logger.error('Failed on initialization', err); throw err; } } async close() { try { await super.close(); this.logger.info('Closed'); await this.logger.close(); } catch (err) { this.logger.error('Failed on close', err); throw err; } } async exit(failure) { this.logger.info(`Exit with code ${failure}`); await super.exit(failure); } }; } } exports.default = LauncherLoggerMixin; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9sYXVuY2hlci1sb2dnZXItbWl4aW4uanMiXSwibmFtZXMiOlsiTGF1bmNoZXJMb2dnZXJNaXhpbiIsIm1peCIsInN1cGVyY2xhc3MiLCJjb25zdHJ1Y3RvciIsImxvZ2dlciIsImFyZ3VtZW50cyIsInJ1biIsImh0dHBTZXJ2ZXIiLCJpbmZvIiwiZXJyIiwiZXJyb3IiLCJjbG9zZSIsImV4aXQiLCJmYWlsdXJlIl0sIm1hcHBpbmdzIjoiOzs7OztBQUFlLE1BQU1BLG1CQUFOLENBQTBCO0FBQ3ZDLFNBQU9DLEdBQVAsQ0FBWUMsVUFBWixFQUF3QjtBQUN0QixXQUFPLGNBQWNBLFVBQWQsQ0FBeUI7QUFDOUJDLGtCQUFhLEVBQUVDLE1BQUYsRUFBYixFQUF5QjtBQUN2QixjQUFNLEdBQUdDLFNBQVQ7QUFDQSxhQUFLRCxNQUFMLEdBQWNBLE1BQWQ7QUFDRDs7QUFFRCxZQUFNRSxHQUFOLEdBQWE7QUFDWCxZQUFJO0FBQ0YsZ0JBQU0sS0FBS0YsTUFBTCxDQUFZRSxHQUFaLEVBQU47QUFDQSxnQkFBTUMsYUFBYSxNQUFNLE1BQU1ELEdBQU4sRUFBekI7QUFDQSxlQUFLRixNQUFMLENBQVlJLElBQVosQ0FBaUIsT0FBakI7QUFDQSxpQkFBT0QsVUFBUDtBQUNELFNBTEQsQ0FLRSxPQUFPRSxHQUFQLEVBQVk7QUFDWixlQUFLTCxNQUFMLENBQVlNLEtBQVosQ0FBa0IsMEJBQWxCLEVBQThDRCxHQUE5QztBQUNBLGdCQUFNQSxHQUFOO0FBQ0Q7QUFDRjs7QUFFRCxZQUFNRSxLQUFOLEdBQWU7QUFDYixZQUFJO0FBQ0YsZ0JBQU0sTUFBTUEsS0FBTixFQUFOO0FBQ0EsZUFBS1AsTUFBTCxDQUFZSSxJQUFaLENBQWlCLFFBQWpCO0FBQ0EsZ0JBQU0sS0FBS0osTUFBTCxDQUFZTyxLQUFaLEVBQU47QUFDRCxTQUpELENBSUUsT0FBT0YsR0FBUCxFQUFZO0FBQ1osZUFBS0wsTUFBTCxDQUFZTSxLQUFaLENBQWtCLGlCQUFsQixFQUFxQ0QsR0FBckM7QUFDQSxnQkFBTUEsR0FBTjtBQUNEO0FBQ0Y7O0FBRUQsWUFBTUcsSUFBTixDQUFZQyxPQUFaLEVBQXFCO0FBQ25CLGFBQUtULE1BQUwsQ0FBWUksSUFBWixDQUFrQixrQkFBaUJLLE9BQVEsRUFBM0M7QUFDQSxjQUFNLE1BQU1ELElBQU4sQ0FBV0MsT0FBWCxDQUFOO0FBQ0Q7QUFoQzZCLEtBQWhDO0FBa0NEO0FBcENzQztrQkFBcEJiLG1CIiwiZmlsZSI6ImxhdW5jaGVyLWxvZ2dlci1taXhpbi5qcyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBkZWZhdWx0IGNsYXNzIExhdW5jaGVyTG9nZ2VyTWl4aW4ge1xuICBzdGF0aWMgbWl4IChzdXBlcmNsYXNzKSB7XG4gICAgcmV0dXJuIGNsYXNzIGV4dGVuZHMgc3VwZXJjbGFzcyB7XG4gICAgICBjb25zdHJ1Y3RvciAoeyBsb2dnZXIgfSkge1xuICAgICAgICBzdXBlciguLi5hcmd1bWVudHMpXG4gICAgICAgIHRoaXMubG9nZ2VyID0gbG9nZ2VyXG4gICAgICB9XG5cbiAgICAgIGFzeW5jIHJ1biAoKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgYXdhaXQgdGhpcy5sb2dnZXIucnVuKClcbiAgICAgICAgICBjb25zdCBodHRwU2VydmVyID0gYXdhaXQgc3VwZXIucnVuKClcbiAgICAgICAgICB0aGlzLmxvZ2dlci5pbmZvKCdSZWFkeScpXG4gICAgICAgICAgcmV0dXJuIGh0dHBTZXJ2ZXJcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IoJ0ZhaWxlZCBvbiBpbml0aWFsaXphdGlvbicsIGVycilcbiAgICAgICAgICB0aHJvdyBlcnJcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBhc3luYyBjbG9zZSAoKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgYXdhaXQgc3VwZXIuY2xvc2UoKVxuICAgICAgICAgIHRoaXMubG9nZ2VyLmluZm8oJ0Nsb3NlZCcpXG4gICAgICAgICAgYXdhaXQgdGhpcy5sb2dnZXIuY2xvc2UoKVxuICAgICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgICB0aGlzLmxvZ2dlci5lcnJvcignRmFpbGVkIG9uIGNsb3NlJywgZXJyKVxuICAgICAgICAgIHRocm93IGVyclxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGFzeW5jIGV4aXQgKGZhaWx1cmUpIHtcbiAgICAgICAgdGhpcy5sb2dnZXIuaW5mbyhgRXhpdCB3aXRoIGNvZGUgJHtmYWlsdXJlfWApXG4gICAgICAgIGF3YWl0IHN1cGVyLmV4aXQoZmFpbHVyZSlcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==