C# Class Hiro.Implementations.SingletonType

Represents a service implementation that will be instantiated as a singleton instance.
Inheritance: IStaticImplementation
显示文件 Open project: philiplaureano/Hiro

Public Methods

Method Description
Emit ( IDependency dependency, IImplementation>.IDictionary serviceMap, Mono.Cecil.MethodDefinition targetMethod ) : void

Emits the instructions that will instantiate the current implementation.

GetMissingDependencies ( IDependencyContainer map ) : IEnumerable

Gets the list of missing dependencies from the current implementation.

GetRequiredDependencies ( IDependencyContainer map ) : IEnumerable

Returns the dependencies that are required by the current implementation.

SingletonType ( IStaticImplementation implementation, ISingletonEmitter singletonEmitter ) : System

Initializes a new instance of the SingletonType class.

SingletonType ( System targetType, IDependencyContainer container, IConstructorResolver constructorResolver ) : System

Initializes a new instance of the SingletonType class.

SingletonType ( System targetType, IDependencyContainer container, IConstructorResolver constructorResolver, ISingletonEmitter singletonEmitter ) : System

Initializes a new instance of the SingletonType class.

Method Details

Emit() public method

Emits the instructions that will instantiate the current implementation.
public Emit ( IDependency dependency, IImplementation>.IDictionary serviceMap, Mono.Cecil.MethodDefinition targetMethod ) : void
dependency IDependency The dependency that describes the service to be instantiated.
serviceMap IImplementation>.IDictionary The service map that contains the list of dependencies in the application.
targetMethod Mono.Cecil.MethodDefinition The target method.
return void

GetMissingDependencies() public method

Gets the list of missing dependencies from the current implementation.
public GetMissingDependencies ( IDependencyContainer map ) : IEnumerable
map IDependencyContainer The implementation map.
return IEnumerable

GetRequiredDependencies() public method

Returns the dependencies that are required by the current implementation.
public GetRequiredDependencies ( IDependencyContainer map ) : IEnumerable
map IDependencyContainer The implementation map.
return IEnumerable

SingletonType() public method

Initializes a new instance of the SingletonType class.
public SingletonType ( IStaticImplementation implementation, ISingletonEmitter singletonEmitter ) : System
implementation IStaticImplementation The implementation that will be used to emitting a service instance.
singletonEmitter ISingletonEmitter The emitter that will be responsible for instantiating the singleton implementation.
return System

SingletonType() public method

Initializes a new instance of the SingletonType class.
public SingletonType ( System targetType, IDependencyContainer container, IConstructorResolver constructorResolver ) : System
targetType System The concrete service type.
container IDependencyContainer The dependency container that contains the dependencies that will be used by the target type.
constructorResolver IConstructorResolver The constructor resolver.
return System

SingletonType() public method

Initializes a new instance of the SingletonType class.
public SingletonType ( System targetType, IDependencyContainer container, IConstructorResolver constructorResolver, ISingletonEmitter singletonEmitter ) : System
targetType System The concrete service type.
container IDependencyContainer The dependency container that contains the dependencies that will be used by the target type.
constructorResolver IConstructorResolver The constructor resolver.
singletonEmitter ISingletonEmitter The emitter that will be responsible for emitting the singleton implementation.
return System