Annotation Type EnableWebFluxExtension


  • @Retention(RUNTIME)
    @Target(TYPE)
    @Documented
    @Import(io.microsphere.spring.webflux.annotation.WebFluxExtensionBeanDefinitionRegistrar.class)
    @EnableWebExtension
    public @interface EnableWebFluxExtension
    Enable annotation to extend the features of Spring WebFlux
    Since:
    1.0.0
    Author:
    Mercy
    See Also:
    EnableWebFlux, EnableWebExtension, WebFluxExtensionBeanDefinitionRegistrar
    • Optional Element Summary

      Optional Elements 
      Modifier and Type Optional Element Description
      boolean interceptHandlerMethods
      Indicate whether Spring Web HandlerMethod should be intercepted.
      boolean publishEvents
      Indicate whether it publishes the Spring Web extension events: HandlerMethodArgumentsResolvedEvent(if enabled) WebEndpointMappingsReadyEvent(if enabled) ServerRequestHandledEvent after WebHandler was handled
      boolean registerWebEndpointMappings
      Indicate whether The Spring Web registers the instances of WebEndpointMapping that source from Spring WebMVC, Spring WebFlux or Classical Servlet.
      io.microsphere.spring.web.util.RequestContextStrategy requestContextStrategy
      Indicate where the RequestAttributes stores.
      boolean reversedProxyHandlerMapping
      Indicate whether the ReversedProxyHandlerMapping is enabled or not.
      boolean storeRequestBodyArgument
      Indicate that RequestAttributes stores the argument of HandlerMethod that annotated RequestBody
      boolean storeResponseBodyReturnValue
      Indicate that RequestAttributes stores the return value of HandlerMethod before write as the ResponseBody
    • Element Detail

      • registerWebEndpointMappings

        @AliasFor(annotation=io.microsphere.spring.web.annotation.EnableWebExtension.class)
        boolean registerWebEndpointMappings
        Indicate whether The Spring Web registers the instances of WebEndpointMapping that source from Spring WebMVC, Spring WebFlux or Classical Servlet.
        Returns:
        true as default
        See Also:
        WebEndpointMapping, WebEndpointMappingResolver, WebEndpointMappingRegistry, WebEndpointMappingFactory, WebEndpointMappingFilter
        Default:
        true
      • interceptHandlerMethods

        @AliasFor(annotation=io.microsphere.spring.web.annotation.EnableWebExtension.class)
        boolean interceptHandlerMethods
        Indicate whether Spring Web HandlerMethod should be intercepted. If true, HandlerMethodArgumentInterceptor and HandlerMethodInterceptor beans will be initialized and then be invoked around HandlerMethod being executed.
        Returns:
        true as default
        See Also:
        HandlerMethodArgumentInterceptor, HandlerMethodInterceptor
        Default:
        true
      • publishEvents

        @AliasFor(annotation=io.microsphere.spring.web.annotation.EnableWebExtension.class)
        boolean publishEvents
        Indicate whether it publishes the Spring Web extension events:
        • HandlerMethodArgumentsResolvedEvent(if enabled)
        • WebEndpointMappingsReadyEvent(if enabled)
        • ServerRequestHandledEvent after WebHandler was handled
        Returns:
        true as default
        See Also:
        WebEventPublisher, WebEndpointMappingsReadyEvent, HandlerMethodArgumentsResolvedEvent, RequestHandledEventPublishingWebFilter, ServerRequestHandledEvent, RequestHandledEvent
        Default:
        true
      • requestContextStrategy

        @AliasFor(annotation=io.microsphere.spring.web.annotation.EnableWebExtension.class)
        io.microsphere.spring.web.util.RequestContextStrategy requestContextStrategy
        Indicate where the RequestAttributes stores.
        Returns:
        RequestContextStrategy.DEFAULT as default
        See Also:
        RequestAttributes, RequestContextHolder, RequestContextWebFilter, RequestContextStrategy
        Default:
        io.microsphere.spring.web.util.RequestContextStrategy.DEFAULT
      • storeRequestBodyArgument

        boolean storeRequestBodyArgument
        Indicate that RequestAttributes stores the argument of HandlerMethod that annotated RequestBody
        Returns:
        false as default
        See Also:
        RequestBody, HandlerMethod, RequestAttributesUtils.getHandlerMethodRequestBodyArgument(RequestAttributes, HandlerMethod)
        Default:
        false
      • storeResponseBodyReturnValue

        boolean storeResponseBodyReturnValue
        Indicate that RequestAttributes stores the return value of HandlerMethod before write as the ResponseBody
        Returns:
        false as default
        See Also:
        ResponseBody, RequestAttributesUtils.getHandlerMethodReturnValue(RequestAttributes, HandlerMethod)
        Default:
        false