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 Type
    Method
    Description
    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