Package pro.gravit.launchserver.asm
Class ClassMetadataReader
- java.lang.Object
-
- pro.gravit.launchserver.asm.ClassMetadataReader
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable
public class ClassMetadataReader extends java.lang.Object implements java.io.CloseableПозволяет искать методы внутри незагруженных классов и общие суперклассы для чего угодно. Работает через поиск class-файлов в classpath.
-
-
Constructor Summary
Constructors Constructor Description ClassMetadataReader()ClassMetadataReader(java.util.List<java.util.jar.JarFile> cp)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidacceptVisitor(byte[] classData, org.objectweb.asm.ClassVisitor visitor)voidacceptVisitor(byte[] classData, org.objectweb.asm.ClassVisitor visitor, int flags)voidacceptVisitor(java.lang.String className, org.objectweb.asm.ClassVisitor visitor)voidacceptVisitor(java.lang.String className, org.objectweb.asm.ClassVisitor visitor, int flags)voidclose()byte[]getClassData(java.lang.String className)java.util.List<java.util.jar.JarFile>getCp()java.lang.StringgetSuperClass(java.lang.String type)protected java.lang.StringgetSuperClassASM(java.lang.String type)java.util.ArrayList<java.lang.String>getSuperClasses(java.lang.String type)Возвращает суперклассы в порядке возрастающей конкретности (начиная с java/lang/Object и заканчивая данным типом)
-
-
-
Method Detail
-
getCp
public java.util.List<java.util.jar.JarFile> getCp()
-
acceptVisitor
public void acceptVisitor(byte[] classData, org.objectweb.asm.ClassVisitor visitor)
-
acceptVisitor
public void acceptVisitor(java.lang.String className, org.objectweb.asm.ClassVisitor visitor) throws java.io.IOException- Throws:
java.io.IOException
-
acceptVisitor
public void acceptVisitor(byte[] classData, org.objectweb.asm.ClassVisitor visitor, int flags)
-
acceptVisitor
public void acceptVisitor(java.lang.String className, org.objectweb.asm.ClassVisitor visitor, int flags) throws java.io.IOException- Throws:
java.io.IOException
-
getClassData
public byte[] getClassData(java.lang.String className) throws java.io.IOException- Throws:
java.io.IOException
-
getSuperClass
public java.lang.String getSuperClass(java.lang.String type)
-
getSuperClassASM
protected java.lang.String getSuperClassASM(java.lang.String type) throws java.io.IOException- Throws:
java.io.IOException
-
getSuperClasses
public java.util.ArrayList<java.lang.String> getSuperClasses(java.lang.String type)
Возвращает суперклассы в порядке возрастающей конкретности (начиная с java/lang/Object и заканчивая данным типом)
-
close
public void close()
- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable
-
-