Class AbstractParserProvider<A extends java.lang.annotation.Annotation,​R,​P extends ResourceParser<? extends com.adelean.inject.resources.core.Parsable<?>,​?>>

    • Field Detail

      • PARSER_PROVIDERS

        public static final java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>,​java.lang.Class<? extends AbstractParserProvider<?,​?,​?>>> PARSER_PROVIDERS
      • testInstance

        protected final java.lang.Object testInstance
      • testClass

        protected final java.lang.Class<?> testClass
      • annotationType

        protected final java.lang.Class<A extends java.lang.annotation.Annotation> annotationType
    • Constructor Detail

      • AbstractParserProvider

        public AbstractParserProvider​(InjectionContext injectionContext,
                                      @Nullable
                                      @Nullable java.lang.Object testInstance,
                                      java.lang.Class<?> testClass,
                                      java.lang.Class<A> annotationType)
    • Method Detail

      • 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

        protected java.lang.String parserNameFromMethod​(java.lang.reflect.Method method,
                                                        A annotation)
      • parserNameFromField

        protected java.lang.String parserNameFromField​(java.lang.reflect.Field field,
                                                       A annotation)
      • createParser

        protected abstract P createParser​(A parserAnnotation,
                                          R parser)
      • allParserProviders

        public static java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>,​java.lang.Class<? extends AbstractParserProvider<?,​?,​?>>> allParserProviders()