@deepkit/framework
Version:
65 lines • 3.3 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);
};
/*@ts-ignore*/
import { __ΩLoggerInterface } from '@deepkit/logger';
/*@ts-ignore*/
import { __ΩFlag } from '@deepkit/app';
/*@ts-ignore*/
import { __ΩCommand } from '@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.
*/
import { ApplicationServer } from '../application-server.js';
import { cli, ServiceContainer } from '@deepkit/app';
import { DefaultFormatter, Logger } from '@deepkit/logger';
import { FrameworkModule } from '../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) {
if (!this.logger.hasFormatters())
this.logger.addFormatter(new 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(FrameworkModule);
kernel.configure(overwrite);
const server = this.serviceContainer.getRootInjector().get(ApplicationServer);
await server.start(true);
}
};
ServerStartController.__type = [() => __ΩLoggerInterface, 'logger', () => 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'];
ServerStartController = __decorate([
cli.controller('server:start'),
__metadata("design:paramtypes", [Object, ServiceContainer])
], ServerStartController);
export { ServerStartController };
//# sourceMappingURL=server-start.js.map