Interface ICustomizesDecorator<TService>
A builder/helper object by which a developer selects the decorator types to be used when creating the service.
Namespace: CSF.DecoratorBuilder
Assembly: CSF.DecoratorBuilder.Abstractions.dll
Syntax
public interface ICustomizesDecorator<TService>
where TService : class
Type Parameters
Name | Description |
---|---|
TService | The service type, typically an interface. |
Methods
| Improve this Doc View SourceThenWrapWith<TDecorator>(ITypedResolvable[])
Selects a decorator type using a generic type parameter. The implementation directly before this point in the decorator 'stack' (be it the initial implementation or a decorator itself) will be passed to the selected implementation. Thus this implementation will 'wrap' the one before it.
Declaration
ICustomizesDecorator<TService> ThenWrapWith<TDecorator>(params ITypedResolvable[] parameters)
where TDecorator : class, TService
Parameters
Type | Name | Description |
---|---|---|
ITypedResolvable[] | parameters | An optional collection of ITypedResolvable. |
Returns
Type | Description |
---|---|
ICustomizesDecorator<TService> | A customisation helper by which further implementations may be added to the decorator 'stack'. |
Type Parameters
Name | Description |
---|---|
TDecorator | The type of the concrete implementation to use as a decorator. |
ThenWrapWith<TDecorator>(Func<TService, IServiceProvider, IEnumerable<ITypedResolvable>, TDecorator>, ITypedResolvable[])
Selects a decorator type using a generic type parameter. The implementation directly before this point in the decorator 'stack' (be it the initial implementation or a decorator itself) will be passed to the selected implementation. Thus this implementation will 'wrap' the one before it.
Declaration
ICustomizesDecorator<TService> ThenWrapWith<TDecorator>(Func<TService, IServiceProvider, IEnumerable<ITypedResolvable>, TDecorator> factoryFunction, params ITypedResolvable[] parameters)
where TDecorator : class, TService
Parameters
Type | Name | Description |
---|---|---|
System.Func<TService, System.IServiceProvider, System.Collections.Generic.IEnumerable<ITypedResolvable>, TDecorator> | factoryFunction | A function which creates the instance of the decorator type. |
ITypedResolvable[] | parameters | An optional collection of ITypedResolvable. |
Returns
Type | Description |
---|---|
ICustomizesDecorator<TService> | A customisation helper by which further implementations may be added to the decorator 'stack'. |
Type Parameters
Name | Description |
---|---|
TDecorator | The type of the concrete implementation to use as a decorator. |
ThenWrapWithType(Type, ITypedResolvable[])
Selects a decorator type. The implementation directly before this point in the decorator 'stack' (be it the initial implementation or a decorator itself) will be passed to the selected implementation. Thus this implementation will 'wrap' the one before it.
Declaration
ICustomizesDecorator<TService> ThenWrapWithType(Type decoratorType, params ITypedResolvable[] parameters)
Parameters
Type | Name | Description |
---|---|---|
System.Type | decoratorType | The type of the concrete implementation to use as a decorator. |
ITypedResolvable[] | parameters | An optional collection of ITypedResolvable. |
Returns
Type | Description |
---|---|
ICustomizesDecorator<TService> | A customisation helper by which further implementations may be added to the decorator 'stack'. |
ThenWrapWithType(Type, Func<TService, IServiceProvider, IEnumerable<ITypedResolvable>, TService>, ITypedResolvable[])
Selects a decorator type. The implementation directly before this point in the decorator 'stack' (be it the initial implementation or a decorator itself) will be passed to the selected implementation. Thus this implementation will 'wrap' the one before it.
Declaration
ICustomizesDecorator<TService> ThenWrapWithType(Type decoratorType, Func<TService, IServiceProvider, IEnumerable<ITypedResolvable>, TService> factoryFunction, params ITypedResolvable[] parameters)
Parameters
Type | Name | Description |
---|---|---|
System.Type | decoratorType | The type of the concrete implementation to use as a decorator. |
System.Func<TService, System.IServiceProvider, System.Collections.Generic.IEnumerable<ITypedResolvable>, TService> | factoryFunction | A function which creates the instance of the decorator type. |
ITypedResolvable[] | parameters | An optional collection of ITypedResolvable. |
Returns
Type | Description |
---|---|
ICustomizesDecorator<TService> | A customisation helper by which further implementations may be added to the decorator 'stack'. |