net.sf.cglib.beans
Class BeanGenerator

java.lang.Object
  extended by net.sf.cglib.core.AbstractClassGenerator
      extended by net.sf.cglib.beans.BeanGenerator
All Implemented Interfaces:
ClassGenerator

public class BeanGenerator
extends AbstractClassGenerator

Author:
Juozas Baliuka, Chris Nokleberg

Nested Class Summary
 
Nested classes/interfaces inherited from class net.sf.cglib.core.AbstractClassGenerator
AbstractClassGenerator.Source
 
Constructor Summary
BeanGenerator()
           
 
Method Summary
static void addProperties(BeanGenerator gen, Class type)
           
static void addProperties(BeanGenerator gen, Map props)
           
static void addProperties(BeanGenerator gen, PropertyDescriptor[] descriptors)
           
 void addProperty(String name, Class type)
           
 Object create()
           
 Object createClass()
           
protected  Object firstInstance(Class type)
           
 void generateClass(org.objectweb.asm.ClassVisitor v)
           
protected  ClassLoader getDefaultClassLoader()
           
protected  Object nextInstance(Object instance)
           
 void setSuperclass(Class superclass)
          Set the class which the generated class will extend.
 
Methods inherited from class net.sf.cglib.core.AbstractClassGenerator
create, getAttemptLoad, getClassLoader, getClassName, getCurrent, getNamingPolicy, getStrategy, getUseCache, setAttemptLoad, setClassLoader, setNamePrefix, setNamingPolicy, setStrategy, setUseCache
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BeanGenerator

public BeanGenerator()
Method Detail

setSuperclass

public void setSuperclass(Class superclass)
Set the class which the generated class will extend. The class must not be declared as final, and must have a non-private no-argument constructor.

Parameters:
superclass - class to extend, or null to extend Object

addProperty

public void addProperty(String name,
                        Class type)

getDefaultClassLoader

protected ClassLoader getDefaultClassLoader()
Specified by:
getDefaultClassLoader in class AbstractClassGenerator

create

public Object create()

createClass

public Object createClass()

generateClass

public void generateClass(org.objectweb.asm.ClassVisitor v)
                   throws Exception
Throws:
Exception

firstInstance

protected Object firstInstance(Class type)
Specified by:
firstInstance in class AbstractClassGenerator

nextInstance

protected Object nextInstance(Object instance)
Specified by:
nextInstance in class AbstractClassGenerator

addProperties

public static void addProperties(BeanGenerator gen,
                                 Map props)

addProperties

public static void addProperties(BeanGenerator gen,
                                 Class type)

addProperties

public static void addProperties(BeanGenerator gen,
                                 PropertyDescriptor[] descriptors)


Copyright © 2012 Oracle Corporation. All Rights Reserved.