protected override IGatewayListProvider CreateGatewayListProvider(ILogger logger)
        {
            var options = new AdoNetGatewayListProviderOptions()
            {
                ConnectionString = this.connectionString,
                AdoInvariant     = GetAdoInvariant()
            };

            return(new AdoNetGatewayListProvider(loggerFactory.CreateLogger <AdoNetGatewayListProvider>(), this.GrainReferenceConverter, this.clientConfiguration, Options.Create(options), this.clientOptions));
        }
 public AdoNetGatewayListProvider(ILogger <AdoNetGatewayListProvider> logger, IGrainReferenceConverter grainReferenceConverter, ClientConfiguration clientConfiguration,
                                  IOptions <AdoNetGatewayListProviderOptions> options,
                                  IOptions <ClusterClientOptions> clusterClientOptions)
 {
     this.logger = logger;
     this.grainReferenceConverter = grainReferenceConverter;
     this.options      = options.Value;
     this.clusterId    = clusterClientOptions.Value.ClusterId;
     this.maxStaleness = clientConfiguration.GatewayListRefreshPeriod;
 }