/**
*
*/
package ecologylab.io;
import java.io.File;
import ecologylab.appframework.Environment;
import ecologylab.net.ParsedURL;
/**
* @author andrew
*
*/
public class AssetsRoot
{
private ParsedURL assetRoot;
private File cacheRoot;
public AssetsRoot(ParsedURL assetRoot, File cacheRoot)
{
this.assetRoot = assetRoot;
this.cacheRoot = cacheRoot;
}
/**
* Create new AssetsRoot object which stores locations for remote and cached assets.
*
* @param relativePath
* Relative path to assets from root.
* @param cacheDir
* Directory where assets are cached. If null, uses Assets.cacheRoot.
*/
public AssetsRoot(String relativePath, File cacheDir)
{
this( Assets.assetsRoot().getRelative(relativePath, "forming assets root"),
Files.newFile((cacheDir == null) ? Assets.cacheRoot() : cacheDir, relativePath));
}
/**
* Create new AssetsRoot object which stores locations for remote and cached assets.
*
* @param the
* Environment for which to retrieve the path.
* @param relativePath
* Relative path to assets from root.
* @param cacheDir
* Directory where assets are cached. If null, uses Assets.cacheRoot.
*/
public AssetsRoot(Environment e, String relativePath, File cacheDir)
{
this( Assets.assetsRoot(e).getRelative(relativePath, "forming assets root"),
Files.newFile((cacheDir == null) ? Assets.cacheRoot() : cacheDir, relativePath));
}
public ParsedURL getAssetRoot()
{
return assetRoot;
}
public File getCacheRoot()
{
return cacheRoot;
}
}