Class ClassInvestigator
- java.lang.Object
-
- org.apache.derby.iapi.services.classfile.ClassHolder
-
- org.apache.derby.iapi.services.classfile.ClassInvestigator
-
public class ClassInvestigator extends ClassHolder
-
-
Field Summary
-
Fields inherited from class org.apache.derby.iapi.services.classfile.ClassHolder
access_flags, attribute_info, cptEntries, cptHashTable, field_info, interfaces, major_version, method_info, minor_version, super_class, this_class
-
-
Constructor Summary
Constructors Modifier Constructor Description private
ClassInvestigator(int constantPoolCount)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
doRenameString(int index, java.lang.String newName)
private java.util.Enumeration
getClasses(java.util.Enumeration<ClassMember> methods, java.util.Enumeration<ClassMember> fields)
Return an Enumeration of all referenced classesprivate static ConstantPoolEntry
getConstant(ClassInput in)
java.util.Enumeration<ClassMember>
getFields()
ClassMember
getMember(java.lang.String simpleName, java.lang.String descriptor)
java.util.Enumeration<ClassMember>
getMethods()
java.util.Enumeration
getStrings()
java.util.Enumeration
implementedInterfaces()
static ClassInvestigator
load(java.io.InputStream is)
static java.lang.String
newDescriptor(java.util.Hashtable classNameMap, java.lang.String descriptor)
private void
processCodeAttribute(ClassMember member, AttributeEntry ae)
private static ClassMember
readClassMember(ClassInvestigator ci, ClassInput in)
java.util.Enumeration
referencedClasses()
void
removeAttributes()
Return an Enumeration of all Member Referencesvoid
renameClassElements(java.util.Hashtable classNameMap, java.util.Hashtable memberNameMap)
private void
renameMembers(java.util.Enumeration<ClassMember> e, java.util.Hashtable classNameMap, java.util.Hashtable memberNameMap)
private void
renameString(java.util.Hashtable classNameMap, CONSTANT_Index_info cii)
-
Methods inherited from class org.apache.derby.iapi.services.classfile.ClassHolder
addAttribute, addClassReference, addConstant, addConstant, addConstant, addConstant, addConstant, addEntry, addFieldReference, addFieldReference, addMember, addMethodReference, addUtf8, className, convertToInternalClassName, convertToInternalDescriptor, cptPut, findClass, findIndexEntry, findIndexIndex, findMatchingEntry, findNameAndType, findUtf8, getClassName, getConstantPoolIndex, getEntry, getFileFormat, getModifier, getName, getSuperClassName, isExternalClassName, nameIndexToString
-
-
-
-
Method Detail
-
load
public static ClassInvestigator load(java.io.InputStream is) throws java.io.IOException
- Throws:
java.io.IOException
-
readClassMember
private static ClassMember readClassMember(ClassInvestigator ci, ClassInput in) throws java.io.IOException
- Throws:
java.io.IOException
-
implementedInterfaces
public java.util.Enumeration implementedInterfaces()
-
getFields
public java.util.Enumeration<ClassMember> getFields()
-
getMethods
public java.util.Enumeration<ClassMember> getMethods()
-
referencedClasses
public java.util.Enumeration referencedClasses()
-
getClasses
private java.util.Enumeration getClasses(java.util.Enumeration<ClassMember> methods, java.util.Enumeration<ClassMember> fields)
Return an Enumeration of all referenced classes
-
getStrings
public java.util.Enumeration getStrings()
-
getMember
public ClassMember getMember(java.lang.String simpleName, java.lang.String descriptor)
-
removeAttributes
public void removeAttributes() throws java.io.IOException
Return an Enumeration of all Member References- Throws:
java.io.IOException
-
processCodeAttribute
private void processCodeAttribute(ClassMember member, AttributeEntry ae) throws java.io.IOException
- Throws:
java.io.IOException
-
renameClassElements
public void renameClassElements(java.util.Hashtable classNameMap, java.util.Hashtable memberNameMap)
-
renameMembers
private void renameMembers(java.util.Enumeration<ClassMember> e, java.util.Hashtable classNameMap, java.util.Hashtable memberNameMap)
-
renameString
private void renameString(java.util.Hashtable classNameMap, CONSTANT_Index_info cii)
-
doRenameString
private void doRenameString(int index, java.lang.String newName)
-
getConstant
private static ConstantPoolEntry getConstant(ClassInput in) throws java.io.IOException
- Throws:
java.io.IOException
-
newDescriptor
public static java.lang.String newDescriptor(java.util.Hashtable classNameMap, java.lang.String descriptor)
-
-