@Beta public final class JavassistUtils extends Object
| Modifier and Type | Method and Description | 
|---|---|
void | 
appendClassLoaderIfMissing(ClassLoader loader)
Append class to class pool if doesn't exist. 
 | 
javassist.CtClass | 
asCtClass(Class<?> class1)
Get class from class pool. 
 | 
javassist.CtClass | 
createClass(String className,
           ClassGenerator classGenerator)
Generate and add class to global class pool. 
 | 
javassist.CtClass | 
createClass(String className,
           javassist.CtClass superInterface,
           ClassGenerator classGenerator)
Generate and add class to global class pool with implemented interface. 
 | 
void | 
ensureClassLoader(Class<?> child)
Ensure if is class in class loader. 
 | 
javassist.CtField | 
field(javassist.CtClass baseClass,
     String fieldName,
     Class<?> fieldType)
Create and add field to class. 
 | 
static JavassistUtils | 
forClassPool(javassist.ClassPool pool)
Get a utility instance for a particular class pool. 
 | 
javassist.CtClass | 
get(javassist.ClassPool pool,
   Class<? extends Object> clazz)
Get class from pool. 
 | 
void | 
implementMethodsFrom(javassist.CtClass target,
                    javassist.CtClass source,
                    MethodGenerator methodGenerator)
Implement methods to class from other class. 
 | 
void | 
implementsType(javassist.CtClass baseClass,
              javassist.CtClass superInterface)
Implements type to class. 
 | 
javassist.CtClass | 
instantiatePrototype(String prototype,
                    String target,
                    ClassCustomizer customizer)
Instantiate a new class based on a prototype. 
 | 
void | 
method(javassist.CtClass baseClass,
      Class<?> methodReturnType,
      String methodName,
      Class<?> methodParameter,
      MethodGenerator methodGenerator)
Generate and add method to class. 
 | 
void | 
method(javassist.CtClass baseClass,
      Class<?> methodReturnType,
      String methodName,
      Collection<? extends Class<?>> methodParameters,
      MethodGenerator methodGenerator)
Generate and add method to class. 
 | 
javassist.CtField | 
staticField(javassist.CtClass baseClass,
           String fieldName,
           Class<?> fieldType)
Create and add static field to class. 
 | 
javassist.CtField | 
staticField(javassist.CtClass baseClass,
           String fieldName,
           Class<?> fieldType,
           SourceCodeGenerator sourceGenerator)
Create and add static field to class. 
 | 
void | 
staticMethod(javassist.CtClass baseClass,
            Class<?> methodReturnType,
            String methodName,
            Class<?> methodParameter,
            MethodGenerator methodGenerator)
Generate and add static method to class. 
 | 
public static JavassistUtils forClassPool(javassist.ClassPool pool)
pool - - backing class poolpublic void method(javassist.CtClass baseClass,
                   Class<?> methodReturnType,
                   String methodName,
                   Class<?> methodParameter,
                   MethodGenerator methodGenerator)
            throws javassist.CannotCompileException
baseClass - - class for adding methodmethodReturnType - - return type of methodmethodName - - name of methodmethodParameter - - parameter of methodmethodGenerator - - method generatorjavassist.CannotCompileExceptionpublic void method(javassist.CtClass baseClass,
                   Class<?> methodReturnType,
                   String methodName,
                   Collection<? extends Class<?>> methodParameters,
                   MethodGenerator methodGenerator)
            throws javassist.CannotCompileException
baseClass - - class for adding methodmethodReturnType - - return type of methodmethodName - - name of methodmethodParameters - - parameters of methodmethodGenerator - - method generatorjavassist.CannotCompileExceptionpublic void staticMethod(javassist.CtClass baseClass,
                         Class<?> methodReturnType,
                         String methodName,
                         Class<?> methodParameter,
                         MethodGenerator methodGenerator)
                  throws javassist.CannotCompileException
baseClass - - class for adding methodmethodReturnType - - return type of methodmethodName - - name of methodmethodParameter - - parameter of methodmethodGenerator - - method generatorjavassist.CannotCompileExceptionpublic void implementMethodsFrom(javassist.CtClass target,
                                 javassist.CtClass source,
                                 MethodGenerator methodGenerator)
                          throws javassist.CannotCompileException
target - - class for implementing methodssource - - source class of methods to be implemented in targetmethodGenerator - - method generatorjavassist.CannotCompileExceptionpublic javassist.CtClass createClass(String className, ClassGenerator classGenerator) throws javassist.CannotCompileException
className - - name of classclassGenerator - - class generatorjavassist.CannotCompileExceptionpublic javassist.CtClass createClass(String className, javassist.CtClass superInterface, ClassGenerator classGenerator) throws javassist.CannotCompileException
className - - name of classsuperInterface - - interface to be implemented to the classclassGenerator - - class generatorjavassist.CannotCompileExceptionpublic javassist.CtClass instantiatePrototype(String prototype, String target, ClassCustomizer customizer) throws javassist.NotFoundException
prototype - - prototype class fully qualified nametarget - - target class fully qualified namecustomizer - - customization callback to be invoked on the new classjavassist.NotFoundException - - when the prototype class is not foundpublic void implementsType(javassist.CtClass baseClass,
                           javassist.CtClass superInterface)
baseClass - - class for implements interfacesuperInterface - - interface to be implementedpublic javassist.CtClass asCtClass(Class<?> class1)
class1 - - class for getting from class poolpublic javassist.CtField field(javassist.CtClass baseClass,
                               String fieldName,
                               Class<?> fieldType)
                        throws javassist.CannotCompileException
baseClass - - class for adding fieldfieldName - - name of fieldfieldType - - type of fieldjavassist.CannotCompileExceptionpublic javassist.CtField staticField(javassist.CtClass baseClass,
                                     String fieldName,
                                     Class<?> fieldType)
                              throws javassist.CannotCompileException
baseClass - - class for adding fieldfieldName - - name of fieldfieldType - - type of fieldjavassist.CannotCompileExceptionpublic javassist.CtField staticField(javassist.CtClass baseClass,
                                     String fieldName,
                                     Class<?> fieldType,
                                     SourceCodeGenerator sourceGenerator)
                              throws javassist.CannotCompileException
baseClass - - class for adding fieldfieldName - - name of fieldfieldType - - type of fieldsourceGenerator - - source generatorjavassist.CannotCompileExceptionpublic javassist.CtClass get(javassist.ClassPool pool,
                             Class<? extends Object> clazz)
pool - - class poolclazz - - search class in class poolpublic void appendClassLoaderIfMissing(ClassLoader loader)
loader - - class loader of search classpublic void ensureClassLoader(Class<?> child)
child - - search classCopyright © 2019 OpenDaylight. All rights reserved.