Class JavaMethodElement

  • All Implemented Interfaces:
    io.micronaut.core.annotation.AnnotatedElement, io.micronaut.core.annotation.AnnotationMetadata, io.micronaut.core.annotation.AnnotationMetadataDelegate, io.micronaut.core.annotation.AnnotationMetadataProvider, io.micronaut.core.annotation.AnnotationSource, io.micronaut.core.naming.Described, io.micronaut.core.naming.Named, io.micronaut.inject.ast.Element, io.micronaut.inject.ast.MemberElement, io.micronaut.inject.ast.MethodElement

    @Internal
    public class JavaMethodElement
    extends AbstractJavaElement
    implements io.micronaut.inject.ast.MethodElement
    A method element returning data from a ExecutableElement.
    Since:
    1.0
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected JavaClassElement declaringClass  
      protected javax.lang.model.element.ExecutableElement executableElement  
      protected JavaVisitorContext visitorContext  
      • Fields inherited from interface io.micronaut.core.annotation.AnnotationMetadata

        CLASS_NAME_SUFFIX, EMPTY_METADATA, VALUE_MEMBER
      • Fields inherited from interface io.micronaut.core.annotation.AnnotationSource

        EMPTY
      • Fields inherited from interface io.micronaut.inject.ast.Element

        EMPTY_ELEMENT_ARRAY
    • Constructor Summary

      Constructors 
      Constructor Description
      JavaMethodElement​(JavaClassElement declaringClass, javax.lang.model.element.ExecutableElement executableElement, io.micronaut.core.annotation.AnnotationMetadata annotationMetadata, JavaVisitorContext visitorContext)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.util.List<? extends io.micronaut.inject.ast.GenericPlaceholderElement> getDeclaredTypeVariables()  
      io.micronaut.inject.ast.ClassElement getDeclaringType()  
      io.micronaut.inject.ast.ClassElement getGenericReturnType()  
      io.micronaut.inject.ast.ClassElement getOwningType()  
      io.micronaut.inject.ast.ParameterElement[] getParameters()  
      java.util.Optional<io.micronaut.inject.ast.ClassElement> getReceiverType()  
      io.micronaut.inject.ast.ClassElement getReturnType()  
      io.micronaut.inject.ast.ParameterElement[] getSuspendParameters()  
      io.micronaut.inject.ast.ClassElement[] getThrownTypes()  
      boolean isDefault()  
      boolean isSuspend()  
      protected io.micronaut.annotation.processing.visitor.JavaParameterElement newParameterElement​(javax.lang.model.element.VariableElement variableElement, io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)
      Creates a new parameter element for the given args.
      boolean overrides​(io.micronaut.inject.ast.MethodElement methodElement)  
      protected io.micronaut.inject.ast.ClassElement returnType​(java.util.Map<java.lang.String,​java.util.Map<java.lang.String,​javax.lang.model.type.TypeMirror>> info)
      The return type for the given info.
      io.micronaut.inject.ast.MethodElement withNewParameters​(io.micronaut.inject.ast.ParameterElement... newParameters)  
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface io.micronaut.core.annotation.AnnotatedElement

        isDeclaredNonNull, isDeclaredNullable, isNonNull, isNullable
      • Methods inherited from interface io.micronaut.core.annotation.AnnotationMetadata

        getAnnotationValuesByName, getAnnotationValuesByStereotype, getDeclaredAnnotationValuesByName, getValues, hasDeclaredStereotype, isAnnotationPresent, isDeclaredAnnotationPresent
      • Methods inherited from interface io.micronaut.core.annotation.AnnotationMetadataDelegate

        booleanValue, booleanValue, booleanValue, booleanValue, classValue, classValue, classValue, classValue, classValues, classValues, classValues, classValues, doubleValue, doubleValue, doubleValue, enumValue, enumValue, enumValue, enumValue, enumValues, enumValues, enumValues, enumValues, findAnnotation, findAnnotation, findDeclaredAnnotation, findDeclaredAnnotation, findRepeatableAnnotation, findRepeatableAnnotation, getAnnotation, getAnnotation, getAnnotationNameByStereotype, getAnnotationNameByStereotype, getAnnotationNames, getAnnotationNamesByStereotype, getAnnotationNamesByStereotype, getAnnotationType, getAnnotationType, getAnnotationTypeByStereotype, getAnnotationTypeByStereotype, getAnnotationTypesByStereotype, getAnnotationTypesByStereotype, getAnnotationTypesByStereotype, getAnnotationValuesByType, getDeclaredAnnotation, getDeclaredAnnotation, getDeclaredAnnotationNameByStereotype, getDeclaredAnnotationNames, getDeclaredAnnotationNamesByStereotype, getDeclaredAnnotationTypeByStereotype, getDeclaredAnnotationTypeByStereotype, getDeclaredAnnotationValuesByType, getDeclaredMetadata, getDeclaredStereotypeAnnotationNames, getDefaultValue, getDefaultValue, getDefaultValue, getDefaultValue, getDefaultValues, getStereotypeAnnotationNames, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValues, getValues, hasAnnotation, hasAnnotation, hasDeclaredAnnotation, hasDeclaredAnnotation, hasDeclaredStereotype, hasDeclaredStereotype, hasDeclaredStereotype, hasPropertyExpressions, hasSimpleAnnotation, hasSimpleDeclaredAnnotation, hasStereotype, hasStereotype, hasStereotype, hasStereotype, intValue, intValue, intValue, isAnnotationPresent, isDeclaredAnnotationPresent, isEmpty, isFalse, isFalse, isPresent, isPresent, isRepeatableAnnotation, isRepeatableAnnotation, isTrue, isTrue, longValue, longValue, stringValue, stringValue, stringValue, stringValue, stringValues, stringValues, stringValues, stringValues, synthesize, synthesize, synthesizeAll, synthesizeAnnotationsByType, synthesizeDeclared, synthesizeDeclared, synthesizeDeclared, synthesizeDeclaredAnnotationsByType
      • Methods inherited from interface io.micronaut.core.annotation.AnnotationMetadataProvider

        getAnnotationMetadata
      • Methods inherited from interface io.micronaut.inject.ast.Element

        annotate, annotate, annotate, annotate, annotate, getDescription, getDocumentation, getName, getNativeType, getSimpleName, isAbstract, isFinal, isPackagePrivate, isPrivate, isProtected, isPublic, isStatic, removeAnnotation, removeAnnotation, removeAnnotationIf, removeStereotype, removeStereotype
      • Methods inherited from interface io.micronaut.inject.ast.MemberElement

        getModifiers, isAccessible, isAccessible, isReflectionRequired, isReflectionRequired
      • Methods inherited from interface io.micronaut.inject.ast.MethodElement

        addAssociatedBean, getDescription, hasParameters
    • Field Detail

      • executableElement

        protected final javax.lang.model.element.ExecutableElement executableElement
    • Constructor Detail

      • JavaMethodElement

        public JavaMethodElement​(JavaClassElement declaringClass,
                                 javax.lang.model.element.ExecutableElement executableElement,
                                 io.micronaut.core.annotation.AnnotationMetadata annotationMetadata,
                                 JavaVisitorContext visitorContext)
        Parameters:
        declaringClass - The declaring class
        executableElement - The ExecutableElement
        annotationMetadata - The annotation metadata
        visitorContext - The visitor context
    • Method Detail

      • getReceiverType

        public java.util.Optional<io.micronaut.inject.ast.ClassElement> getReceiverType()
        Specified by:
        getReceiverType in interface io.micronaut.inject.ast.MethodElement
      • getThrownTypes

        @NonNull
        public io.micronaut.inject.ast.ClassElement[] getThrownTypes()
        Specified by:
        getThrownTypes in interface io.micronaut.inject.ast.MethodElement
      • isDefault

        public boolean isDefault()
        Specified by:
        isDefault in interface io.micronaut.inject.ast.MethodElement
      • overrides

        public boolean overrides​(io.micronaut.inject.ast.MethodElement methodElement)
        Specified by:
        overrides in interface io.micronaut.inject.ast.MethodElement
      • getGenericReturnType

        @NonNull
        public io.micronaut.inject.ast.ClassElement getGenericReturnType()
        Specified by:
        getGenericReturnType in interface io.micronaut.inject.ast.MethodElement
      • getReturnType

        @NonNull
        public io.micronaut.inject.ast.ClassElement getReturnType()
        Specified by:
        getReturnType in interface io.micronaut.inject.ast.MethodElement
      • getDeclaredTypeVariables

        public java.util.List<? extends io.micronaut.inject.ast.GenericPlaceholderElement> getDeclaredTypeVariables()
        Specified by:
        getDeclaredTypeVariables in interface io.micronaut.inject.ast.MethodElement
      • isSuspend

        public boolean isSuspend()
        Specified by:
        isSuspend in interface io.micronaut.inject.ast.MethodElement
      • getParameters

        public io.micronaut.inject.ast.ParameterElement[] getParameters()
        Specified by:
        getParameters in interface io.micronaut.inject.ast.MethodElement
      • withNewParameters

        public io.micronaut.inject.ast.MethodElement withNewParameters​(io.micronaut.inject.ast.ParameterElement... newParameters)
        Specified by:
        withNewParameters in interface io.micronaut.inject.ast.MethodElement
      • getSuspendParameters

        public io.micronaut.inject.ast.ParameterElement[] getSuspendParameters()
        Specified by:
        getSuspendParameters in interface io.micronaut.inject.ast.MethodElement
      • newParameterElement

        @NonNull
        protected io.micronaut.annotation.processing.visitor.JavaParameterElement newParameterElement​(@NonNull
                                                                                                      javax.lang.model.element.VariableElement variableElement,
                                                                                                      @NonNull
                                                                                                      io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)
        Creates a new parameter element for the given args.
        Parameters:
        variableElement - The variable element
        annotationMetadata - The annotation metadata
        Returns:
        The parameter element
      • getDeclaringType

        public io.micronaut.inject.ast.ClassElement getDeclaringType()
        Specified by:
        getDeclaringType in interface io.micronaut.inject.ast.MemberElement
      • getOwningType

        public io.micronaut.inject.ast.ClassElement getOwningType()
        Specified by:
        getOwningType in interface io.micronaut.inject.ast.MemberElement
      • returnType

        protected io.micronaut.inject.ast.ClassElement returnType​(java.util.Map<java.lang.String,​java.util.Map<java.lang.String,​javax.lang.model.type.TypeMirror>> info)
        The return type for the given info.
        Parameters:
        info - The info
        Returns:
        The return type