Skip to content

PlatformBuilder

@tsed/platform-http

Usage

typescript
import { PlatformBuilder } from "@tsed/platform-http";

See /packages/platform/platform-http/src/types/common/builder/PlatformBuilder.ts.

Overview

ts
class PlatformBuilder<App = TsED.Application> {
    protected startedAt: Date;
    protected current: Date;
    protected constructor(module: Type, settings: Partial<TsED.Configuration>);
    get name(): string;
    get rootModule(): any;
    get app(): PlatformApplication<App>;
    get platform(): Platform;
    get adapter(): PlatformAdapter<any>;
    get settings(): TsED.DIConfiguration & import("@tsed/di").DIConfiguration;
    get logger(): import("@tsed/di").DILogger;
    get disableBootstrapLog(): boolean | undefined;
    get injector(): InjectorService;
    static create<App = TsED.Application>(module: Type<any>, settings: PlatformBuilderSettings<App>): PlatformBuilder<TsED.Application>;
    static build<App = TsED.Application>(module: Type<any>, settings: PlatformBuilderSettings<App>): PlatformBuilder<TsED.Application>;
    static bootstrap<App = TsED.Application>(module: Type<any>, settings: PlatformBuilderSettings<App>): Promise<PlatformBuilder<TsED.Application>>;
    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 mapTokenMiddlewares(): 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;

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.DIConfiguration & 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>(module: Type<any>, settings: PlatformBuilderSettings<App>): PlatformBuilder<TsED.Application>;

static build

ts
static build<App = TsED.Application>(module: Type<any>, settings: PlatformBuilderSettings<App>): PlatformBuilder<TsED.Application>;

static bootstrap

ts
static bootstrap<App = TsED.Application>(module: Type<any>, settings: PlatformBuilderSettings<App>): Promise<PlatformBuilder<TsED.Application>>;

Bootstrap a server application

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>;

protected mapTokenMiddlewares

ts
protected mapTokenMiddlewares(): Promise<void>;

Released under the MIT License.