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 privateClassInvestigator(int constantPoolCount)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private voiddoRenameString(int index, java.lang.String newName)private java.util.EnumerationgetClasses(java.util.Enumeration<ClassMember> methods, java.util.Enumeration<ClassMember> fields)Return an Enumeration of all referenced classesprivate static ConstantPoolEntrygetConstant(ClassInput in)java.util.Enumeration<ClassMember>getFields()ClassMembergetMember(java.lang.String simpleName, java.lang.String descriptor)java.util.Enumeration<ClassMember>getMethods()java.util.EnumerationgetStrings()java.util.EnumerationimplementedInterfaces()static ClassInvestigatorload(java.io.InputStream is)static java.lang.StringnewDescriptor(java.util.Hashtable classNameMap, java.lang.String descriptor)private voidprocessCodeAttribute(ClassMember member, AttributeEntry ae)private static ClassMemberreadClassMember(ClassInvestigator ci, ClassInput in)java.util.EnumerationreferencedClasses()voidremoveAttributes()Return an Enumeration of all Member ReferencesvoidrenameClassElements(java.util.Hashtable classNameMap, java.util.Hashtable memberNameMap)private voidrenameMembers(java.util.Enumeration<ClassMember> e, java.util.Hashtable classNameMap, java.util.Hashtable memberNameMap)private voidrenameString(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.IOExceptionReturn 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)
-
-