Пример #1
0
        /// <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));
        }
Пример #2
0
 /// <inheritdoc />
 public override Resolver Create(ResolverOptions options)
 {
     return(new DnsResolver(options.Address, options.DefaultPort, options.LoggerFactory, _refreshInterval));
 }
Пример #3
0
 /// <inheritdoc />
 public override Resolver Create(ResolverOptions options)
 {
     return(new StaticResolver(_addressesCallback(options.Address)));
 }
Пример #4
0
 /// <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);