Class StubGenerator

java.lang.Object
javassist.tools.rmi.StubGenerator
All Implemented Interfaces:
Translator

public class StubGenerator extends Object implements Translator
A stub-code generator. It is used for producing a proxy class.

The proxy class for class A is as follows:

public class A implements Proxy, Serializable {
   private ObjectImporter importer;
   private int objectId;
   public int _getObjectId() { return objectId; }
   public A(ObjectImporter oi, int id) {
     importer = oi; objectId = id;
   }

   ... the same methods that the original class A declares ...
 }

Instances of the proxy class is created by an ObjectImporter object.

  • Constructor Details

    • StubGenerator

      public StubGenerator()
      Constructs a stub-code generator.
  • Method Details

    • start

      public void start(ClassPool pool) throws NotFoundException
      Initializes the object. This is a method declared in javassist.Translator.
      Specified by:
      start in interface Translator
      Parameters:
      pool - the ClassPool that this translator should use.
      Throws:
      NotFoundException - if a CtClass cannot be found.
      See Also:
    • onLoad

      public void onLoad(ClassPool pool, String classname)
      Does nothing. This is a method declared in javassist.Translator.
      Specified by:
      onLoad in interface Translator
      Parameters:
      pool - the ClassPool that this translator should use.
      classname - the name of the class being loaded.
      See Also:
    • isProxyClass

      public boolean isProxyClass(String name)
      Returns true if the specified class is a proxy class recorded by makeProxyClass().
      Parameters:
      name - a fully-qualified class name
    • makeProxyClass

      public boolean makeProxyClass(Class<?> clazz) throws CannotCompileException, NotFoundException
      Makes a proxy class. The produced class is substituted for the original class.
      Parameters:
      clazz - the class referenced through the proxy class.
      Returns:
      false if the proxy class has been already produced.
      Throws:
      CannotCompileException
      NotFoundException