Exemple #1
0
        private DependenciesConfiguration Validate(DependenciesConfiguration dependenciesConfiguration)
        {
            var newDependenciesConfiguration = new DependenciesConfiguration();

            foreach (var dependency in dependenciesConfiguration.storage)
            {
                if (dependency.dependency == dependency.implementation ||
                    dependency.implementation.GetInterfaces().Contains(dependency.dependency) ||
                    dependency.implementation.IsSubclassOf(dependency.dependency) ||
                    dependency.implementation.IsGenericTypeDefinition)
                {
                    newDependenciesConfiguration.Register(dependency.dependency, dependency.implementation, dependency.isSingleton);
                }
            }
            return(newDependenciesConfiguration);
        }
Exemple #2
0
 public DependencyProvider(DependenciesConfiguration dependenciesConfiguration)
 {
     fDependenciesConfiguration = Validate(dependenciesConfiguration);
     singletonCache             = new Dictionary <StorageRecord, object>();
 }
 public DependencyProvider(DependenciesConfiguration dc)
 {
     dependenciesConfiguration = dc;
     stack = new Stack <Type>();
 }