Package org.glassfish.jersey.inject.hk2
Class JerseyClassAnalyzer
- java.lang.Object
-
- org.glassfish.jersey.inject.hk2.JerseyClassAnalyzer
-
- All Implemented Interfaces:
org.glassfish.hk2.api.ClassAnalyzer
@Singleton @Named("JerseyClassAnalyzer") public final class JerseyClassAnalyzer extends java.lang.Object implements org.glassfish.hk2.api.ClassAnalyzerImplementation of theClassAnalyzerthat supports selection of the constructor with largest number of parameters as defined in and required by JAX-RS specification.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classJerseyClassAnalyzer.BinderBinder for the JAX-RS compliant class analyzer implementation.
-
Field Summary
Fields Modifier and Type Field Description private org.glassfish.hk2.api.ClassAnalyzerdefaultAnalyzerstatic java.lang.StringNAMEName of the analyzer service.private LazyValue<java.util.Set<java.lang.Class>>resolverAnnotations
-
Constructor Summary
Constructors Modifier Constructor Description privateJerseyClassAnalyzer(org.glassfish.hk2.api.ClassAnalyzer defaultAnalyzer, java.util.function.Supplier<java.util.List<InjectionResolver>> supplierResolvers)Injection constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T> java.lang.reflect.Constructor<T>getConstructor(java.lang.Class<T> clazz)<T> java.util.Set<java.lang.reflect.Field>getFields(java.lang.Class<T> clazz)<T> java.util.Set<java.lang.reflect.Method>getInitializerMethods(java.lang.Class<T> clazz)<T> java.lang.reflect.MethodgetPostConstructMethod(java.lang.Class<T> clazz)<T> java.lang.reflect.MethodgetPreDestroyMethod(java.lang.Class<T> clazz)private booleanisCompatible(java.lang.reflect.Constructor<?> constructor)
-
-
-
Field Detail
-
NAME
public static final java.lang.String NAME
Name of the analyzer service.- See Also:
- Constant Field Values
-
defaultAnalyzer
private final org.glassfish.hk2.api.ClassAnalyzer defaultAnalyzer
-
resolverAnnotations
private final LazyValue<java.util.Set<java.lang.Class>> resolverAnnotations
-
-
Constructor Detail
-
JerseyClassAnalyzer
private JerseyClassAnalyzer(org.glassfish.hk2.api.ClassAnalyzer defaultAnalyzer, java.util.function.Supplier<java.util.List<InjectionResolver>> supplierResolvers)Injection constructor.- Parameters:
defaultAnalyzer- default HK2 class analyzer.supplierResolvers- configured injection resolvers.
-
-
Method Detail
-
getConstructor
public <T> java.lang.reflect.Constructor<T> getConstructor(java.lang.Class<T> clazz) throws org.glassfish.hk2.api.MultiException, java.lang.NoSuchMethodException- Specified by:
getConstructorin interfaceorg.glassfish.hk2.api.ClassAnalyzer- Throws:
org.glassfish.hk2.api.MultiExceptionjava.lang.NoSuchMethodException
-
isCompatible
private boolean isCompatible(java.lang.reflect.Constructor<?> constructor)
-
getInitializerMethods
public <T> java.util.Set<java.lang.reflect.Method> getInitializerMethods(java.lang.Class<T> clazz) throws org.glassfish.hk2.api.MultiException- Specified by:
getInitializerMethodsin interfaceorg.glassfish.hk2.api.ClassAnalyzer- Throws:
org.glassfish.hk2.api.MultiException
-
getFields
public <T> java.util.Set<java.lang.reflect.Field> getFields(java.lang.Class<T> clazz) throws org.glassfish.hk2.api.MultiException- Specified by:
getFieldsin interfaceorg.glassfish.hk2.api.ClassAnalyzer- Throws:
org.glassfish.hk2.api.MultiException
-
getPostConstructMethod
public <T> java.lang.reflect.Method getPostConstructMethod(java.lang.Class<T> clazz) throws org.glassfish.hk2.api.MultiException- Specified by:
getPostConstructMethodin interfaceorg.glassfish.hk2.api.ClassAnalyzer- Throws:
org.glassfish.hk2.api.MultiException
-
getPreDestroyMethod
public <T> java.lang.reflect.Method getPreDestroyMethod(java.lang.Class<T> clazz) throws org.glassfish.hk2.api.MultiException- Specified by:
getPreDestroyMethodin interfaceorg.glassfish.hk2.api.ClassAnalyzer- Throws:
org.glassfish.hk2.api.MultiException
-
-