public void Build(DynamicConfigOptions options) { IPrefixBuilder prefixBuilder = options.IgnorePrefixes ? (IPrefixBuilder) new EmptyPrefixBuilder() : new PrefixBuilder(options.Prefixes); IComparer <Version> versionComparer = options.VersionComparer ?? VersionComparer.Default; ISegmentChecker segmentChecker = options.SegmentChecker ?? SegmentChecker.DefaultOnly; var configReader = new ConfigReader(_configs, prefixBuilder, options.AppVersion, versionComparer, segmentChecker); _config = configReader.ParseConfig(); }
public ConfigReader(List <Dictionary <object, object> > configs, IPrefixBuilder prefixBuilder, Version appVersion, IComparer <Version> versionComparer, ISegmentChecker segmentChecker) { _configs = configs; _appVersion = appVersion; _versionComparer = versionComparer; _segmentChecker = segmentChecker; _keyBuilder = new ConfigKeyBuilder(prefixBuilder); }