public class CssLinkResourceTransformer extends ResourceTransformerSupport
ResourceTransformer
implementation that modifies links in a CSS
file to match the public URL paths that should be exposed to clients (e.g.
with an MD5 content-based hash inserted in the URL).
The implementation looks for links in CSS @import
statements and
also inside CSS url()
functions. All links are then passed through the
ResourceResolverChain
and resolved relative to the location of the
containing CSS file. If successfully resolved, the link is modified, otherwise
the original link is preserved.
Modifier and Type | Class and Description |
---|---|
protected static class |
CssLinkResourceTransformer.AbstractLinkParser
Abstract base class for
CssLinkResourceTransformer.LinkParser implementations. |
protected static interface |
CssLinkResourceTransformer.LinkParser
Extract content chunks that represent links.
|
Constructor and Description |
---|
CssLinkResourceTransformer() |
Modifier and Type | Method and Description |
---|---|
reactor.core.publisher.Mono<Resource> |
transform(ServerWebExchange exchange,
Resource inputResource,
ResourceTransformerChain transformerChain)
Transform the given resource.
|
getResourceUrlProvider, resolveUrlPath, setResourceUrlProvider, toAbsolutePath
public reactor.core.publisher.Mono<Resource> transform(ServerWebExchange exchange, Resource inputResource, ResourceTransformerChain transformerChain)
ResourceTransformer
exchange
- the current exchangeinputResource
- the resource to transformtransformerChain
- the chain of remaining transformers to delegate to