1.1 --- a/rt/vm/src/main/java/org/apidesign/vm4brwsr/LdrRsrcs.java Fri Apr 26 18:48:34 2013 +0200
1.2 +++ b/rt/vm/src/main/java/org/apidesign/vm4brwsr/LdrRsrcs.java Mon May 13 18:54:50 2013 +0200
1.3 @@ -27,70 +27,19 @@
1.4 * @author Jaroslav Tulach <jtulach@netbeans.org>
1.5 */
1.6 final class LdrRsrcs implements Bck2Brwsr.Resources {
1.7 - private final String module;
1.8 private final ClassLoader loader;
1.9
1.10 LdrRsrcs(ClassLoader loader) {
1.11 - this(null, loader);
1.12 - }
1.13 -
1.14 - LdrRsrcs(String module, ClassLoader loader) {
1.15 - this.module = module;
1.16 this.loader = loader;
1.17 }
1.18
1.19 @Override
1.20 public InputStream get(String name) throws IOException {
1.21 - final URL url = findSource(name);
1.22 - if (url == null) {
1.23 - return null;
1.24 - }
1.25 - if (module != null) {
1.26 - final String resourceModule = getModule(url);
1.27 - if ((resourceModule != null) && !module.equals(resourceModule)) {
1.28 - return null;
1.29 - }
1.30 - }
1.31 -
1.32 - return url.openStream();
1.33 - }
1.34 -
1.35 - private URL findSource(String name) throws IOException {
1.36 Enumeration<URL> en = loader.getResources(name);
1.37 URL u = null;
1.38 while (en.hasMoreElements()) {
1.39 u = en.nextElement();
1.40 }
1.41 - return u;
1.42 - }
1.43 -
1.44 - private static String getModule(URL url) throws IOException {
1.45 - if (!"jar".equalsIgnoreCase(url.getProtocol())) {
1.46 - return null;
1.47 - }
1.48 -
1.49 - final String fullPathString = url.getPath();
1.50 - final int sepIndex = fullPathString.indexOf('!');
1.51 - final String jarPathString =
1.52 - (sepIndex != -1) ? fullPathString.substring(0, sepIndex)
1.53 - : fullPathString;
1.54 - if (!jarPathString.endsWith(".jar")) {
1.55 - return null;
1.56 - }
1.57 -
1.58 - String moduleName =
1.59 - jarPathString.substring(
1.60 - jarPathString.lastIndexOf('/') + 1,
1.61 - jarPathString.length() - 4);
1.62 - if (moduleName.endsWith("-SNAPSHOT")) {
1.63 - moduleName = moduleName.substring(
1.64 - 0, moduleName.length() - 9);
1.65 - }
1.66 - final int dashIndex = moduleName.lastIndexOf('-');
1.67 - if (dashIndex != -1) {
1.68 - moduleName = moduleName.substring(0, dashIndex);
1.69 - }
1.70 -
1.71 - return moduleName;
1.72 + return (u != null) ? u.openStream() : null;
1.73 }
1.74 }