public NacosConfigClient(
     ILoggerFactory loggerFactory
     , IOptionsMonitor <NacosClientConfiguration> optionAccs
     , IHttpClientFactory clientFactory
     , ILocalConfigInfoProcessor processor) : this(loggerFactory, optionAccs.CurrentValue, clientFactory, processor)
 {
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="ConfigServerConfigurationProvider"/> class.
 /// </summary>
 /// <param name="settings">the configuration settings the provider uses when accessing the server.</param>
 /// <param name="logFactory">optional logging factory</param>
 public ConfigNacosConfigurationProvider(ConfigNacosClientSettings settings, IHttpClientFactory clientFactory, ILocalConfigInfoProcessor processor, ILoggerFactory logFactory = null)
 {
     _loggerFactory = logFactory;
     _clientFactory = clientFactory;
     _processor     = processor ?? new MemoryLocalConfigInfoProcessor();
     _logger        = logFactory?.CreateLogger <ConfigNacosConfigurationProvider>();
     _settings      = settings ?? throw new ArgumentNullException(nameof(settings));
     _client        = null;
     _configuration = new ConfigurationBuilder().Build();
 }
        public NacosMsConfigClient(
            ILoggerFactory loggerFactory,
            NacosOptions options)
        {
            _logger    = loggerFactory.CreateLogger <NacosMsConfigClient>();
            _options   = options;
            _processor = new FileLocalConfigInfoProcessor();

            _httpAgent = new MsConfigServerHttpAgent(_options);

            listeners = new List <Listener>();
        }
Beispiel #4
0
        public NacosMsConfigClient(
            ILoggerFactory loggerFactory
            , NacosOptions options)
        {
            this._logger    = loggerFactory.CreateLogger <NacosConfigClient>();
            this._options   = options;
            this._processor = new MemoryLocalConfigInfoProcessor();
            this._client    = new NacosHttpClient();

            this.listeners             = new List <Listener>();
            this._serverAddressManager = new ServerAddressManager(_options);
        }
        public NacosConfigClient(
            ILoggerFactory loggerFactory
            , IOptionsMonitor <NacosOptions> optionAccs
            , IHttpAgent httpAgent
            , ILocalConfigInfoProcessor processor)
        {
            _logger    = loggerFactory.CreateLogger <NacosConfigClient>();
            _options   = optionAccs.CurrentValue;
            _httpAgent = httpAgent;
            _processor = processor;

            listeners = new List <Listener>();
        }
        public NacosConfigClient(
            ILoggerFactory loggerFactory
            , NacosClientConfiguration optionAccs
            , IHttpClientFactory clientFactory
            , ILocalConfigInfoProcessor processor)
        {
            this._logger        = loggerFactory.CreateLogger <NacosConfigClient>();
            this._options       = optionAccs;
            this._clientFactory = clientFactory;
            this._processor     = processor;

            this.listeners             = new List <Listener>();
            this._serverAddressManager = new ServerAddressManager(_options);
        }
Beispiel #7
0
        /// <summary>
        /// Initializes a new instance of the <see cref="ConfigServerConfigurationSource"/> class.
        /// </summary>
        /// <param name="defaultSettings">the default settings used by the Config Server client</param>
        /// <param name="sources">configuration sources used by the Config Server client. The <see cref="Configuration"/> will be built from these sources and the
        /// values will override those found in <see cref="DefaultSettings"/></param>
        /// <param name="properties">properties to be used when sources are built</param>
        /// <param name="logFactory">optional logger factory used by the client</param>
        public ConfigNacosConfigurationSource(ConfigNacosClientSettings defaultSettings, IList <IConfigurationSource> sources, IHttpClientFactory clientFactory, ILocalConfigInfoProcessor processor, IDictionary <string, object> properties = null, ILoggerFactory logFactory = null)
        {
            if (sources == null)
            {
                throw new ArgumentNullException(nameof(sources));
            }

            _sources = new List <IConfigurationSource>(sources);

            if (properties != null)
            {
                _properties = new Dictionary <string, object>(properties);
            }
            Processor       = processor;
            ClientFactory   = clientFactory;
            DefaultSettings = defaultSettings ?? throw new ArgumentNullException(nameof(defaultSettings));
            LogFactory      = logFactory;
        }
        /// <summary>
        /// Creates an appropriatly configured HttpClient that will be used in communicating with the
        /// Spring Cloud Configuration Server
        /// </summary>
        /// <param name="settings">the settings used in configuring the HttpClient</param>
        /// <returns>The HttpClient used by the provider</returns>
        protected static INacosConfigClient GetNacosClient(ConfigNacosClientSettings settings, IHttpClientFactory clientFactory, ILocalConfigInfoProcessor processor, ILoggerFactory loggerFactory = null)
        {
            NacosClientConfiguration nacosClientConfiguration = new NacosClientConfiguration()
            {
                ServerAddresses = settings.ServerAddr,
                IsSecure        = settings.IsSecure,
                ServiceName     = settings.Name
            };

            return(new NacosConfigClient(loggerFactory, nacosClientConfiguration, clientFactory, processor));
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="ConfigServerConfigurationProvider"/> class with default
 /// configuration settings. <see cref="ConfigServerClientSettings"/>
 /// </summary>
 /// <param name="logFactory">optional logging factory</param>
 public ConfigNacosConfigurationProvider(IHttpClientFactory clientFactory, ILocalConfigInfoProcessor processor, ILoggerFactory logFactory = null)
     : this(new ConfigNacosClientSettings(), clientFactory, processor, logFactory)
 {
 }
Beispiel #10
0
        /// <summary>
        /// 添加配置服务器
        /// </summary>
        /// <param name="configurationBuilder">基础配置信息</param>
        /// <param name="environment">环境</param>
        /// <param name="clientFactory">Http客户端工厂</param>
        /// <param name="processor">配置处理器</param>
        /// <param name="logFactory">日志工厂</param>
        /// <returns></returns>
        public static IConfigurationBuilder AddConfigNacosServer(this IConfigurationBuilder configurationBuilder, IHostingEnvironment environment, IHttpClientFactory clientFactory, ILocalConfigInfoProcessor processor, ILoggerFactory logFactory = null)
        {
            if (configurationBuilder == null)
            {
                throw new ArgumentNullException(nameof(configurationBuilder));
            }

            if (environment == null)
            {
                throw new ArgumentNullException(nameof(environment));
            }

            var settings = new ConfigNacosClientSettings()
            {
                Name        = environment.ApplicationName,
                Environment = environment.EnvironmentName
            };


            return(configurationBuilder.AddNacosConfigServer(settings, clientFactory, processor, logFactory));
        }
 public static IConfigurationBuilder AddNacosConfigServer(this IConfigurationBuilder configurationBuilder, string environment, IHttpClientFactory clientFactory, ILocalConfigInfoProcessor processor, ILoggerFactory logFactory = null)
 {
     return(configurationBuilder.AddNacosConfigServer(environment, Assembly.GetEntryAssembly()?.GetName().Name, clientFactory, processor, logFactory));
 }
Beispiel #12
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ConfigServerConfigurationSource"/> class.
 /// </summary>
 /// <param name="sources">configuration sources used by the Config Server client. The <see cref="Configuration"/> will be built from these sources and the
 /// values will override those found in <see cref="DefaultSettings"/></param>
 /// <param name="properties">properties to be used when sources are built</param>
 /// <param name="logFactory">optional logger factory used by the client</param>
 public ConfigNacosConfigurationSource(IList <IConfigurationSource> sources, IHttpClientFactory clientFactory, ILocalConfigInfoProcessor processor, IDictionary <string, object> properties = null, ILoggerFactory logFactory = null)
     : this(new ConfigNacosClientSettings(), sources, clientFactory, processor, properties, logFactory)
 {
 }
Beispiel #13
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ConfigServerConfigurationSource"/> class.
 /// </summary>
 /// <param name="defaultSettings">the default settings used by the Config Server client</param>
 /// <param name="configuration">configuration used by the Config Server client. Values will override those found in default settings</param>
 /// <param name="logFactory">optional logger factory used by the client</param>
 public ConfigNacosConfigurationSource(ConfigNacosClientSettings defaultSettings, IConfiguration configuration, IHttpClientFactory clientFactory, ILocalConfigInfoProcessor processor, ILoggerFactory logFactory = null)
 {
     Configuration   = configuration ?? throw new ArgumentNullException(nameof(configuration));
     DefaultSettings = defaultSettings ?? throw new ArgumentNullException(nameof(defaultSettings));
     LogFactory      = logFactory;
 }
        public static IConfigurationBuilder AddNacosConfigServer(this IConfigurationBuilder configurationBuilder, ConfigNacosClientSettings defaultSettings, IHttpClientFactory clientFactory, ILocalConfigInfoProcessor processor, ILoggerFactory logFactory = null)
        {
            if (configurationBuilder == null)
            {
                throw new ArgumentNullException(nameof(configurationBuilder));
            }

            if (defaultSettings == null)
            {
                throw new ArgumentNullException(nameof(defaultSettings));
            }

            if (!configurationBuilder.Sources.Any(c => c.GetType() == typeof(CloudFoundryConfigurationSource)))
            {
                configurationBuilder.Add(new CloudFoundryConfigurationSource());
            }

            configurationBuilder.Add(new ConfigNacosConfigurationSource(defaultSettings, configurationBuilder.Sources, clientFactory, processor, configurationBuilder.Properties, logFactory));
            return(configurationBuilder);
        }
        public static IConfigurationBuilder AddNacosConfigServer(this IConfigurationBuilder configurationBuilder, string environment, string applicationName, IHttpClientFactory clientFactory, ILocalConfigInfoProcessor processor, ILoggerFactory logFactory = null)
        {
            if (configurationBuilder == null)
            {
                throw new ArgumentNullException(nameof(configurationBuilder));
            }

            var settings = new ConfigNacosClientSettings()
            {
                Name = applicationName ?? Assembly.GetEntryAssembly()?.GetName().Name,

                Environment = environment ?? ConfigNacosClientSettings.DEFAULT_ENVIRONMENT
            };

            return(configurationBuilder.AddNacosConfigServer(settings, clientFactory, processor, logFactory));
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="ConfigServerConfigurationProvider"/> class.
 /// </summary>
 /// <param name="settings">the configuration settings the provider uses when accessing the server.</param>
 /// <param name="httpClient">a HttpClient the provider uses to make requests of the server.</param>
 /// <param name="logFactory">optional logging factory</param>
 public ConfigNacosConfigurationProvider(ConfigNacosClientSettings settings, INacosConfigClient httpClient, ILocalConfigInfoProcessor processor, ILoggerFactory logFactory = null)
 {
     _settings      = settings ?? throw new ArgumentNullException(nameof(settings));
     _client        = httpClient ?? throw new ArgumentNullException(nameof(httpClient));
     _logger        = logFactory?.CreateLogger <ConfigNacosConfigurationProvider>();
     _loggerFactory = logFactory;
     _configuration = new ConfigurationBuilder().Build();
 }
 public static IConfigurationBuilder AddNacosConfigServer(this IConfigurationBuilder configurationBuilder, IHttpClientFactory clientFactory, ILocalConfigInfoProcessor processor, ILoggerFactory logFactory = null)
 {
     return(configurationBuilder.AddNacosConfigServer(ConfigNacosClientSettings.DEFAULT_ENVIRONMENT, Assembly.GetEntryAssembly()?.GetName().Name, clientFactory, processor, logFactory));
 }