public class JavaElementFactory extends java.lang.Object implements ElementFactory<javax.lang.model.element.Element,javax.lang.model.element.TypeElement,javax.lang.model.element.ExecutableElement,javax.lang.model.element.VariableElement>
ElementFactory
for Java.Constructor and Description |
---|
JavaElementFactory(JavaVisitorContext visitorContext) |
Modifier and Type | Method and Description |
---|---|
JavaClassElement |
newClassElement(javax.lang.model.element.TypeElement type,
AnnotationMetadata annotationMetadata)
Builds a new class element for the given type.
|
ClassElement |
newClassElement(javax.lang.model.element.TypeElement type,
AnnotationMetadata annotationMetadata,
java.util.Map<java.lang.String,ClassElement> resolvedGenerics)
Builds a new class element for the given type.
|
io.micronaut.annotation.processing.visitor.JavaConstructorElement |
newConstructorElement(ClassElement declaringClass,
javax.lang.model.element.ExecutableElement constructor,
AnnotationMetadata annotationMetadata)
Builds a new constructor element for the given type.
|
io.micronaut.annotation.processing.visitor.JavaFieldElement |
newFieldElement(ClassElement declaringClass,
javax.lang.model.element.VariableElement field,
AnnotationMetadata annotationMetadata)
Builds a new field element for the given type.
|
io.micronaut.annotation.processing.visitor.JavaFieldElement |
newFieldElement(javax.lang.model.element.VariableElement field,
AnnotationMetadata annotationMetadata)
Builds a new field element for the given field.
|
JavaMethodElement |
newMethodElement(ClassElement declaringClass,
javax.lang.model.element.ExecutableElement method,
AnnotationMetadata annotationMetadata)
Builds a new method element for the given type.
|
JavaMethodElement |
newMethodElement(ClassElement declaringClass,
javax.lang.model.element.ExecutableElement method,
AnnotationMetadata annotationMetadata,
java.util.Map<java.lang.String,java.util.Map<java.lang.String,javax.lang.model.type.TypeMirror>> genericTypes)
Constructs a method method element with the given generic type information.
|
io.micronaut.annotation.processing.visitor.JavaParameterElement |
newParameterElement(ClassElement declaringClass,
javax.lang.model.element.VariableElement field,
AnnotationMetadata annotationMetadata)
Creates a new parameter element for the given arguments.
|
JavaClassElement |
newSourceClassElement(javax.lang.model.element.TypeElement type,
AnnotationMetadata annotationMetadata)
Builds a new source class element for the given type.
|
JavaMethodElement |
newSourceMethodElement(ClassElement declaringClass,
javax.lang.model.element.ExecutableElement method,
AnnotationMetadata annotationMetadata)
Builds a new source method element for the given method.
|
public JavaElementFactory(JavaVisitorContext visitorContext)
@NonNull public JavaClassElement newClassElement(@NonNull javax.lang.model.element.TypeElement type, @NonNull AnnotationMetadata annotationMetadata)
ElementFactory
newClassElement
in interface ElementFactory<javax.lang.model.element.Element,javax.lang.model.element.TypeElement,javax.lang.model.element.ExecutableElement,javax.lang.model.element.VariableElement>
type
- The typeannotationMetadata
- The resolved annotation metadata@NonNull public ClassElement newClassElement(@NonNull javax.lang.model.element.TypeElement type, @NonNull AnnotationMetadata annotationMetadata, @NonNull java.util.Map<java.lang.String,ClassElement> resolvedGenerics)
ElementFactory
newClassElement
in interface ElementFactory<javax.lang.model.element.Element,javax.lang.model.element.TypeElement,javax.lang.model.element.ExecutableElement,javax.lang.model.element.VariableElement>
type
- The typeannotationMetadata
- The resolved annotation metadataresolvedGenerics
- The resolved generics@NonNull public JavaClassElement newSourceClassElement(@NonNull javax.lang.model.element.TypeElement type, @NonNull AnnotationMetadata annotationMetadata)
ElementFactory
ElementFactory.newClassElement(Object, AnnotationMetadata)
in that
it should only be called from elements that are known to originate from source code.newSourceClassElement
in interface ElementFactory<javax.lang.model.element.Element,javax.lang.model.element.TypeElement,javax.lang.model.element.ExecutableElement,javax.lang.model.element.VariableElement>
type
- The typeannotationMetadata
- The resolved annotation metadata@NonNull public JavaMethodElement newSourceMethodElement(ClassElement declaringClass, @NonNull javax.lang.model.element.ExecutableElement method, @NonNull AnnotationMetadata annotationMetadata)
ElementFactory
ElementFactory.newMethodElement(ClassElement, Object, AnnotationMetadata)
in that
it should only be called from elements that are known to originate from source code.newSourceMethodElement
in interface ElementFactory<javax.lang.model.element.Element,javax.lang.model.element.TypeElement,javax.lang.model.element.ExecutableElement,javax.lang.model.element.VariableElement>
declaringClass
- The declaring classmethod
- The methodannotationMetadata
- The resolved annotation metadata@NonNull public JavaMethodElement newMethodElement(ClassElement declaringClass, @NonNull javax.lang.model.element.ExecutableElement method, @NonNull AnnotationMetadata annotationMetadata)
ElementFactory
newMethodElement
in interface ElementFactory<javax.lang.model.element.Element,javax.lang.model.element.TypeElement,javax.lang.model.element.ExecutableElement,javax.lang.model.element.VariableElement>
declaringClass
- The declaring classmethod
- The methodannotationMetadata
- The resolved annotation metadatapublic JavaMethodElement newMethodElement(ClassElement declaringClass, @NonNull javax.lang.model.element.ExecutableElement method, @NonNull AnnotationMetadata annotationMetadata, @Nullable java.util.Map<java.lang.String,java.util.Map<java.lang.String,javax.lang.model.type.TypeMirror>> genericTypes)
declaringClass
- The declaring classmethod
- The methodannotationMetadata
- The annotation metadatagenericTypes
- The generic type info@NonNull public io.micronaut.annotation.processing.visitor.JavaConstructorElement newConstructorElement(ClassElement declaringClass, @NonNull javax.lang.model.element.ExecutableElement constructor, @NonNull AnnotationMetadata annotationMetadata)
ElementFactory
newConstructorElement
in interface ElementFactory<javax.lang.model.element.Element,javax.lang.model.element.TypeElement,javax.lang.model.element.ExecutableElement,javax.lang.model.element.VariableElement>
declaringClass
- The declaring classconstructor
- The constructorannotationMetadata
- The resolved annotation metadata@NonNull public io.micronaut.annotation.processing.visitor.JavaFieldElement newFieldElement(ClassElement declaringClass, @NonNull javax.lang.model.element.VariableElement field, @NonNull AnnotationMetadata annotationMetadata)
ElementFactory
newFieldElement
in interface ElementFactory<javax.lang.model.element.Element,javax.lang.model.element.TypeElement,javax.lang.model.element.ExecutableElement,javax.lang.model.element.VariableElement>
declaringClass
- The declaring classfield
- The fieldannotationMetadata
- The resolved annotation metadata@NonNull public io.micronaut.annotation.processing.visitor.JavaFieldElement newFieldElement(@NonNull javax.lang.model.element.VariableElement field, @NonNull AnnotationMetadata annotationMetadata)
ElementFactory
newFieldElement
in interface ElementFactory<javax.lang.model.element.Element,javax.lang.model.element.TypeElement,javax.lang.model.element.ExecutableElement,javax.lang.model.element.VariableElement>
field
- The fieldannotationMetadata
- The resolved annotation metadata@NonNull public io.micronaut.annotation.processing.visitor.JavaParameterElement newParameterElement(ClassElement declaringClass, @NonNull javax.lang.model.element.VariableElement field, @NonNull AnnotationMetadata annotationMetadata)
declaringClass
- The declaring classfield
- The fieldannotationMetadata
- The annotation metadata