UNPKG

@tsed/common

Version:
35 lines 1.48 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.listenHttpServer = exports.createHttpServer = void 0; const tslib_1 = require("tslib"); const di_1 = require("@tsed/di"); const http_1 = tslib_1.__importDefault(require("http")); const platform_1 = require("../../platform"); const httpServer_1 = require("../decorators/httpServer"); const listenServer_1 = require("./listenServer"); function createHttpServer(injector) { injector.forkProvider(httpServer_1.HttpServer); } exports.createHttpServer = createHttpServer; di_1.registerProvider({ provide: httpServer_1.HttpServer, deps: [platform_1.PlatformApplication], scope: di_1.ProviderScope.SINGLETON, global: true, useFactory(platformApplication) { return http_1.default.createServer(platformApplication.callback()); } }); async function listenHttpServer(injector) { const { settings } = injector; const server = injector.get(httpServer_1.HttpServer); if (settings.httpPort !== false && server) { const { address, port } = settings.getHttpPort(); injector.logger.debug(`Start server on http://${address}:${port}`); const options = await listenServer_1.listenServer(server, { address, port }); settings.setHttpPort(options); injector.logger.info(`Listen server on http://${options.address}:${options.port}`); } } exports.listenHttpServer = listenHttpServer; //# sourceMappingURL=createHttpServer.js.map