Class ResourceTransformerSupport
java.lang.Object
org.springframework.web.servlet.resource.ResourceTransformerSupport
- All Implemented Interfaces:
ResourceTransformer
- Direct Known Subclasses:
CssLinkResourceTransformer
A base class for a
ResourceTransformer
with an optional helper method
for resolving public links within a transformed resource.- Since:
- 4.1
- Author:
- Brian Clozel, Rossen Stoyanchev, Juergen Hoeller
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionReturn the configuredResourceUrlProvider
.protected String
resolveUrlPath
(String resourcePath, HttpServletRequest request, Resource resource, ResourceTransformerChain transformerChain) A transformer can use this method when a resource being transformed contains links to other resources.void
setResourceUrlProvider
(ResourceUrlProvider resourceUrlProvider) Configure aResourceUrlProvider
to use when resolving the public URL of links in a transformed resource (e.g.protected String
toAbsolutePath
(String path, HttpServletRequest request) Transform the given relative request path to an absolute path, taking the path of the given request as a point of reference.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.springframework.web.servlet.resource.ResourceTransformer
transform
-
Constructor Details
-
ResourceTransformerSupport
public ResourceTransformerSupport()
-
-
Method Details
-
setResourceUrlProvider
Configure aResourceUrlProvider
to use when resolving the public URL of links in a transformed resource (e.g. import links in a CSS file). This is required only for links expressed as full paths and not for relative links. -
getResourceUrlProvider
Return the configuredResourceUrlProvider
. -
resolveUrlPath
@Nullable protected String resolveUrlPath(String resourcePath, HttpServletRequest request, Resource resource, ResourceTransformerChain transformerChain) A transformer can use this method when a resource being transformed contains links to other resources. Such links need to be replaced with the public facing link as determined by the resource resolver chain (e.g. the public URL may have a version inserted).- Parameters:
resourcePath
- the path to a resource that needs to be re-writtenrequest
- the current requestresource
- the resource being transformedtransformerChain
- the transformer chain- Returns:
- the resolved URL, or if not resolvable
-
toAbsolutePath
Transform the given relative request path to an absolute path, taking the path of the given request as a point of reference. The resulting path is also cleaned from sequences like "path/..".- Parameters:
path
- the relative path to transformrequest
- the referer request- Returns:
- the absolute request path for the given resource path
-