Java tutorial
// license-header java merge-point // // Attention: Generated code! Do not modify by hand! // Generated by: HibernateEntity.vsl in andromda-hibernate-cartridge. // package br.mdarte.exemplo.academico.cd; import org.hibernate.Hibernate; import org.hibernate.Session; import org.hibernate.FlushMode; import br.mdarte.exemplo.academico.cd.AbstractDAO; import br.mdarte.exemplo.academico.cd.AbstractEntity; import br.mdarte.exemplo.academico.cd.DAOException; import br.mdarte.exemplo.academico.to.CursoTO; import br.mdarte.exemplo.academico.to.CursoTOImpl; import br.mdarte.exemplo.academico.to.CursoTOExample; import br.ufrj.coppetec.to.AbstractTO; import br.ufrj.coppetec.to.AbstractTOExample; import br.mdarte.exemplo.academico.util.PaginationStrategy; import br.mdarte.exemplo.academico.cd.TOUtil; /** * */ public abstract class CursoAbstract extends br.mdarte.exemplo.academico.cd.AbstractEntity implements java.io.Serializable, br.mdarte.exemplo.academico.cd.Curso { private final String ENTITY_KEY = "br.mdarte.exemplo.academico.cd.CursoAbstract"; public Boolean needUpdate(AbstractTO abstractTO) { Boolean need = false; need = abstractTO.isUpdated(); if (need) return true; if (((CursoTO) abstractTO).getExemploTO() == null) return false; CursoTO to = (CursoTO) abstractTO; if ((to.getExemploTO() != null && to.getExemploTO().getEstudantes() != null && !to.getExemploTO().getEstudantes().isEmpty())) need = need || TOUtil.isCollectionChanged(to.getEstudantes(), this.getEstudantes()); return need; } public static CursoAbstract getEntityFromTO(br.mdarte.exemplo.academico.to.CursoTO to) throws Exception { AbstractDAO.currentSession().setFlushMode(FlushMode.NEVER); CursoAbstract entity = (CursoAbstract) AbstractEntity.getEntityInstanceFromTO(to, new java.util.HashMap()); AbstractDAO.currentSession().setFlushMode(FlushMode.AUTO); return entity; } protected br.mdarte.exemplo.academico.cd.AbstractEntity getEntityFromTO(AbstractTO to, java.util.HashMap map) throws Exception { if (map == null) map = new java.util.HashMap(); CursoImpl bean = new CursoImpl(); return getEntityFromTO((br.mdarte.exemplo.academico.to.CursoTO) to, bean, map); } protected CursoAbstract getEntityFromTO(br.mdarte.exemplo.academico.to.CursoTO to, Curso bean, java.util.HashMap map) throws Exception { if (to == null) return null; map.put(to.getClass().toString() + to.hashCode(), bean); if (to != null) { if (to.getId() == null) { bean.setCodigo(to.getCodigo()); bean.setNome(to.getNome()); bean.setId(to.getId()); bean.setEstudantes(constructEstudantes(to.getEstudantes(), bean.getEstudantes(), map)); } else { CursoDAOImpl dao = new CursoDAOImpl(); if (bean.getId() == null) bean = (CursoImpl) dao.select(to.getId()).iterator().next(); map.put(to.getClass().toString() + to.hashCode(), bean); if (bean.getHibernate_version() != to.getHibernate_version()) { throw new Exception("hibernate.version.is.different"); } if (to.isUpdated()) { bean.setCodigo(to.getCodigo()); bean.setNome(to.getNome()); bean.setId(to.getId()); } if ((to.getExemploTO() != null && to.getExemploTO().getEstudantes() != null && !to.getExemploTO().getEstudantes().isEmpty())) { bean.setEstudantes(constructEstudantes(to.getEstudantes(), bean.getEstudantes(), map)); } } return (CursoAbstract) bean; } return null; } private java.util.Collection constructEstudantes(java.util.Collection estudantesTO, java.util.Collection estudantesEntity, java.util.HashMap map) throws Exception { boolean changed = TOUtil.isCollectionChanged(estudantesTO, estudantesEntity); java.util.Collection list; if (changed) list = new java.util.ArrayList(); else list = estudantesEntity; if (estudantesTO != null) { java.util.Iterator it = estudantesTO.iterator(); while (it.hasNext()) { br.mdarte.exemplo.academico.to.EstudanteTO to = (br.mdarte.exemplo.academico.to.EstudanteTO) it .next(); br.mdarte.exemplo.academico.cd.EstudanteAbstract cd = (br.mdarte.exemplo.academico.cd.EstudanteAbstract) TOUtil .getEntityFromCollection(to, estudantesEntity); if (map.get(to.getClass().toString() + to.hashCode()) == null) { cd = (br.mdarte.exemplo.academico.cd.EstudanteAbstract) AbstractEntity .getEntityInstanceFromTO(to, map); } else { cd = (br.mdarte.exemplo.academico.cd.EstudanteAbstract) map .get(to.getClass().toString() + to.hashCode()); } if (changed) list.add(cd); } } return list; } public CursoTOImpl buildTO(CursoTOExample exemploTO) throws Exception { return (CursoTOImpl) this.buildTO(exemploTO, new java.util.HashMap()); } public AbstractTO buildTO(AbstractTOExample exemploTO, java.util.HashMap map) throws Exception { if (map == null) map = new java.util.HashMap(); CursoTOImpl to = new CursoTOImpl(); to.beginInitialization(); mapEntityAttributes2TO(to); mapEntityRelations2TO(to, TOUtil.getExample(exemploTO, this.getTOExample()), map); to.finishInitialization(); if (to.getId() == null) to.setExemploTO(null); return to; } protected void mapEntityAttributes2TO(CursoTO to) { to.setCodigo(this.getCodigo()); to.setNome(this.getNome()); to.setId(this.getId()); to.setHibernate_version(this.getHibernate_version()); } protected void mapEntityRelations2TO(CursoTO to, AbstractTOExample abstractExemploTO, java.util.HashMap map) throws Exception { map.put(this.getEntityKey() + this.hashCode(), to); CursoTOExample exemploTO = (CursoTOExample) abstractExemploTO; if (abstractExemploTO != null) { to.setExemploTO(exemploTO); if (exemploTO.getEstudantes() != null && !exemploTO.getEstudantes().isEmpty()) { to.setEstudantes(buildEstudantes(exemploTO.getEstudantes(), estudantes, map)); } } } private java.util.Collection buildEstudantes(java.util.Collection templates, java.util.Collection estudantes, java.util.HashMap map) throws Exception { java.util.ArrayList list = new java.util.ArrayList(); if (estudantes != null) { java.util.Iterator it = estudantes.iterator(); while (it.hasNext()) { br.mdarte.exemplo.academico.cd.EstudanteAbstract cd = (br.mdarte.exemplo.academico.cd.EstudanteAbstract) it .next(); if (cd != null) { if (map.get(cd.getEntityKey() + cd.hashCode()) == null) { br.mdarte.exemplo.academico.to.EstudanteTO toTemp = (br.mdarte.exemplo.academico.to.EstudanteTO) cd .buildTO(TOUtil.getExample(templates, cd.getTOExample()), map); list.add(toTemp); } else { br.mdarte.exemplo.academico.to.EstudanteTO toTemp = (br.mdarte.exemplo.academico.to.EstudanteTO) map .get(cd.getEntityKey() + cd.hashCode()); list.add(toTemp); } } } } return list; } /** * The serial version UID of this class. Needed for serialization. */ private static final long serialVersionUID = -6495172144479822107L; /** * Version property managed by Hibernate. */ private int hibernate_version; public int getHibernate_version() { return this.hibernate_version; } private void setHibernate_version(int hibernate_version) { this.hibernate_version = hibernate_version; } public CursoAbstract() { } private java.lang.String codigo; /** * */ public java.lang.String getCodigo() { return this.codigo; } public void setCodigo(java.lang.String codigo) { this.codigo = codigo; } private java.lang.String nome; /** * */ public java.lang.String getNome() { return this.nome; } public void setNome(java.lang.String nome) { this.nome = nome; } private java.lang.Long id; /** * */ public java.lang.Long getId() { return this.id; } public void setId(java.lang.Long id) { this.id = id; } private java.util.Collection estudantes = new java.util.ArrayList(); /** * */ public java.util.Collection getEstudantes() { return estudantes; } public void setEstudantes(java.util.Collection estudantes) { this.estudantes = (java.util.Collection) estudantes; } public void setEstudantesInverse(java.util.Collection estudantes) { Hibernate.initialize(estudantes); java.util.Collection temp = this.estudantes; this.estudantes = (java.util.Collection) estudantes; if (temp != null) { for (java.util.Iterator it = temp.iterator(); it.hasNext();) { br.mdarte.exemplo.academico.cd.Estudante estudanteNext = (br.mdarte.exemplo.academico.cd.Estudante) it .next(); estudanteNext.setCurso(null); } } if (estudantes != null) { for (java.util.Iterator it = estudantes.iterator(); it.hasNext();) { br.mdarte.exemplo.academico.cd.Estudante estudanteNext = (br.mdarte.exemplo.academico.cd.Estudante) it .next(); estudanteNext.setCurso(this); } } } public void addEstudantes(br.mdarte.exemplo.academico.cd.Estudante estudanteTemp) { Hibernate.initialize(estudanteTemp); Hibernate.initialize(estudantes); if (estudantes == null) setEstudantes(new java.util.ArrayList()); if (!estudantes.contains(estudanteTemp)) estudantes.add(estudanteTemp); estudanteTemp.setCurso(this); this.setEstudantes(estudantes); } public void removeEstudantes(br.mdarte.exemplo.academico.cd.Estudante estudanteTemp) { java.util.Collection estudantes = this.getEstudantes(); Hibernate.initialize(estudanteTemp); Hibernate.initialize(estudantes); if (estudantes != null) { estudantes.remove(estudanteTemp); } estudanteTemp.setCurso(null); this.setEstudantes(estudantes); } public java.util.Collection getEstudantes(PaginationStrategy paginacao) { try { return CursoDAOImpl.getEstudantesByCurso(this.getId(), paginacao); } catch (DAOException daoe) { daoe.printStackTrace(); } return null; } /** * Returns <code>true</code> if the argument is an Curso instance and all identifiers for this entity * equal the identifiers of the argument entity. Returns <code>false</code> otherwise. */ public boolean equals(Object object) { if (this == object) { return true; } if (!(object instanceof Curso)) { return false; } final Curso that = (Curso) object; if (this.getId() == null || that.getId() == null || !this.getId().equals(that.getId())) { return false; } return true; } /** * Returns a hash code based on this entity's identifiers. */ public int hashCode() { int hashCode = super.hashCode(); hashCode = 29 * hashCode + (id == null ? 0 : id.hashCode()); return hashCode; } /** * Constructs new instances of {@link br.mdarte.exemplo.academico.cd.Curso}. */ public static final class Factory { /** * Constructs a new instance of {@link br.mdarte.exemplo.academico.cd.Curso}. */ public static final br.mdarte.exemplo.academico.cd.Curso newInstance() { return new br.mdarte.exemplo.academico.cd.CursoImpl(); } } public br.mdarte.exemplo.academico.cd.AbstractDAO getDaoImpl() { return new CursoDAOImpl(); } @Deprecated public java.util.Collection THIS() { java.util.Collection col = new java.util.ArrayList(); col.add(this); return col; } public Curso inicializa() { Hibernate.initialize(this); return this; } public br.ufrj.coppetec.Entity getInstance() { return new CursoImpl(); } public boolean instanceOf(Class<?> otherClass) { return otherClass.isAssignableFrom(getCursoClass()); } public Class<?> getCursoClass() { return CursoImpl.class; } public AbstractTOExample getTOExample() { return CursoTOExample.newInstance(); } public String getEntityKey() { return ENTITY_KEY; } }