import org.osgi.framework.Bundle;
/** {@link ResourceLoader} implementation wrapping an {@link Bundle}. */
-class BundleResourceLoader implements ResourceLoader {
+public class BundleResourceLoader implements ResourceLoader {
private final Bundle bundle;
public BundleResourceLoader(Bundle bundle) {
@Override
public InputStream getResourceAsStream(String resourceName) throws IOException {
- URL res = bundle.getResource(resourceName);
- if (res == null)
- throw new CmsException("Resource " + resourceName + " not found in bundle " + bundle.getSymbolicName());
+ URL res = bundle.getEntry(resourceName);
+ if (res == null) {
+ res = bundle.getResource(resourceName);
+ if (res == null)
+ throw new CmsException("Resource " + resourceName + " not found in bundle " + bundle.getSymbolicName());
+ }
return res.openStream();
}
+ public Bundle getBundle() {
+ return bundle;
+ }
+
}