示例#1
0
        public ServiceDiscoveryClusterProvider(
            [NotNull] IServiceLocator serviceLocator,
            [NotNull] string environment,
            [NotNull] string application,
            [NotNull] ServiceDiscoveryClusterProviderSettings settings,
            [CanBeNull] ILog log)
        {
            this.serviceLocator = serviceLocator ?? throw new ArgumentNullException(nameof(serviceLocator));
            this.environment    = environment ?? throw new ArgumentNullException(nameof(environment));
            this.application    = application ?? throw new ArgumentNullException(nameof(application));
            this.settings       = settings;
            this.log            = log ?? LogProvider.Get();

            transform = new CachingTransform <IServiceTopology, Uri[]>(ParseReplicas, preventParallelProcessing: true);
        }