org.apache.tapestry.asset
Interface AssetFactory

All Known Implementing Classes:
ClasspathAssetFactory, ContextAssetFactory, DefaultAssetFactory

public interface AssetFactory

A service which creates an asset. In some cases, the asset is selected based on the Resource (typically of the component or page specification).

Since:
4.0
Author:
Howard M. Lewis Ship

Method Summary
 IAsset createAbsoluteAsset(java.lang.String path, java.util.Locale locale, org.apache.hivemind.Location location)
          Creates a new asset relative to the root of the domain defined by the type of asset.
 IAsset createAsset(org.apache.hivemind.Resource resource, org.apache.hivemind.Location location)
          Creates a new asset based on a known resource.
 IAsset createAsset(org.apache.hivemind.Resource baseResource, java.lang.String path, java.util.Locale locale, org.apache.hivemind.Location location)
          Creates a new asset relative to an existing asset.
 

Method Detail

createAsset

public IAsset createAsset(org.apache.hivemind.Resource baseResource,
                          java.lang.String path,
                          java.util.Locale locale,
                          org.apache.hivemind.Location location)
Creates a new asset relative to an existing asset.

Parameters:
baseResource - the base resource from which an asset path may be calculated. Each type of asset is linked to a particular implemenation of Resource, and generates a corresponding implementation of IAsset.
path - the path relative to the resource (if no leading slash), or an absolute path within the domain of the asset type (i.e, within the classpath, or within the web application).
locale - the desired locale of the asset; the closest match will be used.
location - the location to be associated with the returned asset, or null to not attempt to localize the asset
Throws:
org.apache.hivemind.ApplicationRuntimeException - if no matching asset may be found.

createAbsoluteAsset

public IAsset createAbsoluteAsset(java.lang.String path,
                                  java.util.Locale locale,
                                  org.apache.hivemind.Location location)
Creates a new asset relative to the root of the domain defined by the type of asset.

Parameters:
path - the absolute path for the resource
locale - the locale to localize the asset to, or null for no localization
location - the location used to report any errors
Returns:
an IAsset

createAsset

public IAsset createAsset(org.apache.hivemind.Resource resource,
                          org.apache.hivemind.Location location)
Creates a new asset based on a known resource.