@Singleton
@Named(value="JerseyClassAnalyzer")
public final class JerseyClassAnalyzer
extends java.lang.Object
implements org.glassfish.hk2.api.ClassAnalyzer
ClassAnalyzer that supports selection
of the constructor with largest number of parameters as defined in
and required by JAX-RS specification.| Modifier and Type | Class and Description |
|---|---|
static class |
JerseyClassAnalyzer.Binder
HK2 binder for the JAX-RS compliant class analyzer implementation.
|
| Modifier and Type | Field and Description |
|---|---|
private org.glassfish.hk2.api.ClassAnalyzer |
defaultAnalyzer |
static java.lang.String |
NAME
Name of the analyzer service.
|
private java.util.Set<java.lang.Class<? extends java.lang.annotation.Annotation>> |
resolverAnnotations |
| Constructor and Description |
|---|
JerseyClassAnalyzer(org.glassfish.hk2.api.ClassAnalyzer defaultAnalyzer,
org.glassfish.hk2.api.IterableProvider<org.glassfish.hk2.api.InjectionResolver<?>> resolvers)
Injection constructor.
|
| Modifier and Type | Method and 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.Method |
getPostConstructMethod(java.lang.Class<T> clazz) |
<T> java.lang.reflect.Method |
getPreDestroyMethod(java.lang.Class<T> clazz) |
private boolean |
isCompatible(java.lang.reflect.Constructor<?> constructor) |
public static final java.lang.String NAME
private final org.glassfish.hk2.api.ClassAnalyzer defaultAnalyzer
private final java.util.Set<java.lang.Class<? extends java.lang.annotation.Annotation>> resolverAnnotations
@Inject
JerseyClassAnalyzer(@Named(value="default")
org.glassfish.hk2.api.ClassAnalyzer defaultAnalyzer,
org.glassfish.hk2.api.IterableProvider<org.glassfish.hk2.api.InjectionResolver<?>> resolvers)
defaultAnalyzer - default HK2 class analyzer.resolvers - configured injection resolvers.public <T> java.lang.reflect.Constructor<T> getConstructor(java.lang.Class<T> clazz)
throws org.glassfish.hk2.api.MultiException,
java.lang.NoSuchMethodException
getConstructor in interface org.glassfish.hk2.api.ClassAnalyzerorg.glassfish.hk2.api.MultiExceptionjava.lang.NoSuchMethodExceptionprivate boolean isCompatible(java.lang.reflect.Constructor<?> constructor)
public <T> java.util.Set<java.lang.reflect.Method> getInitializerMethods(java.lang.Class<T> clazz)
throws org.glassfish.hk2.api.MultiException
getInitializerMethods in interface org.glassfish.hk2.api.ClassAnalyzerorg.glassfish.hk2.api.MultiExceptionpublic <T> java.util.Set<java.lang.reflect.Field> getFields(java.lang.Class<T> clazz)
throws org.glassfish.hk2.api.MultiException
getFields in interface org.glassfish.hk2.api.ClassAnalyzerorg.glassfish.hk2.api.MultiExceptionpublic <T> java.lang.reflect.Method getPostConstructMethod(java.lang.Class<T> clazz)
throws org.glassfish.hk2.api.MultiException
getPostConstructMethod in interface org.glassfish.hk2.api.ClassAnalyzerorg.glassfish.hk2.api.MultiExceptionpublic <T> java.lang.reflect.Method getPreDestroyMethod(java.lang.Class<T> clazz)
throws org.glassfish.hk2.api.MultiException
getPreDestroyMethod in interface org.glassfish.hk2.api.ClassAnalyzerorg.glassfish.hk2.api.MultiException