Class CSSURLRewriter
- java.lang.Object
-
- org.apache.tapestry5.internal.services.assets.DelegatingSRS
-
- org.apache.tapestry5.internal.services.assets.CSSURLRewriter
-
- All Implemented Interfaces:
StreamableResourceSource
public class CSSURLRewriter extends DelegatingSRS
Rewrites theurl()
attributes inside a CSS (MIME type "text/css")) resource. Eachurl
is expanded to a complete path; this allows for CSS aggregation, where the location of the CSS file will change (which would ordinarily break relative URLs), and for changing the relative directories of the CSS file and the image assets it may refer to (useful for incorporating a hash of the resource's content into the exposed URL). One potential problem with URL rewriting is the way that URLs for referenced resources are generated; we are somewhat banking on the fact that referenced resources are non-compressable images.- Since:
- 5.4
- See Also:
SymbolConstants.STRICT_CSS_URL_REWRITING
-
-
Field Summary
-
Fields inherited from class org.apache.tapestry5.internal.services.assets.DelegatingSRS
delegate
-
-
Constructor Summary
Constructors Constructor Description CSSURLRewriter(StreamableResourceSource delegate, OperationTracker tracker, AssetSource assetSource, AssetChecksumGenerator checksumGenerator, boolean strictCssUrlRewriting)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description StreamableResource
getStreamableResource(Resource baseResource, StreamableResourceProcessing processing, ResourceDependencies dependencies)
Converts a Resource (which must be non-null and exist) into a streamable resource, along with some additional optional behaviors.-
Methods inherited from class org.apache.tapestry5.internal.services.assets.DelegatingSRS
fileExtensionsForContentType
-
-
-
-
Constructor Detail
-
CSSURLRewriter
public CSSURLRewriter(StreamableResourceSource delegate, OperationTracker tracker, AssetSource assetSource, AssetChecksumGenerator checksumGenerator, boolean strictCssUrlRewriting)
-
-
Method Detail
-
getStreamableResource
public StreamableResource getStreamableResource(Resource baseResource, StreamableResourceProcessing processing, ResourceDependencies dependencies) throws IOException
Description copied from interface:StreamableResourceSource
Converts a Resource (which must be non-null and exist) into a streamable resource, along with some additional optional behaviors.- Specified by:
getStreamableResource
in interfaceStreamableResourceSource
- Overrides:
getStreamableResource
in classDelegatingSRS
- Parameters:
baseResource
- the resource to convertprocessing
- defines additional processing after the resource has been read and possibly transformeddependencies
- Passed to anyResourceTransformer
to track additional dependencies of the base resource- Returns:
- the contents of the Resource, possibly transformed, in a streamable format.
- Throws:
IOException
- if the resource does not exist or a URL for the content is not available
-
-