private ConfigCatClient(ConfigurationBase configuration) { if (configuration == null) { throw new ArgumentNullException(nameof(configuration)); } configuration.Validate(); this.log = configuration.Logger; this.configDeserializer = new ConfigDeserializer(this.log, JsonSerializer.Create()); this.configEvaluator = new RolloutEvaluator(this.log, this.configDeserializer); this.cacheParameters = new CacheParameters { ConfigCache = configuration.ConfigCache ?? new InMemoryConfigCache(), CacheKey = GetCacheKey(configuration) }; }
private static string GetCacheKey(ConfigurationBase configuration) { var key = $"dotnet_{ConfigurationBase.ConfigFileName}_{configuration.SdkKey}"; return(HashUtils.HashString(key)); }
private void InitializeClient(ConfigurationBase configuration) { this.log = configuration.LoggerFactory.GetLogger(nameof(ConfigCatClient)); this.configEvaluator = new RolloutEvaluator(this.log); }