Class AbstractParserProvider<A extends java.lang.annotation.Annotation,R,P extends ResourceParser<? extends com.adelean.inject.resources.core.Parsable<?>,?>>
java.lang.Object
com.adelean.inject.resources.junit.jupiter.core.AbstractParserProvider<A,R,P>
- Direct Known Subclasses:
GsonProvider,JacksonMapperProvider,SnakeYamlProvider
public abstract class AbstractParserProvider<A extends java.lang.annotation.Annotation,R,P extends ResourceParser<? extends com.adelean.inject.resources.core.Parsable<?>,?>>
extends java.lang.Object
-
Field Summary
Fields Modifier and Type Field Description protected java.lang.Class<A>annotationTypeprotected InjectionContextinjectionContextstatic java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>,java.lang.Class<? extends AbstractParserProvider<?,?,?>>>PARSER_PROVIDERSprotected java.lang.Class<?>testClassprotected java.lang.ObjecttestInstance -
Constructor Summary
Constructors Constructor Description AbstractParserProvider(InjectionContext injectionContext, @Nullable java.lang.Object testInstance, java.lang.Class<?> testClass, java.lang.Class<A> annotationType) -
Method Summary
Modifier and Type Method Description static java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>,java.lang.Class<? extends AbstractParserProvider<?,?,?>>>allParserProviders()protected abstract PcreateParser(A parserAnnotation, R parser)protected java.lang.StringparserNameFromField(java.lang.reflect.Field field, A annotation)protected java.lang.StringparserNameFromMethod(java.lang.reflect.Method method, A annotation)voidprovideFromField(java.lang.reflect.Field field)voidprovideFromMethod(java.lang.reflect.Method method, java.lang.Object target)static <T extends java.lang.annotation.Annotation>
AbstractParserProvider<T,?,?>providerFor(java.lang.Class<T> annotationType, @Nullable java.lang.Object testInstance, java.lang.Class<?> testClass, InjectionContext injectionContext)
-
Field Details
-
PARSER_PROVIDERS
public static final java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>,java.lang.Class<? extends AbstractParserProvider<?,?,?>>> PARSER_PROVIDERS -
injectionContext
-
testInstance
protected final java.lang.Object testInstance -
testClass
protected final java.lang.Class<?> testClass -
annotationType
-
-
Constructor Details
-
AbstractParserProvider
public AbstractParserProvider(InjectionContext injectionContext, @Nullable @Nullable java.lang.Object testInstance, java.lang.Class<?> testClass, java.lang.Class<A> annotationType)
-
-
Method Details
-
providerFor
public static <T extends java.lang.annotation.Annotation> AbstractParserProvider<T,?,?> providerFor(java.lang.Class<T> annotationType, @Nullable @Nullable java.lang.Object testInstance, java.lang.Class<?> testClass, InjectionContext injectionContext) -
provideFromMethod
public void provideFromMethod(java.lang.reflect.Method method, java.lang.Object target) -
provideFromField
public void provideFromField(java.lang.reflect.Field field) -
parserNameFromMethod
-
parserNameFromField
-
createParser
-
allParserProviders
public static java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>,java.lang.Class<? extends AbstractParserProvider<?,?,?>>> allParserProviders()
-