package com.fp.dto.save; import java.util.ArrayList; import java.util.List; import com.fp.dto.AbstractData; import com.fp.dto.AbstractDataTransport; public class SaveBean extends AbstractData { private static final long serialVersionUID = 1L; /** Alias del bean, utilizado como key en los map, si no llega el alias, el key es el nombre del bean. */ private String beanAlias; /** Clase asociada al bean. */ private String beanName; /** Lista de registros modificados de un bean asociado a una tabla. */ private List modifiedRecords = new ArrayList(); /** Lista de registros a eliminar de la basse de datos. */ private List deletedRecords = new ArrayList(); /** Objeto asociado a un registro de una tabla a insertar o actualizar en la base de datos. */ private Object modifiedObject; /** Objeto asociado a un registro de una tabla a eliminar la base de datos. */ private Object deletedObject; /** Orden del insert o update del objeto cuando se envia la base de datos. */ private Integer position; /** true, indica que el registro se almacena en la base de datos, false no se almacena. */ private boolean save = true; /** * Crea una instancia de SaveBean. */ public SaveBean() { } /** * Crea una instancia de SaveBean, dado el alias del bean. * * @param beanName Alias del bean. */ public SaveBean(String beanName) { this.beanName = beanName; this.beanAlias = beanName; } /** * Entrega el valor de: beanAlias * * @return String */ public String getBeanAlias() { if (beanAlias == null) { return this.getBeanName(); } return beanAlias; } /** * Fija el valor de: beanAlias * * @param beanAlias */ public void setBeanAlias(String beanAlias) { this.beanAlias = beanAlias; } /** * Entrega el valor de: beanName * * @return String */ public String getBeanName() { return beanName; } /** * Fija el valor de: beanName * * @param beanName */ public void setBeanName(String beanName) { this.beanName = beanName; } /** * Adiciona un elemento a la lista de objetos modificados. * * @param pObject Objeto a adicionar a la lista de registros modificados a enviar a almacenar en la base de datos. * @throws Exception */ public void addModifiedObject(Object pObject) throws Exception { modifiedRecords.add(pObject); } public void addModifiedObject(List ldata) throws Exception { if(!ldata.isEmpty() && ldata.size() == 1){ modifiedObject = ldata.get(0) ; return; } for (AbstractDataTransport obj : ldata) { obj.addAddtionalInfo("isnew", "Y"); modifiedRecords.add(obj); } } public void addModified(List ldata, boolean isForm) throws Exception { if(!ldata.isEmpty() && ldata.size() == 1 && isForm){ modifiedObject = ldata.get(0) ; return; } for (Object object : ldata) { AbstractDataTransport obj = (AbstractDataTransport)object; modifiedRecords.add(obj); } } public void addInsertObject(List ldata, boolean isForm) throws Exception { if(!ldata.isEmpty() && ldata.size() == 1 && isForm){ modifiedObject = ldata.get(0) ; return; } for (AbstractDataTransport obj : ldata) { obj.addAddtionalInfo("isnew", "Y"); modifiedRecords.add(obj); } } /** * Entrega el valor de: modifiedRecords * * @return List */ public List getModifiedRecords() { return modifiedRecords; } /** * Fija el valor de: modifiedRecords * * @param modifiedRecords */ public void setModifiedRecords(List modifiedRecords) { this.modifiedRecords = modifiedRecords; } /** * Entrega el valor de: deletedRecords * * @return List */ public List getDeletedRecords() { return deletedRecords; } /** * Fija el valor de: deletedRecords * * @param deletedRecords */ public void setDeletedRecords(List deletedRecords) { this.deletedRecords = deletedRecords; } /** * Entrega el valor de: modifiedObject * * @return Object */ public Object getModifiedObject() { return modifiedObject; } /** * Fija el valor de modifiedObject * * @param modifiedObject value to set */ public void setModifiedObject(Object modifiedObject) { this.modifiedObject = modifiedObject; } /** * Entrega el valor de: deletedObject * * @return Object */ public Object getDeletedObject() { return deletedObject; } /** * Fija el valor de deletedObject * * @param deletedObject value to set */ public void setDeletedObject(Object deletedObject) { this.deletedObject = deletedObject; } /** * Entrega el valor de: position * * @return Integer */ public Integer getPosition() { return position; } /** * Fija el valor de: position * * @param position */ public void setPosition(Integer position) { this.position = position; } /** * Entrega el valor de: save * * @return the save */ public boolean isSave() { return save; } /** * Fija el valor de: save * * @param save the save to set */ public void setSave(boolean save) { this.save = save; } /* * (non-Javadoc) * * @see java.lang.Object#toString() */ @Override public String toString() { return "SaveBean:" + this.beanName + " d:" + this.deletedRecords.size() + " m:" + this.modifiedRecords.size(); } }