diff options
Diffstat (limited to 'nailgun_launcher/ClassLoaderCache2.java')
-rw-r--r-- | nailgun_launcher/ClassLoaderCache2.java | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/nailgun_launcher/ClassLoaderCache2.java b/nailgun_launcher/ClassLoaderCache2.java new file mode 100644 index 0000000..bf9ca3b --- /dev/null +++ b/nailgun_launcher/ClassLoaderCache2.java @@ -0,0 +1,37 @@ +package cbt; + +import java.util.*; +import java.util.concurrent.ConcurrentHashMap; +import static java.io.File.pathSeparator; +import static cbt.Stage0Lib.*; + +final class ClassLoaderCache2<T>{ + ConcurrentHashMap<String,Object> keys; + ConcurrentHashMap<Object,T> values; + + public ClassLoaderCache2( + ConcurrentHashMap<String,Object> keys, + ConcurrentHashMap<Object,T> values + ){ + this.keys = keys; + this.values = values; + } + + public T get( String key ){ + return values.get( + keys.get( key ) + ); + } + + public Boolean contains( String key ){ + return keys.containsKey( key ); + } + + public T put( T value, String key ){ + LockableKey2 keyObject = new LockableKey2(); + keys.put( key, keyObject ); + values.put( keyObject, value ); + return value; + } +} +class LockableKey2{}
\ No newline at end of file |