Exemplo n.º 1
0
        public static IServiceCollection ConfigureReloadable <T>(
            this IServiceCollection self,
            IConfiguration configuration,
            IConfigurationRegister registry,
            string sectionName)
            where T : class
        {
            var initialised = false;

            self.Configure <T>
                (config =>
            {
                Action bind = () =>
                {
                    var section = configuration.GetSection(sectionName);
                    section.Bind(config);
                };

                if (!initialised)
                {
                    registry.AddWatchOnEntireConfig(bind);
                    initialised = true;
                }

                bind();
            });

            return(self);
        }
Exemplo n.º 2
0
        public static void InitConfiguration()
        {
            var configurationRegister = new ConfigurationRegister(ConsulClient);

            configurationRegister.SetKeyValueAsync($"basic/{ServiceName}", "{\"database\":\"Database=aspros.user;\"}").Wait();
            configurationRegister.AddUpdatingPathAsync("basic").Wait();
            ConfigurationRegister = configurationRegister;
        }
Exemplo n.º 3
0
        public static IConfigurationBuilder AddJsonConsul(this IConfigurationBuilder builder,
                                                          IConfigurationRegister configurationRegister)
        {
            var consul = new ConsulConfigurationSource(configurationRegister);

            configurationRegister.UpdateKeyParser(new JsonKeyValueParser());
            builder.Add(consul);
            return(builder);
        }
Exemplo n.º 4
0
 public ConsulConfigurationProvider(IConfigurationRegister configurationRegister)
 {
     _configurationRegister = configurationRegister;
 }
Exemplo n.º 5
0
 public ConsulConfigurationSource(IConfigurationRegister configurationRegister)
 {
     _configurationRegister = configurationRegister;
 }