Search in sources :

Example 11 with Remapper

use of org.objectweb.asm.commons.Remapper in project pinpoint by naver.

the class LambdaFactoryTest method renameClass.

private void renameClass(ClassReader reader, ClassVisitor classVisitor) {
    String className = "com/navercorp/pinpoint/profiler/instrument/lambda/mock/UnsafeClassMock";
    Remapper remapper = new SimpleRemapper(className, className + "2");
    ClassRemapper classRemapper = new ClassRemapper(classVisitor, remapper);
    reader.accept(classRemapper, 0);
}
Also used : SimpleRemapper(org.objectweb.asm.commons.SimpleRemapper) Remapper(org.objectweb.asm.commons.Remapper) SimpleRemapper(org.objectweb.asm.commons.SimpleRemapper) ClassRemapper(org.objectweb.asm.commons.ClassRemapper) ClassRemapper(org.objectweb.asm.commons.ClassRemapper)

Example 12 with Remapper

use of org.objectweb.asm.commons.Remapper in project robolectric by robolectric.

the class ClassInstrumentor method instrumentToBytes.

byte[] instrumentToBytes(MutableClass mutableClass) {
    instrument(mutableClass);
    ClassNode classNode = mutableClass.classNode;
    ClassWriter writer = new InstrumentingClassWriter(mutableClass.classNodeProvider, classNode);
    Remapper remapper = new Remapper() {

        @Override
        public String map(final String internalName) {
            return mutableClass.config.mappedTypeName(internalName);
        }
    };
    ClassRemapper visitor = new ClassRemapper(writer, remapper);
    classNode.accept(visitor);
    return writer.toByteArray();
}
Also used : ClassNode(org.objectweb.asm.tree.ClassNode) Remapper(org.objectweb.asm.commons.Remapper) ClassRemapper(org.objectweb.asm.commons.ClassRemapper) ClassRemapper(org.objectweb.asm.commons.ClassRemapper) ClassWriter(org.objectweb.asm.ClassWriter)

Aggregations

Remapper (org.objectweb.asm.commons.Remapper)12 ClassReader (org.objectweb.asm.ClassReader)9 ClassRemapper (org.objectweb.asm.commons.ClassRemapper)8 ClassWriter (org.objectweb.asm.ClassWriter)7 RemappingClassAdapter (org.objectweb.asm.commons.RemappingClassAdapter)3 IOException (java.io.IOException)1 JarFile (java.util.jar.JarFile)1 JarOutputStream (java.util.jar.JarOutputStream)1 FileVisitDetails (org.gradle.api.file.FileVisitDetails)1 FileVisitor (org.gradle.api.file.FileVisitor)1 AnnotationVisitor (org.objectweb.asm.AnnotationVisitor)1 ClassVisitor (org.objectweb.asm.ClassVisitor)1 SimpleRemapper (org.objectweb.asm.commons.SimpleRemapper)1 ClassNode (org.objectweb.asm.tree.ClassNode)1