| 
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.openjpa.lib.util.ConcreteClassGenerator
public class ConcreteClassGenerator
Dynamically generates concrete implementations of abstract classes.
| Constructor Summary | |
|---|---|
ConcreteClassGenerator()
 | 
|
| Method Summary | ||
|---|---|---|
static
 | 
getConcreteConstructor(Class<T> abstractClass,
                       Class<?>... argTypes)
Get the constructor of the concrete, dynamic wrapper class of the given abstract class with matching argument types.  | 
|
static
 | 
makeConcrete(Class<T> abstractClass)
Takes an abstract class and returns a concrete implementation.  | 
|
static
 | 
newInstance(Class<T> c)
 | 
|
static
 | 
newInstance(Class<T> c,
            Class<?>[] paramTypes,
            Object[] params)
Utility method for safely invoking a constructor that we do not expect to throw exceptions.  | 
|
static
 | 
newInstance(Class<T> c,
            Class<? extends P> paramType,
            P param)
 | 
|
static
 | 
newInstance(Class<T> c,
            Class<? extends P1> paramType1,
            P1 param1,
            Class<? extends P2> paramType2,
            P2 param2)
 | 
|
static
 | 
newInstance(Class<T> c,
            Class<? extends P1> paramType1,
            P1 param1,
            Class<? extends P2> paramType2,
            P2 param2,
            Class<? extends P3> paramType3,
            P3 param3)
 | 
|
static
 | 
newInstance(Class<T> c,
            Class<? extends P1> paramType1,
            P1 param1,
            Class<? extends P2> paramType2,
            P2 param2,
            Class<? extends P3> paramType3,
            P3 param3,
            Class<? extends P4> paramType4,
            P4 param4)
 | 
|
static
 | 
newInstance(Constructor<T> cons,
            Object... params)
Construct a new instance by the given constructor and its arguments.  | 
|
| Methods inherited from class java.lang.Object | 
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| Constructor Detail | 
|---|
public ConcreteClassGenerator()
| Method Detail | 
|---|
public static <T> Constructor<T> getConcreteConstructor(Class<T> abstractClass,
                                                        Class<?>... argTypes)
                                             throws ClassNotFoundException
the - argTypes of the constructor to look for. null signify default constructor.
ClassNotFoundException
public static <T> Class<? extends T> makeConcrete(Class<T> abstractClass)
                                       throws ClassNotFoundException
AbstractMethodError.
abstractClass - the abstract class
ClassNotFoundException
public static <T> T newInstance(Constructor<T> cons,
                                Object... params)
public static <T> T newInstance(Class<T> c,
                                Class<?>[] paramTypes,
                                Object[] params)
c - the class to constructparamTypes - the types of the parametersparams - the parameter values
public static <T> T newInstance(Class<T> c)
newInstance(java.lang.Class,java.lang.Class[],java.lang.Object[])
public static <T,P> T newInstance(Class<T> c,
                                  Class<? extends P> paramType,
                                  P param)
newInstance(java.lang.Class,java.lang.Class[],java.lang.Object[])
public static <T,P1,P2> T newInstance(Class<T> c,
                                      Class<? extends P1> paramType1,
                                      P1 param1,
                                      Class<? extends P2> paramType2,
                                      P2 param2)
newInstance(java.lang.Class,java.lang.Class[],java.lang.Object[])
public static <T,P1,P2,P3> T newInstance(Class<T> c,
                                         Class<? extends P1> paramType1,
                                         P1 param1,
                                         Class<? extends P2> paramType2,
                                         P2 param2,
                                         Class<? extends P3> paramType3,
                                         P3 param3)
newInstance(java.lang.Class,java.lang.Class[],java.lang.Object[])
public static <T,P1,P2,P3,P4> T newInstance(Class<T> c,
                                            Class<? extends P1> paramType1,
                                            P1 param1,
                                            Class<? extends P2> paramType2,
                                            P2 param2,
                                            Class<? extends P3> paramType3,
                                            P3 param3,
                                            Class<? extends P4> paramType4,
                                            P4 param4)
newInstance(java.lang.Class,java.lang.Class[],java.lang.Object[])
  | 
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||