Provedores

Provedores são implementações de serviços que auxiliam nas regras de negócio do seu projeto. Eles podem conter uma ou mais implementações, você decide qual usar, para alternar a chave em .env.

Para usar um provedor na sua lógica de negócios basta injetar o seu token com o tsyinge:

import { IProvider } from '@shared/container/providers/Provider/models/IProvider';
import { injectable, inject } from 'tsyringe';

@injectable()
export class ExampleService {
  public constructor(
    @inject('Provider')
    private readonly provider: IProvider,
  ) {}

  public async execute(): Promise<void> {
    try {
      this.provider.doSomething();
    } catch (error: unknown) {
      throw error;
    }
  }
}

Last updated