Class InterceptingHandlerMethodProcessor

java.lang.Object
io.microsphere.spring.context.event.OnceApplicationContextEventListener<io.microsphere.spring.web.event.WebEndpointMappingsReadyEvent>
io.microsphere.spring.webflux.method.InterceptingHandlerMethodProcessor
All Implemented Interfaces:
EventListener, org.springframework.beans.factory.Aware, org.springframework.context.ApplicationContextAware, org.springframework.context.ApplicationListener<io.microsphere.spring.web.event.WebEndpointMappingsReadyEvent>, org.springframework.core.Ordered, org.springframework.web.reactive.HandlerAdapter, org.springframework.web.reactive.HandlerResultHandler, org.springframework.web.reactive.result.method.HandlerMethodArgumentResolver, org.springframework.web.server.WebExceptionHandler, org.springframework.web.server.WebFilter

public class InterceptingHandlerMethodProcessor extends io.microsphere.spring.context.event.OnceApplicationContextEventListener<io.microsphere.spring.web.event.WebEndpointMappingsReadyEvent> implements org.springframework.web.server.WebFilter, org.springframework.web.reactive.HandlerAdapter, org.springframework.web.reactive.result.method.HandlerMethodArgumentResolver, org.springframework.web.reactive.HandlerResultHandler, org.springframework.web.server.WebExceptionHandler, org.springframework.core.Ordered
The HandlerMethod processor that callbacks HandlerMethodAdvice beans based on HandlerMethodArgumentResolver, HandlerResultHandler.
Since:
1.0.0
Author:
Mercy
See Also:
  • HandlerMethodAdvice
  • HandlerMethodInterceptor
  • HandlerMethodArgumentInterceptor
  • HandlerMethodArgumentResolver
  • HandlerResultHandler
  • WebEndpointMappingsReadyEvent
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
     

    Fields inherited from interface org.springframework.core.Ordered

    HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    reactor.core.publisher.Mono<Void>
    filter(org.springframework.web.server.ServerWebExchange exchange, org.springframework.web.server.WebFilterChain chain)
     
    int
     
    reactor.core.publisher.Mono<org.springframework.web.reactive.HandlerResult>
    handle(org.springframework.web.server.ServerWebExchange exchange, Object handler)
     
    reactor.core.publisher.Mono<Void>
    handle(org.springframework.web.server.ServerWebExchange exchange, Throwable ex)
     
    reactor.core.publisher.Mono<Void>
    handleResult(org.springframework.web.server.ServerWebExchange exchange, org.springframework.web.reactive.HandlerResult handlerResult)
     
    protected void
    onApplicationContextEvent(io.microsphere.spring.web.event.WebEndpointMappingsReadyEvent event)
     
    reactor.core.publisher.Mono<Object>
    resolveArgument(org.springframework.core.MethodParameter parameter, org.springframework.web.reactive.BindingContext bindingContext, org.springframework.web.server.ServerWebExchange exchange)
     
    boolean
    supports(Object handler)
     
    boolean
    supports(org.springframework.web.reactive.HandlerResult result)
     
    boolean
    supportsParameter(org.springframework.core.MethodParameter parameter)
     

    Methods inherited from class io.microsphere.spring.context.event.OnceApplicationContextEventListener

    getApplicationContext, onApplicationEvent, setApplicationContext

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.springframework.context.ApplicationListener

    supportsAsyncExecution
  • Field Details

  • Constructor Details

    • InterceptingHandlerMethodProcessor

      public InterceptingHandlerMethodProcessor()
  • Method Details

    • filter

      public reactor.core.publisher.Mono<Void> filter(org.springframework.web.server.ServerWebExchange exchange, org.springframework.web.server.WebFilterChain chain)
      Specified by:
      filter in interface org.springframework.web.server.WebFilter
    • supports

      public boolean supports(Object handler)
      Specified by:
      supports in interface org.springframework.web.reactive.HandlerAdapter
    • handle

      public reactor.core.publisher.Mono<org.springframework.web.reactive.HandlerResult> handle(org.springframework.web.server.ServerWebExchange exchange, Object handler)
      Specified by:
      handle in interface org.springframework.web.reactive.HandlerAdapter
    • getOrder

      public int getOrder()
      Specified by:
      getOrder in interface org.springframework.core.Ordered
    • onApplicationContextEvent

      protected void onApplicationContextEvent(io.microsphere.spring.web.event.WebEndpointMappingsReadyEvent event)
      Specified by:
      onApplicationContextEvent in class io.microsphere.spring.context.event.OnceApplicationContextEventListener<io.microsphere.spring.web.event.WebEndpointMappingsReadyEvent>
    • supportsParameter

      public boolean supportsParameter(org.springframework.core.MethodParameter parameter)
      Specified by:
      supportsParameter in interface org.springframework.web.reactive.result.method.HandlerMethodArgumentResolver
    • supports

      public boolean supports(org.springframework.web.reactive.HandlerResult result)
      Specified by:
      supports in interface org.springframework.web.reactive.HandlerResultHandler
    • resolveArgument

      public reactor.core.publisher.Mono<Object> resolveArgument(org.springframework.core.MethodParameter parameter, org.springframework.web.reactive.BindingContext bindingContext, org.springframework.web.server.ServerWebExchange exchange)
      Specified by:
      resolveArgument in interface org.springframework.web.reactive.result.method.HandlerMethodArgumentResolver
    • handleResult

      public reactor.core.publisher.Mono<Void> handleResult(org.springframework.web.server.ServerWebExchange exchange, org.springframework.web.reactive.HandlerResult handlerResult)
      Specified by:
      handleResult in interface org.springframework.web.reactive.HandlerResultHandler
    • handle

      public reactor.core.publisher.Mono<Void> handle(org.springframework.web.server.ServerWebExchange exchange, Throwable ex)
      Specified by:
      handle in interface org.springframework.web.server.WebExceptionHandler