Package org.apache.tapestry5.services.assets

# Interface AssetPathConstructor

All Known Implementing Classes:
  `AssetPathConstructorImpl`

public interface AssetPathConstructor
Encapsulates the logic or creating the path portion of an asset URL, including hooking the `AssetPathConverter` into the generation.

Since:
  5.2.0
See Also:
  - `PathConstructor`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `String`
  `constructAssetPath(String virtualFolder, String path, StreamableResource resource)`
  Constructs an asset URL path from the virtual folder and path (within the virtual folder).

- ## Method Details

  - ### constructAssetPath

    @IncompatibleChange(release="5.4", details="resource parameter added, IOException may now be thrown") String constructAssetPath(String virtualFolder, String path, StreamableResource resource) throws IOException
    Constructs an asset URL path from the virtual folder and path (within the virtual folder). After constructing the string (and honoring the `SymbolConstants.ASSET_URL_FULL_QUALIFIED` symbol), the result is passed through the `AssetPathConverter`.
    Parameters:
      `virtualFolder` - corresponds to a `AssetRequestHandler` contributed to the AssetDispatcher service
      `path` - a path that can be used to identify the underlying `Resource` or or re-acquire the `StreamableResource`; this will be the final portion of the URL, after the appropriate prefix (based on whether the resource is compressed or not) and the checksum for the resource
      `resource` - underlying resource for the asset path; the checksum portion of the URL is obtained from the resource
    Returns:
      path portion of asset URL, which is everything needed by the `AssetDispatcher` to find and stream the resource
    Throws:
      `IOException`
    See Also:
      - `StreamableResourceSource`