public ProtocolProcessor( IJsonParser jsonParser, IHttpMetricFactory metricFactory, HttpRouteOptions routeOptions, ILogger logger) { this._jsonParser = jsonParser; this._metricFactory = metricFactory; this._logger = logger; this._routeOptions = routeOptions; }
public ProtocolProcessor( IJsonParser jsonParser, IHttpMetricFactory metricFactory, HttpRouteOptions routeOptions, IEnumerable <IAdditionalHttpParser> parsers, RpcGatewayOptions gatewayOptions, ILogger logger) { this._jsonParser = jsonParser; this._metricFactory = metricFactory; this._logger = logger; this._routeOptions = routeOptions; this._parsers = parsers; this._gatewayOptions = gatewayOptions; }
private static IServiceCollection ScanRouteOptions(this IServiceCollection services, string dllPrefix = "*" , params string[] categories) { services.AddSingleton <IProtocolProcessor>(p => { IJsonParser jsonParser = p.GetRequiredService <IJsonParser>(); ILogger logger = p.GetRequiredService <ILoggerFactory>().CreateLogger <IProtocolProcessor>(); IHttpMetricFactory metricFactory = p.GetRequiredService <IHttpMetricFactory>(); var scanner = p.GetRequiredService <IHttpServiceScanner>(); var options = scanner.Scan(dllPrefix, categories); return(new ProtocolProcessor(jsonParser, metricFactory, options, logger)); }); return(services); }