Package org.apache.tapestry5.services
Interface AssetPathConverter
- All Known Implementing Classes:
IdentityAssetPathConverter
public interface AssetPathConverter
Converts the path (or URI) of an asset into a new format. This
is the hook needed to make use of a Content
Delivery Network.
The default implementation of this is identity, the URI is passed through unchanged. Using a contribution to
the
ServiceOverride
service, you may override the default implementation.- Since:
- 5.1.0.0
-
Method Summary
Modifier and TypeMethodDescriptionconvertAssetPath
(String assetPath) Converts the default asset client URI to its final form, ready to be sent to the client.boolean
Returns true if the converter returns the exact same converted path for any specific asset path (in which case, the converted asset path may be cached in component instance variables more aggressively).
-
Method Details
-
isInvariant
boolean isInvariant()Returns true if the converter returns the exact same converted path for any specific asset path (in which case, the converted asset path may be cached in component instance variables more aggressively). This value should be false if the converted path can vary for the same input path ... that is, if external factors (such as the identity of the user, or information obtained from the request) is involved in generating the final client URI. With a CDN this can sometimes be the case, where the user's identity may indicate which CDN server to vend the asset from.- Returns:
- true if invariant (and therefore cacheable)
-
convertAssetPath
Converts the default asset client URI to its final form, ready to be sent to the client. The default asset path is an absolute path (it starts with a leading slash) and incorporates the context path if any.- Parameters:
assetPath
- default asset path- Returns:
- a URI that can be sent to the client
-