@deepkit/framework
Version:
68 lines • 3.53 kB
JavaScript
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);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.ServerStartController = void 0;
/*@ts-ignore*/
const { __ΩLoggerInterface } = require('@deepkit/logger');
/*@ts-ignore*/
const { __ΩFlag } = require('@deepkit/app');
/*@ts-ignore*/
const { __ΩCommand } = require('@deepkit/app');
/*
* Deepkit Framework
* Copyright (C) 2021 Deepkit UG, Marc J. Schmidt
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the MIT License.
*
* You should have received a copy of the MIT License along with this program.
*/
const application_server_js_1 = require("../application-server.js");
const app_1 = require("@deepkit/app");
const logger_1 = require("@deepkit/logger");
const module_js_1 = require("../module.js");
/**
* @description Starts the application server. If HTTP or RPC controllers or a publicDir are provided this will include an HTTP listener.
*/
let ServerStartController = class ServerStartController {
constructor(logger, serviceContainer) {
this.logger = logger;
this.serviceContainer = serviceContainer;
}
async execute(host, port, workers, ssl, selfSigned) {
if (this.logger instanceof logger_1.Logger) {
if (!this.logger.hasFormatters())
this.logger.addFormatter(new logger_1.DefaultFormatter);
}
const overwrite = {};
if (host)
overwrite.host = host;
if (port)
overwrite.port = port;
if (workers)
overwrite.workers = workers;
if (ssl)
overwrite.ssl = {};
if (selfSigned)
overwrite.selfSigned = selfSigned;
const kernel = this.serviceContainer.getModule(module_js_1.FrameworkModule);
kernel.configure(overwrite);
const server = this.serviceContainer.getRootInjector().get(application_server_js_1.ApplicationServer);
await server.start(true);
}
};
exports.ServerStartController = ServerStartController;
ServerStartController.__type = [() => __ΩLoggerInterface, 'logger', () => app_1.ServiceContainer, 'serviceContainer', 'constructor', () => __ΩFlag, 'host', () => __ΩFlag, 'port', () => __ΩFlag, 'workers', () => __ΩFlag, 'ssl', () => __ΩFlag, 'selfSigned', 'execute', () => __ΩCommand, 'ServerStartController', 'Starts the application server. If HTTP or RPC controllers or a publicDir are provided this will include an HTTP listener.', 'Pn!2"<P7#2$<"0%PP&n&K2\'8P\'n(K2)8P\'n*K2+8P)n,K2-8P)n.K2/8$`005n1x"w2?3'];
exports.ServerStartController = ServerStartController = __decorate([
app_1.cli.controller('server:start'),
__metadata("design:paramtypes", [Object, app_1.ServiceContainer])
], ServerStartController);
//# sourceMappingURL=server-start.js.map
;