package com.megatim.fdxconsultation.dao.impl.settings;
|
|
import com.bekosoftware.genericdaolayer.dao.impl.AbstractGenericDAO;
|
import com.megatim.fdxconsultation.dao.ifaces.settings.DisplayOptionsDAO;
|
import com.megatim.fdxconsultation.model.settings.DisplayOptions;
|
import java.util.Optional;
|
import javax.enterprise.context.Dependent;
|
import javax.persistence.EntityManager;
|
import javax.persistence.PersistenceContext;
|
import javax.transaction.Transactional;
|
|
/**
|
*
|
* @author Gabuntu
|
*/
|
@Dependent
|
public class DisplayOptionsDAOImpl extends AbstractGenericDAO<DisplayOptions, Long> implements DisplayOptionsDAO {
|
|
@PersistenceContext(unitName = "fdxConsultationPersistenceUnit")
|
protected EntityManager em;
|
|
@Override
|
public EntityManager getEntityManager() {
|
return em;
|
}
|
|
@Override
|
public Class<DisplayOptions> getManagedEntityClass() {
|
return DisplayOptions.class;
|
}
|
|
@Transactional
|
@Override
|
public DisplayOptions current() {
|
Optional<DisplayOptions> optional = em.createQuery("SELECT d from DisplayOptions d")
|
.getResultList()
|
.stream()
|
.findFirst();
|
return optional.orElse(null);
|
}
|
|
@Transactional
|
@Override
|
synchronized public DisplayOptions edit(DisplayOptions entity) {
|
|
DisplayOptions current = current();
|
if (current == null) {
|
return save(entity);
|
}
|
|
current.setAuditAPI(entity.getAuditAPI());
|
current.setStatParticipantAPI(entity.getStatParticipantAPI());
|
current.setStatPathAPI(entity.getStatPathAPI());
|
current.setTableauBordAPI(entity.getTableauBordAPI());
|
|
current.setSuiviEchangeStandalone(entity.getSuiviEchangeStandalone());
|
current.setTableauBordStandalone(entity.getTableauBordStandalone());
|
|
return save(current);
|
}
|
|
}
|