|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectabk.dao.sql.ADataItem<K>
public abstract class ADataItem<K extends Serializable>
Clase base para la implementación de objetos de persistencia simples.
Se clase se utiliza para extenderlar a los objetos de persistencia que se necesiten. Por ejemplo:
@Table(name = "MI_TABLA", sequence = "MI_TAB_ID_SEQ")
public class MiEntidad extends ADataItem<Integer> {
// Serializable //////////////////////////////////////////////
private static final long serialVersionUID = 1L;
// Propiedades ///////////////////////////////////////////////
@Column(name = "C_TAB_ID", id = true)
private Integer cTabId;
// getters y setters /////////////////////////////////////////
@Override
public Integer getcTabId() {
return cTabId;
}
@Override
public void setcTabId(Integer cTabId) {
this.cTabId = cTabId;
}
// Opcional: sobrecargar los metodos de IDataItem ////////////
@Override
public Integer primaryKey() {
return getcTabId();
}
@Override
public void primaryKey(Integer id) {
setcTabId(id);
}
// Cloneable /////////////////////////////////////////////////
@Override
public MiEntidad clone() {
MiEntidad clon = (MiEntidad) super.clone();
// Otras acciones de clonado
return clon;
}
}
| Field Summary | |
|---|---|
private Class<K> |
iKeyClass
Clase de la propiedad ID. |
private static long |
serialVersionUID
|
| Constructor Summary | |
|---|---|
protected |
ADataItem()
Constructor que infiere el tipo de la clave a partir de la declaración de la clase que le invoca. |
| Method Summary | |
|---|---|
private ADataItem<K> |
cast0(Object clon)
|
ADataItem<K> |
clone()
Sobrecarga el método Object.clone() para que devuelve un ADataItem y suprime el lanzamiento de la excepción CloneNotSupportedException. |
ADataItem<K> |
clone(Map<Object,Object> refs)
Devuelve una objeto que es una copia profunda de esta instancia, ya sea buscándolo entre el mapa que se le pasa, o creando un duplicado nuevo que se inserta también en el mapa, si en el mapa no existe aún ningún duplicado para esta instancia. |
protected abstract ADataItem<K> |
deepReplace(Map<Object,Object> refs)
|
Class<K> |
keyClass()
Devuelve la clase de la clave primaria del objeto. |
boolean |
keyEquals(Object obj)
Compara si el objeto que se le pasa es igual que el actual. |
int |
keyHashCode()
Devuelve el hash code resultado del valor del ID y del nombre completo de la clase. |
(package private) ADataMapper<K,ADataItem<K>> |
keyMapper()
|
K |
primaryKey()
Devuelve la clave primaria que identifica el registro del objeto. |
void |
primaryKey(K key)
Fija el valor de la clave primaria de la instancia. |
String |
toString()
Convierte el objeto en una cadena mostrando su nombre simple de clase y el valor de su ID. |
| Methods inherited from class java.lang.Object |
|---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface abk.util.IResettable |
|---|
reset |
| Field Detail |
|---|
private static final long serialVersionUID
private final transient Class<K extends Serializable> iKeyClass
| Constructor Detail |
|---|
protected ADataItem()
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.ADataIntrospector.getKeyType(Class)| Method Detail |
|---|
public String toString()
toString in class Objectpublic final Class<K> keyClass()
IDataItem
keyClass in interface IDataItem<K extends Serializable>private final ADataItem<K> cast0(Object clon)
protected abstract ADataItem<K> deepReplace(Map<Object,Object> refs)
public ADataItem<K> clone()
clone in class ObjectUnsupportedOperationException - si internamente se produce un
CloneNotSupportedExceptionpublic ADataItem<K> clone(Map<Object,Object> refs)
IDataItem
clone in interface IDataItem<K extends Serializable>refs - Mapa que asocia instancias en la clave con sus duplicados como valor.
ADataMapper<K,ADataItem<K>> keyMapper()
public int keyHashCode()
public boolean keyEquals(Object obj)
obj - Objeto con el que se compara.
true si obj es de la misma clase o de una clase descendiente y
tiene el mismo ID, aunque sea nulo.public K primaryKey()
IDataItem
primaryKey in interface IDataItem<K extends Serializable>null.public void primaryKey(K key)
IDataItem
primaryKey in interface IDataItem<K extends Serializable>key - Nueva clave primaria de la instancia.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||