public class ResourceUrlProvider extends Object implements ApplicationListener<ContextRefreshedEvent>
This class is aware of Spring MVC handler mappings used to serve static
 resources and uses the ResourceResolver chains of the configured
 ResourceHttpRequestHandlers to make its decisions.
| Constructor and Description | 
|---|
| ResourceUrlProvider() | 
| Modifier and Type | Method and Description | 
|---|---|
| protected void | detectResourceHandlers(ApplicationContext appContext) | 
| String | getForLookupPath(String lookupPath)Compare the given path against configured resource handler mappings and
 if a match is found use the  ResourceResolverchain of the matchedResourceHttpRequestHandlerto resolve the URL path to expose for
 public use. | 
| String | getForRequestUrl(HttpServletRequest request,
                String requestUrl)A variation on  getForLookupPath(String)that accepts a full request
 URL path (i.e. | 
| Map<String,ResourceHttpRequestHandler> | getHandlerMap()Return the resource mappings, either manually configured or auto-detected
 when the Spring  ApplicationContextis refreshed. | 
| PathMatcher | getPathMatcher()Return the configured  PathMatcher. | 
| UrlPathHelper | getUrlPathHelper()Return the configured  UrlPathHelper. | 
| boolean | isAutodetect()Return  falseif resource mappings were manually configured,trueotherwise. | 
| void | onApplicationEvent(ContextRefreshedEvent event)Handle an application event. | 
| void | setHandlerMap(Map<String,ResourceHttpRequestHandler> handlerMap)Manually configure the resource mappings. | 
| void | setPathMatcher(PathMatcher pathMatcher)Configure a  PathMatcherto use when comparing target lookup path
 against resource mappings. | 
| void | setUrlPathHelper(UrlPathHelper urlPathHelper)Configure a  UrlPathHelperto use ingetForRequestUrl(javax.servlet.http.HttpServletRequest, String)in order to derive the lookup path for a target request URL path. | 
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitforPayloadprotected final Log logger
public void setUrlPathHelper(UrlPathHelper urlPathHelper)
UrlPathHelper to use in
 getForRequestUrl(javax.servlet.http.HttpServletRequest, String)
 in order to derive the lookup path for a target request URL path.public UrlPathHelper getUrlPathHelper()
UrlPathHelper.public void setPathMatcher(PathMatcher pathMatcher)
PathMatcher to use when comparing target lookup path
 against resource mappings.public PathMatcher getPathMatcher()
PathMatcher.public void setHandlerMap(@Nullable Map<String,ResourceHttpRequestHandler> handlerMap)
Note: by default resource mappings are auto-detected
 from the Spring ApplicationContext. However if this property is
 used, the auto-detection is turned off.
public Map<String,ResourceHttpRequestHandler> getHandlerMap()
ApplicationContext is refreshed.public boolean isAutodetect()
false if resource mappings were manually configured,
 true otherwise.public void onApplicationEvent(ContextRefreshedEvent event)
ApplicationListeneronApplicationEvent in interface ApplicationListener<ContextRefreshedEvent>event - the event to respond toprotected void detectResourceHandlers(ApplicationContext appContext)
@Nullable public final String getForRequestUrl(HttpServletRequest request, String requestUrl)
getForLookupPath(String) that accepts a full request
 URL path (i.e. including context and servlet path) and returns the full request
 URL path to expose for public use.request - the current requestrequestUrl - the request URL path to resolvenull if unresolved@Nullable public final String getForLookupPath(String lookupPath)
ResourceResolver chain of the matched
 ResourceHttpRequestHandler to resolve the URL path to expose for
 public use.
 It is expected that the given path is what Spring MVC would use for request mapping purposes, i.e. excluding context and servlet path portions.
If several handler mappings match, the handler used will be the one configured with the most specific pattern.
lookupPath - the lookup path to checknull if unresolved