net.sf.retrotranslator.transformer
Class TargetEnvironment

java.lang.Object
  extended by net.sf.retrotranslator.transformer.TargetEnvironment

 class TargetEnvironment
extends java.lang.Object

Author:
Taras Puchko

Nested Class Summary
private static class TargetEnvironment.DirectoryEntry
           
private static interface TargetEnvironment.Entry
           
private static class TargetEnvironment.ZipFileEntry
           
 
Field Summary
private  java.lang.ref.SoftReference<java.util.Map<java.lang.String,byte[]>> cacheReference
           
private  java.lang.ClassLoader classLoader
           
private  boolean contextual
           
private  java.util.List<TargetEnvironment.Entry> entries
           
private  SystemLogger logger
           
private static byte[] NO_CONTENT
           
 
Constructor Summary
TargetEnvironment(java.lang.ClassLoader classLoader, SystemLogger logger, boolean contextual)
           
 
Method Summary
 void appendPath(java.io.File element)
           
 void close()
           
 ClassReader findClassReader(java.lang.String className)
           
private  java.util.Map<java.lang.String,byte[]> getCache()
           
 byte[] getClassContent(java.lang.String name)
           
 ClassReader getClassReader(java.lang.String name)
           
private  java.util.List<byte[]> getResources(java.lang.String name, int maxCount)
           
 java.util.Collection<java.lang.String> readRegistry(java.lang.String name, ClassVersion target)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

NO_CONTENT

private static byte[] NO_CONTENT

classLoader

private final java.lang.ClassLoader classLoader

logger

private final SystemLogger logger

contextual

private final boolean contextual

entries

private final java.util.List<TargetEnvironment.Entry> entries

cacheReference

private java.lang.ref.SoftReference<java.util.Map<java.lang.String,byte[]>> cacheReference
Constructor Detail

TargetEnvironment

public TargetEnvironment(java.lang.ClassLoader classLoader,
                         SystemLogger logger,
                         boolean contextual)
Method Detail

appendPath

public void appendPath(java.io.File element)

getClassReader

public ClassReader getClassReader(java.lang.String name)
                           throws java.lang.ClassNotFoundException
Throws:
java.lang.ClassNotFoundException

findClassReader

public ClassReader findClassReader(java.lang.String className)

getClassContent

public byte[] getClassContent(java.lang.String name)

getCache

private java.util.Map<java.lang.String,byte[]> getCache()

close

public void close()

readRegistry

public java.util.Collection<java.lang.String> readRegistry(java.lang.String name,
                                                           ClassVersion target)

getResources

private java.util.List<byte[]> getResources(java.lang.String name,
                                            int maxCount)