Class InstantiatedCollectionProvider<T>
- Namespace
- HomaGames.HomaBelly
- Assembly
- HomaGames.HomaBelly.Core.dll
Provide dependencies on collections of interfaces or base classes. It will try to instantiate all the inheritors of the given type, and provide a collection with the instantiated objects.
public class InstantiatedCollectionProvider<T> : IDependencyProvider
Type Parameters
TThe type of objects to instantiate.
- Inheritance
-
InstantiatedCollectionProvider<T>
- Implements
- Inherited Members
Remarks
This provider will create new instances for every dependency.
Constructors
InstantiatedCollectionProvider()
Creates a new provider.
public InstantiatedCollectionProvider()
Methods
CanProvideDependencyForType(Type)
Returns true if the provider can provide a dependency of that type, false otherwise.
public bool CanProvideDependencyForType(Type dependencyType)
Parameters
dependencyTypeTypeThe type of dependency to provide.
Returns
- bool
If a dependency of that type can be provided or not.
GetDependencyForType(Type, Type, DependencyActivator)
Creates an object that will serve as a dependency for an instantiation.
public object GetDependencyForType(Type dependencyType, Type dependantType, DependencyActivator activator)
Parameters
dependencyTypeTypeThe type of dependency to provide.
dependantTypeTypeThe type of object that will be created with that dependency.
activatorDependencyActivatorAn activator to instantiate extra dependencies.
Returns
- object
An object to be used as dependency.
Remarks
This method will only be called if CanProvideDependencyForType(Type) returned true for that dependency type.