public class RepositoryRestHandlerMapping extends BasePathAwareHandlerMapping
RequestMappingHandlerMapping
implementation that will only find a handler method if a
Repository
is exported under that URL path segment. Also ensures the
OpenEntityManagerInViewInterceptor
is registered in the application context. The OEMIVI is required for the
REST exporter to function properly.logger
BEST_MATCHING_HANDLER_ATTRIBUTE, BEST_MATCHING_PATTERN_ATTRIBUTE, INTROSPECT_TYPE_LEVEL_MAPPING, LOOKUP_PATH, MATRIX_VARIABLES_ATTRIBUTE, PATH_WITHIN_HANDLER_MAPPING_ATTRIBUTE, PRODUCIBLE_MEDIA_TYPES_ATTRIBUTE, URI_TEMPLATE_VARIABLES_ATTRIBUTE
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
Constructor and Description |
---|
RepositoryRestHandlerMapping(ResourceMappings mappings,
RepositoryRestConfiguration config)
Creates a new
RepositoryRestHandlerMapping for the given ResourceMappings and
RepositoryRestConfiguration . |
RepositoryRestHandlerMapping(ResourceMappings mappings,
RepositoryRestConfiguration config,
Repositories repositories)
Creates a new
RepositoryRestHandlerMapping for the given ResourceMappings
RepositoryRestConfiguration and Repositories . |
Modifier and Type | Method and Description |
---|---|
protected ProducesRequestCondition |
customize(ProducesRequestCondition condition)
Customize the given
ProducesRequestCondition . |
protected void |
extendInterceptors(List<Object> interceptors) |
protected CorsConfiguration |
getCorsConfiguration(Object handler,
javax.servlet.http.HttpServletRequest request) |
protected HandlerMethod |
handleNoMatch(Set<RequestMappingInfo> requestMappingInfos,
String lookupPath,
javax.servlet.http.HttpServletRequest request) |
protected boolean |
isHandler(Class<?> beanType) |
protected HandlerMethod |
lookupHandlerMethod(String lookupPath,
javax.servlet.http.HttpServletRequest request) |
void |
setEmbeddedValueResolver(StringValueResolver resolver) |
void |
setJpaHelper(JpaHelper jpaHelper) |
afterPropertiesSet, customize, getMappingForMethod, hasCorsConfigurationSource
createRequestMappingInfo, getContentNegotiationManager, getCustomMethodCondition, getCustomTypeCondition, getFileExtensions, getPathPrefixes, initCorsConfiguration, match, registerHandlerMethod, registerMapping, resolveEmbeddedValuesInPatterns, setContentNegotiationManager, setPathPrefixes, setUseRegisteredSuffixPatternMatch, setUseSuffixPatternMatch, setUseTrailingSlashMatch, useRegisteredSuffixPatternMatch, useSuffixPatternMatch, useTrailingSlashMatch
getHandlerInternal, getMappingComparator, getMappingPathPatterns, getMatchingMapping, handleMatch
createHandlerMethod, detectHandlerMethods, getCandidateBeanNames, getHandlerMethods, getHandlerMethodsForMappingName, getNamingStrategy, handlerMethodsInitialized, initHandlerMethods, processCandidateBean, setDetectHandlerMethodsInAncestorContexts, setHandlerMethodMappingNamingStrategy, unregisterMapping
adaptInterceptor, detectMappedInterceptors, formatMappingName, getAdaptedInterceptors, getCorsHandlerExecutionChain, getCorsProcessor, getDefaultHandler, getHandler, getHandlerExecutionChain, getMappedInterceptors, getOrder, getPathMatcher, getUrlPathHelper, initApplicationContext, initInterceptors, setAlwaysUseFullPath, setBeanName, setCorsConfigurations, setCorsConfigurationSource, setCorsProcessor, setDefaultHandler, setInterceptors, setOrder, setPathMatcher, setRemoveSemicolonContent, setUrlDecode, setUrlPathHelper
getServletContext, getTempDir, getWebApplicationContext, initApplicationContext, initServletContext, isContextRequired, setServletContext
getApplicationContext, getMessageSourceAccessor, obtainApplicationContext, requiredContextClass, setApplicationContext
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getHandler
public RepositoryRestHandlerMapping(ResourceMappings mappings, RepositoryRestConfiguration config)
RepositoryRestHandlerMapping
for the given ResourceMappings
and
RepositoryRestConfiguration
.mappings
- must not be null.config
- must not be null.public RepositoryRestHandlerMapping(ResourceMappings mappings, RepositoryRestConfiguration config, Repositories repositories)
RepositoryRestHandlerMapping
for the given ResourceMappings
RepositoryRestConfiguration
and Repositories
.mappings
- must not be null.config
- must not be null.repositories
- must not be null.public void setJpaHelper(JpaHelper jpaHelper)
jpaHelper
- the jpaHelper to setpublic void setEmbeddedValueResolver(StringValueResolver resolver)
setEmbeddedValueResolver
in interface EmbeddedValueResolverAware
setEmbeddedValueResolver
in class RequestMappingHandlerMapping
protected HandlerMethod lookupHandlerMethod(String lookupPath, javax.servlet.http.HttpServletRequest request) throws Exception
lookupHandlerMethod
in class BasePathAwareHandlerMapping
Exception
protected HandlerMethod handleNoMatch(Set<RequestMappingInfo> requestMappingInfos, String lookupPath, javax.servlet.http.HttpServletRequest request) throws javax.servlet.ServletException
handleNoMatch
in class RequestMappingInfoHandlerMapping
javax.servlet.ServletException
protected boolean isHandler(Class<?> beanType)
isHandler
in class BasePathAwareHandlerMapping
protected void extendInterceptors(List<Object> interceptors)
extendInterceptors
in class AbstractHandlerMapping
protected ProducesRequestCondition customize(ProducesRequestCondition condition)
BasePathAwareHandlerMapping
ProducesRequestCondition
. Default implementation returns the condition as is.customize
in class BasePathAwareHandlerMapping
condition
- will never be null.protected CorsConfiguration getCorsConfiguration(Object handler, javax.servlet.http.HttpServletRequest request)
getCorsConfiguration
in class AbstractHandlerMethodMapping<RequestMappingInfo>
Copyright © 2011–2020 Pivotal Software, Inc.. All rights reserved.