public ExpandedUnions? TryExpandUnions(ConfigurationRegistry configuration) { ExpandedUnions? result = null; var startIndex = 0; for (var i = 0; i < contracts.Count; i++) { var contract = contracts[i]; var union = configuration.GetContractsUnionOrNull(contract); if (union == null) { if (result != null) result.Value.contracts[i - startIndex] = new[] {contract}; } else { if (result == null) { startIndex = i; result = new ExpandedUnions { contracts = new string[contracts.Count - startIndex][], unionedContracts = new List<UnionedContact>(1) }; } result.Value.unionedContracts.Add(new UnionedContact {children = union, parent = contract}); result.Value.contracts[i - startIndex] = union.ToArray(); } } return result; }
public SimpleContainer(ConfigurationRegistry configurationRegistry, ContainerContext containerContext, LogError errorLogger) { Configuration = configurationRegistry; implementationSelectors = configurationRegistry.GetImplementationSelectors(); dependenciesInjector = new DependenciesInjector(this); this.containerContext = containerContext; this.errorLogger = errorLogger; }
public SimpleContainer(GenericsAutoCloser genericsAutoCloser, ConfigurationRegistry configurationRegistry, TypesList typesList, LogError errorLogger, LogInfo infoLogger, Dictionary<Type, Func<object, string>> valueFormatters) { Configuration = configurationRegistry; implementationSelectors = configurationRegistry.GetImplementationSelectors(); this.genericsAutoCloser = genericsAutoCloser; this.typesList = typesList; dependenciesInjector = new DependenciesInjector(this); this.errorLogger = errorLogger; containerContext = new ContainerContext { infoLogger = infoLogger, typesList = typesList, valueFormatters = valueFormatters }; }
public ConfigurationRegistry Build(TypesList typesList, ConfigurationRegistry parent) { ApplyDynamicConfigurators(typesList); IConfigurationSource configurationSource = new SimpleConfigurationSource(configurations); if (parent != null) { foreach (var p in parent.contractUnions) { if (!contractUnions.ContainsKey(p.Key)) { contractUnions.Add(p); } } implementationSelectors.AddRange(parent.implementationSelectors); configurationSource = new MergingConfigurationSource(configurationSource, parent.configurations); } return(new ConfigurationRegistry(configurationSource, contractUnions, implementationSelectors)); }
static ConfigurationRegistry() { Empty = new ConfigurationRegistry(new SimpleConfigurationSource(new Dictionary<Type, ServiceConfigurationSet>()), new Dictionary<string, List<string>>(), new List<ImplementationSelector>()); }
public ConfigurationRegistry Build(TypesList typesList, ConfigurationRegistry parent) { ApplyDynamicConfigurators(typesList); IConfigurationSource configurationSource = new SimpleConfigurationSource(configurations); if (parent != null) { foreach (var p in parent.contractUnions) if (!contractUnions.ContainsKey(p.Key)) contractUnions.Add(p); implementationSelectors.AddRange(parent.implementationSelectors); configurationSource = new MergingConfigurationSource(configurationSource, parent.configurations); } return new ConfigurationRegistry(configurationSource, contractUnions, implementationSelectors); }
static ConfigurationRegistry() { Empty = new ConfigurationRegistry(new SimpleConfigurationSource(new Dictionary <Type, ServiceConfigurationSet>()), new Dictionary <string, List <string> >(), new List <ImplementationSelector>()); }
private string[][] TryExpandUnions(ConfigurationRegistry configuration) { string[][] result = null; var startIndex = 0; for (var i = 0; i < Contracts.Count; i++) { var contract = Contracts[i]; var union = configuration.GetContractsUnionOrNull(contract); if (union == null) { if (result != null) result[i - startIndex] = new[] {contract}; } else { if (result == null) { startIndex = i; result = new string[Contracts.Count - startIndex][]; } result[i - startIndex] = union.ToArray(); } } return result; }
public ParseContext(ConfigurationRegistry.Builder builder, ILookup<string, Type> typesMap) { this.builder = builder; this.typesMap = typesMap; }