annotate src/main/java/de/intevation/lada/rest/SProbenartService.java @ 48:afc3ef3dc3c3

New REST service for 'Probenart Stammdaten'.
author Raimund Renkert <rrenkert@intevation.de>
date Fri, 24 May 2013 11:56:07 +0200
parents
children 5abec5413d65
rev   line source
48
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
1 package de.intevation.lada.rest;
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
2
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
3 import java.util.List;
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
4 import java.util.logging.Logger;
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
5
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
6 import javax.enterprise.context.RequestScoped;
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
7 import javax.inject.Inject;
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
8 import javax.inject.Named;
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
9 import javax.ws.rs.GET;
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
10 import javax.ws.rs.Path;
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
11 import javax.ws.rs.PathParam;
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
12 import javax.ws.rs.Produces;
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
13
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
14 import de.intevation.lada.data.Repository;
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
15 import de.intevation.lada.model.SProbenart;
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
16
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
17 /**
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
18 * This class produces a RESTful service to read the contents of SProbenart table.
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
19 *
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
20 * @author <a href="mailto:rrenkert@intevation.de">Raimund Renkert</a>
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
21 */
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
22 @Path("/probenart")
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
23 @RequestScoped
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
24 public class SProbenartService
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
25 {
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
26 /**
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
27 * The Repository for SProbenart.
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
28 */
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
29 @Inject @Named
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
30 private Repository repository;
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
31
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
32 /**
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
33 * The logger for this class
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
34 */
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
35 @Inject
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
36 private Logger logger;
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
37
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
38 /**
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
39 * Request all SProbenart objects.
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
40 *
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
41 * @return JSON Object via Rest service
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
42 */
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
43 @GET
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
44 @Produces("text/json")
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
45 public List<SProbenart> findAll() {
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
46 List<SProbenart> result = repository.findAll(SProbenart.class);
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
47 return result;
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
48 }
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
49
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
50 /**
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
51 * Request a single SProbenart via its id.
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
52 *
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
53 * @param id The mst_id
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
54 * @return JSON Object via REST service.
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
55 */
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
56 @GET
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
57 @Path("/{id}")
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
58 @Produces("text/json")
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
59 public SProbenart findById(@PathParam("id") String id) {
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
60 return repository.findById(SProbenart.class, id);
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
61 }
afc3ef3dc3c3 New REST service for 'Probenart Stammdaten'.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
62 }
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)