/* (non-Javadoc) * @see fr.certu.chouette.dao.IDaoTemplate#update(fr.certu.chouette.model.neptune.NeptuneObject) */ public void update(T object) { logger.debug("invoke update on " + type.getSimpleName()); try { getHibernateTemplate().saveOrUpdate(object); } catch (HibernateSystemException hse) { if (hse.getCause() != null && hse.getCause() instanceof NonUniqueObjectException) getHibernateTemplate().merge(object); else throw hse; } // getHibernateTemplate().flush(); }
/* (non-Javadoc) * @see fr.certu.chouette.dao.IDaoTemplate#save(fr.certu.chouette.model.neptune.NeptuneObject) */ public void save(T object) { logger.debug("invoke save on " + type.getSimpleName()); try { getHibernateTemplate().saveOrUpdate(object); } catch (HibernateSystemException hse) { if (hse.getCause() != null && hse.getCause() instanceof NonUniqueObjectException) getHibernateTemplate().merge(object); else throw hse; } // T existing = getByObjectId(object.getObjectId()); // if (existing == null) // { // getHibernateTemplate().saveOrUpdate( object); // } // else // { // object.setId(existing.getId()); // getHibernateTemplate().merge( object); // } // getHibernateTemplate().flush(); }