Class JavaElementFactory
- java.lang.Object
-
- io.micronaut.annotation.processing.visitor.JavaElementFactory
-
- All Implemented Interfaces:
io.micronaut.inject.ast.ElementFactory<javax.lang.model.element.Element,javax.lang.model.element.TypeElement,javax.lang.model.element.ExecutableElement,javax.lang.model.element.VariableElement>
public class JavaElementFactory extends java.lang.Object implements io.micronaut.inject.ast.ElementFactory<javax.lang.model.element.Element,javax.lang.model.element.TypeElement,javax.lang.model.element.ExecutableElement,javax.lang.model.element.VariableElement>An implementation ofElementFactoryfor Java.- Since:
- 2.3.0
-
-
Constructor Summary
Constructors Constructor Description JavaElementFactory(JavaVisitorContext visitorContext)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description JavaClassElementnewClassElement(javax.lang.model.element.TypeElement type, io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)io.micronaut.inject.ast.ClassElementnewClassElement(javax.lang.model.element.TypeElement type, io.micronaut.core.annotation.AnnotationMetadata annotationMetadata, java.util.Map<java.lang.String,io.micronaut.inject.ast.ClassElement> resolvedGenerics)io.micronaut.annotation.processing.visitor.JavaConstructorElementnewConstructorElement(io.micronaut.inject.ast.ClassElement declaringClass, javax.lang.model.element.ExecutableElement constructor, io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)io.micronaut.annotation.processing.visitor.JavaEnumConstantElementnewEnumConstantElement(io.micronaut.inject.ast.ClassElement declaringClass, javax.lang.model.element.VariableElement enumConstant, io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)io.micronaut.annotation.processing.visitor.JavaFieldElementnewFieldElement(io.micronaut.inject.ast.ClassElement declaringClass, javax.lang.model.element.VariableElement field, io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)io.micronaut.annotation.processing.visitor.JavaFieldElementnewFieldElement(javax.lang.model.element.VariableElement field, io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)JavaMethodElementnewMethodElement(io.micronaut.inject.ast.ClassElement declaringClass, javax.lang.model.element.ExecutableElement method, io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)JavaMethodElementnewMethodElement(io.micronaut.inject.ast.ClassElement declaringClass, javax.lang.model.element.ExecutableElement method, io.micronaut.core.annotation.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.JavaParameterElementnewParameterElement(io.micronaut.inject.ast.ClassElement declaringClass, javax.lang.model.element.VariableElement field, io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)Creates a new parameter element for the given arguments.JavaClassElementnewSourceClassElement(javax.lang.model.element.TypeElement type, io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)JavaMethodElementnewSourceMethodElement(io.micronaut.inject.ast.ClassElement declaringClass, javax.lang.model.element.ExecutableElement method, io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)
-
-
-
Constructor Detail
-
JavaElementFactory
public JavaElementFactory(JavaVisitorContext visitorContext)
-
-
Method Detail
-
newClassElement
@NonNull public JavaClassElement newClassElement(@NonNull javax.lang.model.element.TypeElement type, @NonNull io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)
- Specified by:
newClassElementin interfaceio.micronaut.inject.ast.ElementFactory<javax.lang.model.element.Element,javax.lang.model.element.TypeElement,javax.lang.model.element.ExecutableElement,javax.lang.model.element.VariableElement>
-
newClassElement
@NonNull public io.micronaut.inject.ast.ClassElement newClassElement(@NonNull javax.lang.model.element.TypeElement type, @NonNull io.micronaut.core.annotation.AnnotationMetadata annotationMetadata, @NonNull java.util.Map<java.lang.String,io.micronaut.inject.ast.ClassElement> resolvedGenerics)- Specified by:
newClassElementin interfaceio.micronaut.inject.ast.ElementFactory<javax.lang.model.element.Element,javax.lang.model.element.TypeElement,javax.lang.model.element.ExecutableElement,javax.lang.model.element.VariableElement>
-
newSourceClassElement
@NonNull public JavaClassElement newSourceClassElement(@NonNull javax.lang.model.element.TypeElement type, @NonNull io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)
- Specified by:
newSourceClassElementin interfaceio.micronaut.inject.ast.ElementFactory<javax.lang.model.element.Element,javax.lang.model.element.TypeElement,javax.lang.model.element.ExecutableElement,javax.lang.model.element.VariableElement>
-
newSourceMethodElement
@NonNull public JavaMethodElement newSourceMethodElement(io.micronaut.inject.ast.ClassElement declaringClass, @NonNull javax.lang.model.element.ExecutableElement method, @NonNull io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)
- Specified by:
newSourceMethodElementin interfaceio.micronaut.inject.ast.ElementFactory<javax.lang.model.element.Element,javax.lang.model.element.TypeElement,javax.lang.model.element.ExecutableElement,javax.lang.model.element.VariableElement>
-
newMethodElement
@NonNull public JavaMethodElement newMethodElement(io.micronaut.inject.ast.ClassElement declaringClass, @NonNull javax.lang.model.element.ExecutableElement method, @NonNull io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)
- Specified by:
newMethodElementin interfaceio.micronaut.inject.ast.ElementFactory<javax.lang.model.element.Element,javax.lang.model.element.TypeElement,javax.lang.model.element.ExecutableElement,javax.lang.model.element.VariableElement>
-
newMethodElement
public JavaMethodElement newMethodElement(io.micronaut.inject.ast.ClassElement declaringClass, @NonNull javax.lang.model.element.ExecutableElement method, @NonNull io.micronaut.core.annotation.AnnotationMetadata annotationMetadata, @Nullable 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.- Parameters:
declaringClass- The declaring classmethod- The methodannotationMetadata- The annotation metadatagenericTypes- The generic type info- Returns:
- The method element
-
newConstructorElement
@NonNull public io.micronaut.annotation.processing.visitor.JavaConstructorElement newConstructorElement(io.micronaut.inject.ast.ClassElement declaringClass, @NonNull javax.lang.model.element.ExecutableElement constructor, @NonNull io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)- Specified by:
newConstructorElementin interfaceio.micronaut.inject.ast.ElementFactory<javax.lang.model.element.Element,javax.lang.model.element.TypeElement,javax.lang.model.element.ExecutableElement,javax.lang.model.element.VariableElement>
-
newEnumConstantElement
@NonNull public io.micronaut.annotation.processing.visitor.JavaEnumConstantElement newEnumConstantElement(io.micronaut.inject.ast.ClassElement declaringClass, @NonNull javax.lang.model.element.VariableElement enumConstant, @NonNull io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)- Specified by:
newEnumConstantElementin interfaceio.micronaut.inject.ast.ElementFactory<javax.lang.model.element.Element,javax.lang.model.element.TypeElement,javax.lang.model.element.ExecutableElement,javax.lang.model.element.VariableElement>
-
newFieldElement
@NonNull public io.micronaut.annotation.processing.visitor.JavaFieldElement newFieldElement(io.micronaut.inject.ast.ClassElement declaringClass, @NonNull javax.lang.model.element.VariableElement field, @NonNull io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)- Specified by:
newFieldElementin interfaceio.micronaut.inject.ast.ElementFactory<javax.lang.model.element.Element,javax.lang.model.element.TypeElement,javax.lang.model.element.ExecutableElement,javax.lang.model.element.VariableElement>
-
newFieldElement
@NonNull public io.micronaut.annotation.processing.visitor.JavaFieldElement newFieldElement(@NonNull javax.lang.model.element.VariableElement field, @NonNull io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)- Specified by:
newFieldElementin interfaceio.micronaut.inject.ast.ElementFactory<javax.lang.model.element.Element,javax.lang.model.element.TypeElement,javax.lang.model.element.ExecutableElement,javax.lang.model.element.VariableElement>
-
newParameterElement
@NonNull public io.micronaut.annotation.processing.visitor.JavaParameterElement newParameterElement(io.micronaut.inject.ast.ClassElement declaringClass, @NonNull javax.lang.model.element.VariableElement field, @NonNull io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)Creates a new parameter element for the given arguments.- Parameters:
declaringClass- The declaring classfield- The fieldannotationMetadata- The annotation metadata- Returns:
- The parameter element
-
-