Class JavassistClassBytecodeProcessor

    • Constructor Detail

      • JavassistClassBytecodeProcessor

        public JavassistClassBytecodeProcessor()
    • Method Detail

      • process

        public byte[] process​(ClassLoader cl,
                              String name,
                              byte[] bytecode)
        Specified by:
        process in interface org.zeroturnaround.javarebel.ClassBytecodeProcessor
      • priority

        public int priority()
        Specified by:
        priority in interface org.zeroturnaround.javarebel.ClassBytecodeProcessor
      • process

        protected byte[] process​(org.zeroturnaround.bundled.javassist.ClassPool cp,
                                 ClassLoader cl,
                                 String classname,
                                 byte[] bytecode)
                          throws Exception
        Throws:
        Exception
      • setImplicitClassNames

        public void setImplicitClassNames​(Map<String,​String> implicitClassNames)
        Can modify the class name request from javassist. Used to improve performance to skip pointless name checks.
      • acceptPathAsClass

        public boolean acceptPathAsClass​(String classname)
        Says to javassist if the path can even be a class name. Used to improve performance to skip pointless name checks.
      • acceptPathAsPrimitive

        public boolean acceptPathAsPrimitive​(String classname)
      • process

        public abstract void process​(org.zeroturnaround.bundled.javassist.ClassPool cp,
                                     ClassLoader cl,
                                     org.zeroturnaround.bundled.javassist.CtClass ctClass)
                              throws Exception
        Modifies the class to be loaded.
        Parameters:
        cp - the container of CtClass objects.
        cl - the class loader loading the given class.
        ctClass - the class representation.
        Throws:
        Exception