diff options
author | Christopher Vogt <oss.nsp@cvogt.org> | 2016-11-03 02:47:31 +0000 |
---|---|---|
committer | Christopher Vogt <oss.nsp@cvogt.org> | 2016-11-03 14:17:38 -0400 |
commit | eb21b485fbc3972f66bed7d8af62900712cb3b0b (patch) | |
tree | 92ac88a45f77f033dd58a003df942fa3aa67362a /nailgun_launcher | |
parent | 131954279c0937b499bddc52c15a300b1af7b9bc (diff) | |
download | cbt-eb21b485fbc3972f66bed7d8af62900712cb3b0b.tar.gz cbt-eb21b485fbc3972f66bed7d8af62900712cb3b0b.tar.bz2 cbt-eb21b485fbc3972f66bed7d8af62900712cb3b0b.zip |
Add support for resources (still limited by CBT's classloader visibility)
Diffstat (limited to 'nailgun_launcher')
-rw-r--r-- | nailgun_launcher/MultiClassLoader2.java | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/nailgun_launcher/MultiClassLoader2.java b/nailgun_launcher/MultiClassLoader2.java index fadd963..46e7527 100644 --- a/nailgun_launcher/MultiClassLoader2.java +++ b/nailgun_launcher/MultiClassLoader2.java @@ -1,5 +1,6 @@ package cbt; import java.net.*; +import java.io.*; import java.util.*; public class MultiClassLoader2 extends ClassLoader{ @@ -23,6 +24,22 @@ public class MultiClassLoader2 extends ClassLoader{ // System.err.println("NOT FOUND: "+name); return null; } + public URL findResource(String name){ + for(ClassLoader parent: parents){ + URL res = parent.getResource(name); + if(res != null) return res; + } + return null; + } + public Enumeration<URL> findResources(String name) throws IOException{ + ArrayList<URL> resources = new ArrayList<URL>(); + for(ClassLoader parent: parents){ + for(URL resource: Collections.list(parent.getResources(name))){ + resources.add( resource ); + } + } + return Collections.enumeration(resources); + } public String toString(){ return super.toString() + "(" + Arrays.toString(parents) +")"; } |