blob: 9d4df524d4de1ac048753878914ffaa6f4c8ef14 [file] [log] [blame]
package org.apache.myfaces.trinidadbuild.plugin.faces;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import javax.xml.transform.Source;
import javax.xml.transform.TransformerException;
import javax.xml.transform.URIResolver;
import javax.xml.transform.stream.StreamSource;
public /**
* this resolver is to make sure imports of other stylesheets within the classpath get loaded
*/
class JarResourceResolver implements URIResolver {
public Source resolve(String href, String base) throws TransformerException {
if (!href.startsWith("jar:"))
{
try {
URL defaultResolvedUrl = new URL(new URL(base), href);
return new StreamSource(defaultResolvedUrl.toString());
}
catch (MalformedURLException ex)
{
throw new TransformerException(ex);
}
}
else
{
try
{
String resource = href.substring(4); // chop off the jar:
InputStream is = getClass().getResourceAsStream(resource);
return new StreamSource(is, resource);
}
catch (Exception ex)
{
throw new TransformerException(ex);
}
}
}
}