Package javassist

Interface Translator

All Known Implementing Classes:
Reflection, StubGenerator

public interface Translator
An observer of Loader. The users can define a class implementing this interface and attach an instance of that class to a Loader object so that it can translate a class file when the class file is loaded into the JVM.
See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    onLoad(ClassPool pool, String classname)
    Is invoked by a Loader for notifying that a class is loaded.
    void
    Is invoked by a Loader for initialization when the object is attached to the Loader object.
  • Method Details

    • start

      Is invoked by a Loader for initialization when the object is attached to the Loader object. This method can be used for getting (for caching) some CtClass objects that will be accessed in onLoad() in Translator.
      Parameters:
      pool - the ClassPool that this translator should use.
      Throws:
      NotFoundException - if a CtClass cannot be found.
      CannotCompileException - if the initialization by this method fails.
      See Also:
    • onLoad

      void onLoad(ClassPool pool, String classname) throws NotFoundException, CannotCompileException
      Is invoked by a Loader for notifying that a class is loaded. The Loader calls
       pool.get(classname).toBytecode()
      to read the class file after onLoad() returns.

      classname may be the name of a class that has not been created yet. If so, onLoad() must create that class so that the Loader can read it after onLoad() returns.

      Parameters:
      pool - the ClassPool that this translator should use.
      classname - the name of the class being loaded.
      Throws:
      NotFoundException - if a CtClass cannot be found.
      CannotCompileException - if the code transformation by this method fails.
      See Also: