Články – metody pro REST API.
1.1 --- a/java/nekurak.net-rest/src/java/cz/frantovo/nekurak/rest/ClankyREST.java Mon Apr 05 19:08:52 2010 +0200
1.2 +++ b/java/nekurak.net-rest/src/java/cz/frantovo/nekurak/rest/ClankyREST.java Mon Apr 05 22:21:01 2010 +0200
1.3 @@ -1,7 +1,9 @@
1.4 package cz.frantovo.nekurak.rest;
1.5
1.6 import javax.ws.rs.Consumes;
1.7 +import javax.ws.rs.DELETE;
1.8 import javax.ws.rs.GET;
1.9 +import javax.ws.rs.POST;
1.10 import javax.ws.rs.PUT;
1.11 import javax.ws.rs.Path;
1.12 import javax.ws.rs.PathParam;
1.13 @@ -10,25 +12,46 @@
1.14 @Path("clanek")
1.15 public class ClankyREST {
1.16
1.17 - /**
1.18 - * Pro vyzkoušení REST funkčnosti můžeme použít statickou proměnnou,
1.19 - * ale v praxi bychom se statickým proměnným měli vyhýbat – data budeme typicky předávat
1.20 - * nějaké nižší vrstvě (EJB, databáze) a nebudeme si je skladovat v prezentační vrstvě.
1.21 - * Místo statické proměnné jsme zde mohli použít EJB singleton, který by se postaral o uchování dat.
1.22 - */
1.23 - private static String data;
1.24 + private static final String MIME_XML = "text/xml";
1.25
1.26 + /** Vypíšeme seznam všech článků v systému */
1.27 + @GET
1.28 + @Path("/")
1.29 + @Produces("text/plain")
1.30 + public String getClanky() {
1.31 + return "tady bude seznam";
1.32 + }
1.33 +
1.34 + /** Získáme konkrétní článek */
1.35 @GET
1.36 @Path("/{id}")
1.37 @Produces("text/plain")
1.38 - public String getText(@PathParam("id") int id) {
1.39 - return "Naposledy sem někdo poslal:\n" + data + "\n" + id + "\n" ;
1.40 + //@Produces(MIME_XML)
1.41 + public String ziskej(@PathParam("id") int id) {
1.42 + return "jeden článek: " + id;
1.43 }
1.44
1.45 + /**
1.46 + * Vložíme nový článek
1.47 + * @return ID založeného článku
1.48 + */
1.49 + @POST
1.50 + @Consumes(MIME_XML)
1.51 + @Produces("text/plain")
1.52 + public int zaloz() {
1.53 + return 0;
1.54 + }
1.55 +
1.56 + /** Aktualizujeme článek */
1.57 @PUT
1.58 - @Consumes("text/plain")
1.59 - public String putText(String data) {
1.60 - ClankyREST.data = data;
1.61 - return "Právě jsme od vás přijali:\n" + data + "\n";
1.62 + @Consumes(MIME_XML)
1.63 + @Path("/{id}")
1.64 + public void uloz(@PathParam("id") int id) {
1.65 + }
1.66 +
1.67 + /** Smažeme článek */
1.68 + @DELETE
1.69 + @Path("/{id}")
1.70 + public void smaz(@PathParam("id") int id) {
1.71 }
1.72 }