|
||||||||||
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 Object
public 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 Object
UnsupportedOperationException
- 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 |