Interface UriRouteMatch<T,​R>

  • Type Parameters:
    T - The target type
    R - The return type
    All Superinterfaces:
    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, java.util.concurrent.Callable<R>, io.micronaut.inject.ExecutionHandle<T,​R>, MethodBasedRouteMatch<T,​R>, io.micronaut.inject.MethodExecutionHandle<T,​R>, io.micronaut.inject.MethodReference, io.micronaut.core.naming.Named, java.util.function.Predicate<io.micronaut.http.HttpRequest>, RouteInfo<R>, RouteMatch<R>, io.micronaut.http.uri.UriMatchInfo

    public interface UriRouteMatch<T,​R>
    extends io.micronaut.http.uri.UriMatchInfo, MethodBasedRouteMatch<T,​R>
    A RouteMatch that matches a URI and HttpMethod.
    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

      All Methods Instance Methods Abstract Methods Default Methods 
      Modifier and Type Method Description
      UriRouteMatch<T,​R> decorate​(java.util.function.Function<RouteMatch<R>,​R> executor)
      Decorates the execution of the route with the given executor.
      UriRouteMatch<T,​R> fulfill​(java.util.Map<java.lang.String,​java.lang.Object> argumentValues)
      Returns a new RouteMatch fulfilling arguments required by this route to execute.
      io.micronaut.http.HttpMethod getHttpMethod()  
      default java.util.List<io.micronaut.core.type.Argument> getRequiredArguments()
      Returns the required arguments for this RouteMatch.
      UriRoute getRoute()  
      • 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.ExecutionHandle

        getArguments, getDeclaringType, getTarget, invoke
      • Methods inherited from interface io.micronaut.inject.MethodExecutionHandle

        getExecutableMethod
      • Methods inherited from interface io.micronaut.inject.MethodReference

        getArgumentNames, getArguments, getArgumentTypes, getDeclaringType, getMethodName, getName, getReturnType, getTargetMethod
      • Methods inherited from interface java.util.function.Predicate

        and, negate, or, test
      • Methods inherited from interface io.micronaut.http.uri.UriMatchInfo

        getUri, getVariableMap, getVariables, getVariableValues
    • Method Detail

      • getRequiredArguments

        default java.util.List<io.micronaut.core.type.Argument> getRequiredArguments()

        Returns the required arguments for this RouteMatch.

        Note that this is not the save as ExecutionHandle.getArguments() as it will include a subset of the arguments excluding those that have been subtracted from the URI variables

        Specified by:
        getRequiredArguments in interface MethodBasedRouteMatch<T,​R>
        Specified by:
        getRequiredArguments in interface RouteMatch<T>
        Returns:
        The required arguments in order to invoke this route
      • getHttpMethod

        io.micronaut.http.HttpMethod getHttpMethod()
        Returns:
        The matched HTTP method
      • fulfill

        UriRouteMatch<T,​R> fulfill​(java.util.Map<java.lang.String,​java.lang.Object> argumentValues)
        Description copied from interface: RouteMatch
        Returns a new RouteMatch fulfilling arguments required by this route to execute. The new route will not return the given arguments from the RouteMatch.getRequiredArguments() method.
        Specified by:
        fulfill in interface RouteMatch<T>
        Parameters:
        argumentValues - The argument values
        Returns:
        The fulfilled route
      • decorate

        UriRouteMatch<T,​R> decorate​(java.util.function.Function<RouteMatch<R>,​R> executor)
        Description copied from interface: RouteMatch
        Decorates the execution of the route with the given executor.
        Specified by:
        decorate in interface RouteMatch<T>
        Parameters:
        executor - The executor
        Returns:
        A new route match