Package org.jvnet.hk2.generator.internal
Class ClassVisitorImpl
- java.lang.Object
-
- org.objectweb.asm.ClassVisitor
-
- org.jvnet.hk2.generator.internal.AbstractClassVisitorImpl
-
- org.jvnet.hk2.generator.internal.ClassVisitorImpl
-
public class ClassVisitorImpl extends AbstractClassVisitorImpl
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private classClassVisitorImpl.ConfiguredMethodVisitorprivate classClassVisitorImpl.ContractsProvidedAnnotationVisitorprivate classClassVisitorImpl.DecorateAnnotationVisitorprivate static classClassVisitorImpl.DecorateDataprivate static classClassVisitorImpl.GeneratedNameMethodFinderVisitorprivate classClassVisitorImpl.MetadataAnnotationVisitorprivate static classClassVisitorImpl.MethodRankAnnotationVisitorprivate static classClassVisitorImpl.MethodUseProxyAnnotationVisitorprivate static classClassVisitorImpl.MethodVisibilityAnnotationVisitorprivate classClassVisitorImpl.MethodVisitorImplprivate static classClassVisitorImpl.NamedAnnotationVisitorprivate classClassVisitorImpl.RankAnnotationVisitorprivate classClassVisitorImpl.ServiceAnnotationVisitorprivate classClassVisitorImpl.UseProxyAnnotationVisitorprivate classClassVisitorImpl.VisibilityAnnotationVisitor
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.StringANALYZERprivate ClassVisitorImpl.NamedAnnotationVisitorbaseNameprivate java.lang.StringclassAnalyzerprivate java.util.Map<java.lang.String,GenerateMethodAnnotationData>classLevelGeneratorsprivate static java.lang.StringCONFIGURED_CLASS_FORMprivate static java.lang.StringCONTRACTS_PROVIDED_CLASS_FORMprivate static java.lang.StringDECORATE_CLASS_FORMprivate static java.lang.StringDECORATE_METHOD_NAMEprivate static java.lang.StringDECORATE_TARGET_TYPEprivate static java.lang.StringDECORATE_WITHprivate ClassVisitorImpl.DecorateDatadecorateDataprivate booleanfactoryMethodFoundprivate java.util.LinkedList<DescriptorImpl>generatedDescriptorsprivate java.util.LinkedHashSet<java.lang.String>iFacesprivate java.lang.StringimplNameprivate booleanisAServiceprivate booleanisConfiguredprivate booleanisFactoryprivate static java.lang.StringLOCALprivate java.util.Map<java.lang.String,java.util.List<java.lang.String>>metadataprivate static java.lang.StringMETADATAprivate java.lang.StringmetadataStringprivate static java.lang.StringMETHOD_ACTUALMust be the same value as from the GenerateServiceFromMethod valuestatic java.lang.StringMETHOD_NAMEMust be the same value as from the GenerateServiceFromMethod valueprivate static java.lang.StringNAMEstatic java.lang.StringPARENT_CONFIGUREDMust be the same value as from the GenerateServiceFromMethod valueprivate static java.lang.StringPROVIDEprivate java.util.LinkedHashSet<java.lang.String>providedContractsprivate java.util.LinkedList<java.lang.String>qualifiersprivate java.lang.Integerrankprivate static java.lang.StringRANK_CLASS_FORMprivate java.lang.StringscopeClassprivate java.util.List<java.io.File>searchHeresprivate static java.lang.StringSERVICE_CLASS_FORMprivate static java.lang.StringUSE_PROXY_CLASS_FORMprivate java.lang.BooleanuseProxyprivate Utilitiesutilitiesprivate static java.lang.StringVALUEprivate booleanverboseprivate DescriptorVisibilityvisibilityprivate static java.lang.StringVISIBILITY_CLASS_FORM
-
Constructor Summary
Constructors Constructor Description ClassVisitorImpl(Utilities utilities, boolean verbose, java.util.List<java.io.File> searchHeres)Creates this with the config to add to if this is a service
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private java.lang.StringgetDefaultName()java.util.List<DescriptorImpl>getGeneratedDescriptor()Gets the generated descriptor created by this visitorvoidvisit(int version, int access, java.lang.String name, java.lang.String signature, java.lang.String superName, java.lang.String[] interfaces)org.objectweb.asm.AnnotationVisitorvisitAnnotation(java.lang.String desc, boolean visible)private org.objectweb.asm.MethodVisitorvisitConfiguredMethod(int access, java.lang.String name, java.lang.String desc, java.lang.String signature, java.lang.String[] exceptions)voidvisitEnd()org.objectweb.asm.MethodVisitorvisitMethod(int access, java.lang.String name, java.lang.String desc, java.lang.String signature, java.lang.String[] exceptions)-
Methods inherited from class org.jvnet.hk2.generator.internal.AbstractClassVisitorImpl
visitAttribute, visitField, visitInnerClass, visitOuterClass, visitSource
-
-
-
-
Field Detail
-
SERVICE_CLASS_FORM
private static final java.lang.String SERVICE_CLASS_FORM
- See Also:
- Constant Field Values
-
CONTRACTS_PROVIDED_CLASS_FORM
private static final java.lang.String CONTRACTS_PROVIDED_CLASS_FORM
- See Also:
- Constant Field Values
-
RANK_CLASS_FORM
private static final java.lang.String RANK_CLASS_FORM
- See Also:
- Constant Field Values
-
CONFIGURED_CLASS_FORM
private static final java.lang.String CONFIGURED_CLASS_FORM
- See Also:
- Constant Field Values
-
DECORATE_CLASS_FORM
private static final java.lang.String DECORATE_CLASS_FORM
- See Also:
- Constant Field Values
-
USE_PROXY_CLASS_FORM
private static final java.lang.String USE_PROXY_CLASS_FORM
- See Also:
- Constant Field Values
-
VISIBILITY_CLASS_FORM
private static final java.lang.String VISIBILITY_CLASS_FORM
- See Also:
- Constant Field Values
-
NAME
private static final java.lang.String NAME
- See Also:
- Constant Field Values
-
METADATA
private static final java.lang.String METADATA
- See Also:
- Constant Field Values
-
VALUE
private static final java.lang.String VALUE
- See Also:
- Constant Field Values
-
PROVIDE
private static final java.lang.String PROVIDE
- See Also:
- Constant Field Values
-
LOCAL
private static final java.lang.String LOCAL
- See Also:
- Constant Field Values
-
ANALYZER
private static final java.lang.String ANALYZER
- See Also:
- Constant Field Values
-
METHOD_ACTUAL
private static final java.lang.String METHOD_ACTUAL
Must be the same value as from the GenerateServiceFromMethod value- See Also:
- Constant Field Values
-
METHOD_NAME
public static final java.lang.String METHOD_NAME
Must be the same value as from the GenerateServiceFromMethod value- See Also:
- Constant Field Values
-
PARENT_CONFIGURED
public static final java.lang.String PARENT_CONFIGURED
Must be the same value as from the GenerateServiceFromMethod value- See Also:
- Constant Field Values
-
verbose
private final boolean verbose
-
searchHeres
private final java.util.List<java.io.File> searchHeres
-
utilities
private final Utilities utilities
-
implName
private java.lang.String implName
-
iFaces
private final java.util.LinkedHashSet<java.lang.String> iFaces
-
providedContracts
private java.util.LinkedHashSet<java.lang.String> providedContracts
-
scopeClass
private java.lang.String scopeClass
-
qualifiers
private final java.util.LinkedList<java.lang.String> qualifiers
-
isAService
private boolean isAService
-
isConfigured
private boolean isConfigured
-
baseName
private ClassVisitorImpl.NamedAnnotationVisitor baseName
-
metadataString
private java.lang.String metadataString
-
rank
private java.lang.Integer rank
-
useProxy
private java.lang.Boolean useProxy
-
visibility
private DescriptorVisibility visibility
-
metadata
private final java.util.Map<java.lang.String,java.util.List<java.lang.String>> metadata
-
classAnalyzer
private java.lang.String classAnalyzer
-
generatedDescriptors
private final java.util.LinkedList<DescriptorImpl> generatedDescriptors
-
isFactory
private boolean isFactory
-
factoryMethodFound
private boolean factoryMethodFound
-
decorateData
private ClassVisitorImpl.DecorateData decorateData
-
classLevelGenerators
private final java.util.Map<java.lang.String,GenerateMethodAnnotationData> classLevelGenerators
-
DECORATE_TARGET_TYPE
private static final java.lang.String DECORATE_TARGET_TYPE
- See Also:
- Constant Field Values
-
DECORATE_METHOD_NAME
private static final java.lang.String DECORATE_METHOD_NAME
- See Also:
- Constant Field Values
-
DECORATE_WITH
private static final java.lang.String DECORATE_WITH
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ClassVisitorImpl
public ClassVisitorImpl(Utilities utilities, boolean verbose, java.util.List<java.io.File> searchHeres)
Creates this with the config to add to if this is a service- Parameters:
utilities- The utilities class to use for this visitor (preserves cache)verbose- true if we should print out any service we are bindingsearchHere- if we cannot classload something directly, search for it here
-
-
Method Detail
-
visit
public void visit(int version, int access, java.lang.String name, java.lang.String signature, java.lang.String superName, java.lang.String[] interfaces)- Overrides:
visitin classAbstractClassVisitorImpl
-
visitAnnotation
public org.objectweb.asm.AnnotationVisitor visitAnnotation(java.lang.String desc, boolean visible)- Overrides:
visitAnnotationin classAbstractClassVisitorImpl
-
getDefaultName
private java.lang.String getDefaultName()
-
visitEnd
public void visitEnd()
- Overrides:
visitEndin classAbstractClassVisitorImpl
-
visitConfiguredMethod
private org.objectweb.asm.MethodVisitor visitConfiguredMethod(int access, java.lang.String name, java.lang.String desc, java.lang.String signature, java.lang.String[] exceptions)
-
visitMethod
public org.objectweb.asm.MethodVisitor visitMethod(int access, java.lang.String name, java.lang.String desc, java.lang.String signature, java.lang.String[] exceptions)- Overrides:
visitMethodin classAbstractClassVisitorImpl
-
getGeneratedDescriptor
public java.util.List<DescriptorImpl> getGeneratedDescriptor()
Gets the generated descriptor created by this visitor- Returns:
- The descriptor generated by this visitor, or null if the class was not annotated with @Service
-
-