Interface ExecutionHandle<T,R>

Type Parameters:
T - The target type
R - The result type
All Superinterfaces:
io.micronaut.core.annotation.AnnotationMetadata, io.micronaut.core.annotation.AnnotationMetadataDelegate, io.micronaut.core.annotation.AnnotationMetadataProvider, io.micronaut.core.annotation.AnnotationSource
All Known Subinterfaces:
MethodExecutionHandle<T,R>, UnsafeExecutionHandle<T,R>

public interface ExecutionHandle<T,R> extends io.micronaut.core.annotation.AnnotationMetadataDelegate

Represents a handle to an executable object. Differs from Executable in that the first argument to invoke(Object...) is not the object instead the object is typically held within the handle itself.

Executable handles are also applicable to constructors and static methods

Since:
1.0
  • Field Summary

    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
  • Method Summary

    Modifier and Type
    Method
    Description
    io.micronaut.core.type.Argument[]
     
     
    The target of the method invocation.
    invoke(Object... arguments)
    Invokes the method.
    static <T2, R2> MethodExecutionHandle<T2,R2>
    of(T2 bean, ExecutableMethod<T2,R2> method)
    Creates an ExecutionHandle for the give bean and method.

    Methods inherited from interface io.micronaut.core.annotation.AnnotationMetadata

    enumValuesSet, enumValuesSet, getValues, hasDeclaredStereotype, hasEvaluatedExpressions, hasStereotypeNonRepeating, isAnnotationPresent, isDeclaredAnnotationPresent

    Methods inherited from interface io.micronaut.core.annotation.AnnotationMetadataDelegate

    booleanValue, booleanValue, booleanValue, booleanValue, classValue, classValue, classValue, classValue, classValues, classValues, classValues, classValues, copyAnnotationMetadata, 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, getAnnotationValuesByName, getAnnotationValuesByStereotype, getAnnotationValuesByType, getDeclaredAnnotation, getDeclaredAnnotation, getDeclaredAnnotationNameByStereotype, getDeclaredAnnotationNames, getDeclaredAnnotationNamesByStereotype, getDeclaredAnnotationTypeByStereotype, getDeclaredAnnotationTypeByStereotype, getDeclaredAnnotationValuesByName, getDeclaredAnnotationValuesByType, getDeclaredMetadata, getDeclaredStereotypeAnnotationNames, getDefaultValue, getDefaultValue, getDefaultValue, getDefaultValue, getDefaultValues, getStereotypeAnnotationNames, getTargetAnnotationMetadata, 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
  • Method Details

    • getTarget

      T getTarget()
      The target of the method invocation.
      Returns:
      The target object
    • getDeclaringType

      Class<T> getDeclaringType()
      Returns:
      The declaring type
    • getArguments

      io.micronaut.core.type.Argument[] getArguments()
      Returns:
      The required argument types.
    • invoke

      R invoke(Object... arguments)
      Invokes the method.
      Parameters:
      arguments - The arguments
      Returns:
      The result
    • of

      static <T2, R2> MethodExecutionHandle<T2,R2> of(T2 bean, ExecutableMethod<T2,R2> method)
      Creates an ExecutionHandle for the give bean and method.
      Type Parameters:
      T2 - The bean type
      R2 - The method return type
      Parameters:
      bean - The bean
      method - The method
      Returns:
      The execution handle