Package org.int4.dirk.library
Class ProviderInjectionTargetExtension<P,E>
- java.lang.Object
-
- org.int4.dirk.library.ProviderInjectionTargetExtension<P,E>
-
- Type Parameters:
P- the type of the providerE- the type the provider provides
- All Implemented Interfaces:
InjectionTargetExtension<P,E>
public class ProviderInjectionTargetExtension<P,E> extends java.lang.Object implements InjectionTargetExtension<P,E>
Configurable providerInjectionTargetExtensionwhich allows selecting the type of provider it should handle.
-
-
Constructor Summary
Constructors Constructor Description ProviderInjectionTargetExtension(java.lang.Class<P> providerClass, java.util.function.Function<java.util.function.Supplier<E>,P> providerFactory)Constructs a new instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.reflect.TypegetElementType(java.lang.reflect.Type type)PgetInstance(InstantiationContext<E> context)java.lang.Class<?>getTargetClass()java.util.Set<TypeTrait>getTypeTraits()
-
-
-
Constructor Detail
-
ProviderInjectionTargetExtension
public ProviderInjectionTargetExtension(java.lang.Class<P> providerClass, java.util.function.Function<java.util.function.Supplier<E>,P> providerFactory)
Constructs a new instance.- Parameters:
providerClass- aClassrepresenting the provider type, cannot benullproviderFactory- a function to create the provider instance given a supplier, cannot benull
-
-
Method Detail
-
getTargetClass
public java.lang.Class<?> getTargetClass()
- Specified by:
getTargetClassin interfaceInjectionTargetExtension<P,E>
-
getElementType
public java.lang.reflect.Type getElementType(java.lang.reflect.Type type)
- Specified by:
getElementTypein interfaceInjectionTargetExtension<P,E>
-
getTypeTraits
public java.util.Set<TypeTrait> getTypeTraits()
- Specified by:
getTypeTraitsin interfaceInjectionTargetExtension<P,E>
-
getInstance
public P getInstance(InstantiationContext<E> context)
- Specified by:
getInstancein interfaceInjectionTargetExtension<P,E>
-
-