|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectabk.dao.sql.ADataIntrospector<K,T>
K
- Tipo de dato de la clave primaria.T
- Tipo de dato de una instancia.public class ADataIntrospector<K extends Serializable,T extends IDataItem<K>>
Clase que se encarga de la introspección de una clase de persistencia y obtener los parámetros de mapeo de la misma con
Field Summary | |
---|---|
private static int |
CONST_MASK_DONT
|
private static int |
CONST_MASK_YES
|
private Class<T> |
iItemClass
|
private ADataProperty |
iKeyInfo
|
private static ACachedReference<ADataMapper.Cache> |
MAPPERCACHE
Mapa ADataMapper.Cache usado para guardar los mapeadores de IDataItem ya compilados. |
Constructor Summary | |
---|---|
ADataIntrospector(Class<T> itemClass)
|
Method Summary | ||
---|---|---|
static void |
clearMapperCache()
Libera la caché de mapeadores de entidades, para liberar memoria. |
|
private ADataProperty |
createProperty(PropertyDescriptor desc)
|
|
private int |
findColumnSize(String colSizeName)
Recupera el tamaño de la columna desde un campo estático de la clase Java del objeto. |
|
protected Class<T> |
getItemClass()
|
|
static Class<?> |
getItemType(Class<?> itemClass)
|
|
static Class<?> |
getKeyType(Class<?> itemClass)
Infiere el tipo de dato indicado para K en una clase que implementa de IDataItem. |
|
static
|
getMapper(Class<T> clazz)
Compilador de la información de mapeo de una clase. |
|
private int |
initColumnFlags(Column col,
Class<?> type,
int flags)
|
|
private void |
initColumnInfo(ADataProperty info,
Field field)
Inicializa la información de la columna a partir de las anotaciones del getter y del nombre de la propiedad. |
|
private void |
initTableInfo(ADataMapper<K,T> mapper)
|
|
private ADataMapper<K,T> |
introspect()
Ejecuta la creación del mapeador de propiedades de persistencia a partir de las propiedades de la clase de Bean. |
|
private static boolean |
isTransient(Method method)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private static final int CONST_MASK_YES
private static final int CONST_MASK_DONT
private static final ACachedReference<ADataMapper.Cache> MAPPERCACHE
private Class<T extends IDataItem<K>> iItemClass
private ADataProperty iKeyInfo
Constructor Detail |
---|
public ADataIntrospector(Class<T> itemClass)
Method Detail |
---|
protected final Class<T> getItemClass()
public static final <K extends Serializable,T extends IDataItem<K>> ADataMapper<K,T> getMapper(Class<T> clazz) throws IntrospectionException
K
- Clase del ID de la entidad.T
- Tipo de dato para el que se construye el objeto de transferencia.clazz
- Clase del tipo de objeto que se usará para la transferencia.
IntrospectionException
NullPointerException
- si clazz es nulo.public static final void clearMapperCache()
private ADataMapper<K,T> introspect() throws IntrospectionException
IntrospectionException
- si se produce un error de introspección.private ADataProperty createProperty(PropertyDescriptor desc)
private final void initTableInfo(ADataMapper<K,T> mapper)
private final void initColumnInfo(ADataProperty info, Field field)
info
- Información de la propiedad que se esta inicializando.field
- Campo de la clase que almacena el valor correspondiente a la propiedad, donde
están las anotaciones que configuran el mapeo de datos.private int initColumnFlags(Column col, Class<?> type, int flags)
private final int findColumnSize(String colSizeName)
colSizeName
- Nombre del campo entero, estático, público y final.
public static final Class<?> getKeyType(Class<?> itemClass)
itemClass
- Clase descenciente de una clase genérica cuyo primer tipo parametrizado se
desea recuperar.
GenericSignatureFormatError
- si lo lanza el API de reflexión
de Java.
TypeNotPresentException
- si lo lanza el API de reflexión
de Java.
MalformedParameterizedTypeException
- si lo lanza el API de reflexión
de Java.
IllegalArgumentException
- si la clase de item
no desciende directamente de una
clase genérica.
ClassCastException
- si la clase de la clave
recuperada no desciende de
Serializable.Class.getGenericSuperclass()
,
ParameterizedType.getActualTypeArguments()
public static final Class<?> getItemType(Class<?> itemClass)
private static final boolean isTransient(Method method)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |