Mercurial > lada > lada-server
view src/main/java/de/intevation/lada/manage/LProbeManager.java @ 65:8078fde8b02b
Persist a new LProbe using the LProbeValidator.
author | Raimund Renkert <rrenkert@intevation.de> |
---|---|
date | Fri, 31 May 2013 14:02:45 +0200 |
parents | 28b9167e5a5b |
children | 9e34b7e872f9 |
line wrap: on
line source
package de.intevation.lada.manage; import java.util.Map; import java.util.logging.Logger; import javax.ejb.Stateless; import javax.ejb.TransactionAttribute; import javax.ejb.TransactionAttributeType; import javax.inject.Inject; import javax.inject.Named; import javax.persistence.EntityExistsException; import javax.persistence.EntityManager; import javax.persistence.TransactionRequiredException; import de.intevation.lada.model.LProbe; import de.intevation.lada.validation.ValidationException; import de.intevation.lada.validation.Validator; @Stateless public class LProbeManager { @Inject private Logger log; @Inject private EntityManager em; @Inject @Named("lprobevalidator") private Validator validator; /** * Delete a LProbe object by id. * * @param id * @throws Exception */ @TransactionAttribute(TransactionAttributeType.REQUIRED) public void delete(String id) throws Exception { LProbe probe = em.find(LProbe.class, id); log.info("Deleting " + probe.getProbeId()); em.remove(probe); } @TransactionAttribute(TransactionAttributeType.REQUIRED) public void create(LProbe probe) throws EntityExistsException, IllegalArgumentException, TransactionRequiredException, ValidationException { validator.validate(probe); em.persist(probe); } public Map<String, Integer> getWarnings() { return validator.getWarnings(); } }