PlatformBuilder
@tsed/platform-http
Usage
typescript
import { PlatformBuilder } from "@tsed/platform-http";See /packages/platform/platform-http/src/common/builder/PlatformBuilder.ts.
Overview
ts
class PlatformBuilder<App = TsED.Application> {
protected startedAt: Date;
protected current: Date;
protected constructor(settings: Partial<TsED.Configuration>);
get name(): string;
get rootModule(): any | undefined;
get app(): PlatformApplication<App>;
get platform(): Platform;
get adapter(): PlatformAdapter<any>;
get settings(): TsED.Configuration & import("@tsed/di").DIConfiguration;
get logger(): import("@tsed/di").DILogger;
get disableBootstrapLog(): boolean | undefined;
get injector(): InjectorService;
static create<App = TsED.Application>(settings: PlatformBuilderSettings<App>): PlatformBuilder<App>;
static create<App = TsED.Application>(module: Type<any>, settings?: PlatformBuilderSettings<App>): PlatformBuilder<App>;
static build<App = TsED.Application>(settings: PlatformBuilderSettings<App>): PlatformBuilder<App>;
static build<App = TsED.Application>(module: Type<any>, settings?: PlatformBuilderSettings<App>): PlatformBuilder<App>;
static bootstrap<App = TsED.Application>(settings: PlatformBuilderSettings<App>): Promise<PlatformBuilder<App>>;
static bootstrap<App = TsED.Application>(module: Type<any>, settings?: PlatformBuilderSettings<App>): Promise<PlatformBuilder<App>>;
callback(): (req: IncomingMessage, res: ServerResponse) => void;
callback(req: IncomingMessage, res: ServerResponse): void;
log(...data: any[]): any;
addControllers(endpoint: string, controllers: TokenProvider | TokenProvider[]): void;
runLifecycle(): Promise<this>;
loadInjector(): Promise<void>;
listen(network?: boolean): Promise<void>;
stop(): Promise<void>;
ready(): Promise<void>;
callHook(hook: string, ...args: any[]): Promise<void>;
loadStatics(hook: string): void;
useProvider(token: Type<any>, settings?: Partial<ProviderOpts>): this;
bootstrap(): Promise<this>;
protected mapRouters(): Promise<void>;
protected diff(): string;
protected loadMiddlewaresFor(hook: string): void;
protected createHttpServers(): void;
protected listenServers(): Promise<void>;
protected logRoutes(layers: PlatformLayer[]): Promise<void>;
}protected startedAt
ts
protected startedAt: Date;protected current
ts
protected current: Date;get name
ts
get name(): string;get rootModule
ts
get rootModule(): any | undefined;get app
ts
get app(): PlatformApplication<App>;get platform
ts
get platform(): Platform;get adapter
ts
get adapter(): PlatformAdapter<any>;get settings
ts
get settings(): TsED.Configuration & import("@tsed/di").DIConfiguration;Return the settings configured by the decorator Configuration.
typescript
@Configuration({
port: 8000,
httpsPort: 8080,
mount: {
"/rest": "${rootDir}/controllers/**/*.js"
}
})
export class Server {
$onInit(){
console.log(this.settings); // {rootDir, port, httpsPort,...}
}
}get logger
ts
get logger(): import("@tsed/di").DILogger;get disableBootstrapLog
ts
get disableBootstrapLog(): boolean | undefined;get injector
ts
get injector(): InjectorService;static create
ts
static create<App = TsED.Application>(settings: PlatformBuilderSettings<App>): PlatformBuilder<App>;static create
ts
static create<App = TsED.Application>(module: Type<any>, settings?: PlatformBuilderSettings<App>): PlatformBuilder<App>;static build
ts
static build<App = TsED.Application>(settings: PlatformBuilderSettings<App>): PlatformBuilder<App>;static build
ts
static build<App = TsED.Application>(module: Type<any>, settings?: PlatformBuilderSettings<App>): PlatformBuilder<App>;static bootstrap
ts
static bootstrap<App = TsED.Application>(settings: PlatformBuilderSettings<App>): Promise<PlatformBuilder<App>>;Bootstrap a server application
static bootstrap
ts
static bootstrap<App = TsED.Application>(module: Type<any>, settings?: PlatformBuilderSettings<App>): Promise<PlatformBuilder<App>>;callback
ts
callback(): (req: IncomingMessage, res: ServerResponse) => void;callback
ts
callback(req: IncomingMessage, res: ServerResponse): void;log
ts
log(...data: any[]): any;addControllers
ts
addControllers(endpoint: string, controllers: TokenProvider | TokenProvider[]): void;Add classes decorated by Controller to components container.
Example
typescript
@Controller('/ctrl')
class MyController{
}
platform.addControllers('/rest', [MyController])TIP
If the MyController class isn't decorated, the class will be ignored.
runLifecycle
ts
runLifecycle(): Promise<this>;loadInjector
ts
loadInjector(): Promise<void>;listen
ts
listen(network?: boolean): Promise<void>;stop
ts
stop(): Promise<void>;ready
ts
ready(): Promise<void>;callHook
ts
callHook(hook: string, ...args: any[]): Promise<void>;loadStatics
ts
loadStatics(hook: string): void;useProvider
ts
useProvider(token: Type<any>, settings?: Partial<ProviderOpts>): this;bootstrap
ts
bootstrap(): Promise<this>;protected mapRouters
ts
protected mapRouters(): Promise<void>;protected diff
ts
protected diff(): string;protected loadMiddlewaresFor
ts
protected loadMiddlewaresFor(hook: string): void;Load middlewares from configuration for the given hook
protected createHttpServers
ts
protected createHttpServers(): void;protected listenServers
ts
protected listenServers(): Promise<void>;protected logRoutes
ts
protected logRoutes(layers: PlatformLayer[]): Promise<void>;