public abstract class AbstractWebFluxEndpointHandlerMapping extends RequestMappingInfoHandlerMapping
HandlerMapping
that makes web endpoints available over HTTP using
Spring WebFlux.Modifier and Type | Class and Description |
---|---|
protected static class |
AbstractWebFluxEndpointHandlerMapping.ElasticSchedulerInvoker
An
OperationInvoker that performs the invocation of a blocking operation on
a separate thread using Reactor's bounded
elastic scheduler . |
protected static interface |
AbstractWebFluxEndpointHandlerMapping.LinksHandler
Reactive handler providing actuator links at the root endpoint.
|
protected static interface |
AbstractWebFluxEndpointHandlerMapping.ReactiveWebOperation
A reactive web operation that can be handled by WebFlux.
|
logger
BEST_MATCHING_HANDLER_ATTRIBUTE, BEST_MATCHING_PATTERN_ATTRIBUTE, MATRIX_VARIABLES_ATTRIBUTE, PATH_WITHIN_HANDLER_MAPPING_ATTRIBUTE, PRODUCIBLE_MEDIA_TYPES_ATTRIBUTE, URI_TEMPLATE_VARIABLES_ATTRIBUTE
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
Constructor and Description |
---|
AbstractWebFluxEndpointHandlerMapping(EndpointMapping endpointMapping,
Collection<ExposableWebEndpoint> endpoints,
EndpointMediaTypes endpointMediaTypes,
CorsConfiguration corsConfiguration,
boolean shouldRegisterLinksMapping)
Creates a new
AbstractWebFluxEndpointHandlerMapping that provides mappings
for the operations of the given webEndpoints . |
getMappingComparator, getMatchingMapping, handleMatch, handleNoMatch
afterPropertiesSet, detectHandlerMethods, getCorsConfiguration, getHandlerInternal, getHandlerMethods, handlerMethodsInitialized, lookupHandlerMethod, registerHandlerMethod, registerMapping, unregisterMapping
formatMappingName, getCorsProcessor, getHandler, getOrder, getPathPatternParser, setBeanName, setCorsConfigurations, setCorsConfigurationSource, setCorsProcessor, setOrder, setUseCaseSensitiveMatch, setUseTrailingSlashMatch
getApplicationContext, getMessageSourceAccessor, initApplicationContext, initApplicationContext, isContextRequired, obtainApplicationContext, requiredContextClass, setApplicationContext
public AbstractWebFluxEndpointHandlerMapping(EndpointMapping endpointMapping, Collection<ExposableWebEndpoint> endpoints, EndpointMediaTypes endpointMediaTypes, CorsConfiguration corsConfiguration, boolean shouldRegisterLinksMapping)
AbstractWebFluxEndpointHandlerMapping
that provides mappings
for the operations of the given webEndpoints
.endpointMapping
- the base mapping for all endpointsendpoints
- the web endpointsendpointMediaTypes
- media types consumed and produced by the endpointscorsConfiguration
- the CORS configuration for the endpointsshouldRegisterLinksMapping
- whether the links endpoint should be registeredprotected void initHandlerMethods()
initHandlerMethods
in class AbstractHandlerMethodMapping<RequestMappingInfo>
protected HandlerMethod createHandlerMethod(Object handler, Method method)
createHandlerMethod
in class AbstractHandlerMethodMapping<RequestMappingInfo>
protected AbstractWebFluxEndpointHandlerMapping.ReactiveWebOperation wrapReactiveWebOperation(ExposableWebEndpoint endpoint, WebOperation operation, AbstractWebFluxEndpointHandlerMapping.ReactiveWebOperation reactiveWebOperation)
AbstractWebFluxEndpointHandlerMapping.ReactiveWebOperation
before
it's called. Allows additional features, such as security, to be added.endpoint
- the source endpointoperation
- the source operationreactiveWebOperation
- the reactive web operation to wrapprotected boolean hasCorsConfigurationSource(Object handler)
hasCorsConfigurationSource
in class AbstractHandlerMethodMapping<RequestMappingInfo>
protected CorsConfiguration initCorsConfiguration(Object handler, Method method, RequestMappingInfo mapping)
initCorsConfiguration
in class AbstractHandlerMethodMapping<RequestMappingInfo>
protected boolean isHandler(Class<?> beanType)
isHandler
in class AbstractHandlerMethodMapping<RequestMappingInfo>
protected RequestMappingInfo getMappingForMethod(Method method, Class<?> handlerType)
getMappingForMethod
in class AbstractHandlerMethodMapping<RequestMappingInfo>
protected abstract AbstractWebFluxEndpointHandlerMapping.LinksHandler getLinksHandler()
public Collection<ExposableWebEndpoint> getEndpoints()