/// <inheritdoc /> public override Resolver Create(ResolverOptions options) { var channelOptions = options.ChannelOptions; var randomGenerator = channelOptions.ResolveService <IRandomGenerator>( new RandomGenerator()); var backoffPolicyFactory = channelOptions.ResolveService <IBackoffPolicyFactory>( new ExponentialBackoffPolicyFactory(randomGenerator, channelOptions.InitialReconnectBackoff, channelOptions.MaxReconnectBackoff)); return(new DnsResolver(options.Address, options.DefaultPort, options.LoggerFactory, _refreshInterval, backoffPolicyFactory)); }
/// <inheritdoc /> public override Resolver Create(ResolverOptions options) { return(new DnsResolver(options.Address, options.DefaultPort, options.LoggerFactory, _refreshInterval)); }
/// <inheritdoc /> public override Resolver Create(ResolverOptions options) { return(new StaticResolver(_addressesCallback(options.Address))); }
/// <summary> /// Creates a new <see cref="Resolver"/> with the specified options. /// </summary> /// <param name="options">Options for creating a <see cref="Resolver"/>.</param> /// <returns>A new <see cref="Resolver"/>.</returns> public abstract Resolver Create(ResolverOptions options);