SerinusInterceptor constructor

SerinusInterceptor(
  1. GrpcTransport transporter,
  2. ApplicationConfig _config
)

Creates a gRPC interceptor for Serinus.

Implementation

SerinusInterceptor(this.transporter, this._config) {
  // Pre-calculate which providers belong to which service based on the Modules
  for (final module in _config.modulesContainer.scopes) {
    for (final controller
        in module.controllers.whereType<GrpcServiceController>()) {
      _serviceProviders[controller.service.$name] = {
        for (final p in module.unifiedProviders) p.runtimeType: p,
      };
    }
  }
}