annotate 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
rev   line source
42
28b9167e5a5b Renamed LProbeService to LProbeManager and moved to package 'manage'.
Raimund Renkert <rrenkert@intevation.de>
parents: 40
diff changeset
1 package de.intevation.lada.manage;
24
dc3bfcc5f717 Added functions to delete and create (stub) proben items. Currently are not working
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
2
65
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
3 import java.util.Map;
24
dc3bfcc5f717 Added functions to delete and create (stub) proben items. Currently are not working
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
4 import java.util.logging.Logger;
dc3bfcc5f717 Added functions to delete and create (stub) proben items. Currently are not working
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
5
dc3bfcc5f717 Added functions to delete and create (stub) proben items. Currently are not working
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
6 import javax.ejb.Stateless;
dc3bfcc5f717 Added functions to delete and create (stub) proben items. Currently are not working
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
7 import javax.ejb.TransactionAttribute;
dc3bfcc5f717 Added functions to delete and create (stub) proben items. Currently are not working
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
8 import javax.ejb.TransactionAttributeType;
dc3bfcc5f717 Added functions to delete and create (stub) proben items. Currently are not working
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
9 import javax.inject.Inject;
65
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
10 import javax.inject.Named;
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
11 import javax.persistence.EntityExistsException;
24
dc3bfcc5f717 Added functions to delete and create (stub) proben items. Currently are not working
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
12 import javax.persistence.EntityManager;
65
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
13 import javax.persistence.TransactionRequiredException;
24
dc3bfcc5f717 Added functions to delete and create (stub) proben items. Currently are not working
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
14
29
c5930d01e0ab Package renaming and code cosmetics.
Raimund Renkert <rrenkert@intevation.de>
parents: 24
diff changeset
15 import de.intevation.lada.model.LProbe;
65
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
16 import de.intevation.lada.validation.ValidationException;
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
17 import de.intevation.lada.validation.Validator;
24
dc3bfcc5f717 Added functions to delete and create (stub) proben items. Currently are not working
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
18
dc3bfcc5f717 Added functions to delete and create (stub) proben items. Currently are not working
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
19 @Stateless
42
28b9167e5a5b Renamed LProbeService to LProbeManager and moved to package 'manage'.
Raimund Renkert <rrenkert@intevation.de>
parents: 40
diff changeset
20 public class LProbeManager {
24
dc3bfcc5f717 Added functions to delete and create (stub) proben items. Currently are not working
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
21
dc3bfcc5f717 Added functions to delete and create (stub) proben items. Currently are not working
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
22 @Inject
dc3bfcc5f717 Added functions to delete and create (stub) proben items. Currently are not working
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
23 private Logger log;
dc3bfcc5f717 Added functions to delete and create (stub) proben items. Currently are not working
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
24
dc3bfcc5f717 Added functions to delete and create (stub) proben items. Currently are not working
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
25 @Inject
dc3bfcc5f717 Added functions to delete and create (stub) proben items. Currently are not working
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
26 private EntityManager em;
dc3bfcc5f717 Added functions to delete and create (stub) proben items. Currently are not working
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
27
65
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
28 @Inject
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
29 @Named("lprobevalidator")
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
30 private Validator validator;
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
31
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
32 /**
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
33 * Delete a LProbe object by id.
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
34 *
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
35 * @param id
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
36 * @throws Exception
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
37 */
24
dc3bfcc5f717 Added functions to delete and create (stub) proben items. Currently are not working
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
38 @TransactionAttribute(TransactionAttributeType.REQUIRED)
dc3bfcc5f717 Added functions to delete and create (stub) proben items. Currently are not working
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
39 public void delete(String id) throws Exception {
40
0dd63fcc9581 Code cleanup.
Raimund Renkert <rrenkert@intevation.de>
parents: 29
diff changeset
40 LProbe probe = em.find(LProbe.class, id);
24
dc3bfcc5f717 Added functions to delete and create (stub) proben items. Currently are not working
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
41 log.info("Deleting " + probe.getProbeId());
dc3bfcc5f717 Added functions to delete and create (stub) proben items. Currently are not working
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
42 em.remove(probe);
dc3bfcc5f717 Added functions to delete and create (stub) proben items. Currently are not working
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
43 }
65
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
44
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
45 @TransactionAttribute(TransactionAttributeType.REQUIRED)
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
46 public void create(LProbe probe)
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
47 throws EntityExistsException,
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
48 IllegalArgumentException,
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
49 TransactionRequiredException,
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
50 ValidationException {
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
51 validator.validate(probe);
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
52 em.persist(probe);
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
53 }
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
54
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
55 public Map<String, Integer> getWarnings() {
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
56 return validator.getWarnings();
8078fde8b02b Persist a new LProbe using the LProbeValidator.
Raimund Renkert <rrenkert@intevation.de>
parents: 42
diff changeset
57 }
24
dc3bfcc5f717 Added functions to delete and create (stub) proben items. Currently are not working
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
58 }
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)