Skip to content

ControllerProvider

@tsed/di

Usage

typescript
import { ControllerProvider } from "@tsed/di";

See /packages/di/src/common/domain/ControllerProvider.ts.

Overview

ts
class ControllerProvider<T = any> extends Provider<T> {
    tokenRouter: string;
    constructor(token: TokenProvider, options?: Partial<Provider>);
    get middlewares(): Partial<ControllerMiddlewares>;
    set middlewares(middlewares: Partial<ControllerMiddlewares>);
}

Description

Specialized provider for HTTP controllers.

Extends the base Provider class with controller-specific metadata like middleware configuration and routing information. Used internally to manage HTTP route controllers in the DI system.

Usage

typescript
import {ControllerProvider} from "@tsed/di";

const provider = new ControllerProvider(MyController);
provider.middlewares = {
  useBefore: [AuthMiddleware],
  use: [ValidationMiddleware],
  useAfter: [LoggingMiddleware]
};

tokenRouter

ts
tokenRouter: string;

get middlewares

ts
get middlewares(): Partial<ControllerMiddlewares>;

set middlewares

ts
set middlewares(middlewares: Partial<ControllerMiddlewares>);

Released under the MIT License.