java/nekurak.net-rest/src/java/cz/frantovo/nekurak/rest/ClankyREST.java
author František Kučera <franta-hg@frantovo.cz>
Tue Apr 06 00:32:12 2010 +0200 (2010-04-06)
changeset 93 ac53dcce11a9
parent 92 12268fc31114
child 94 ac4a5fc868eb
permissions -rw-r--r--
Načítání konkrétního článku z DB
franta-hg@86
     1
package cz.frantovo.nekurak.rest;
franta-hg@86
     2
franta-hg@90
     3
import cz.frantovo.nekurak.dto.Clanek;
franta-hg@92
     4
import cz.frantovo.nekurak.web.HledacSluzby;
franta-hg@90
     5
import cz.frantovo.nekurak.xml.ClanekXML;
franta-hg@92
     6
import java.util.ArrayList;
franta-hg@92
     7
import java.util.Collection;
franta-hg@87
     8
import javax.ws.rs.Consumes;
franta-hg@89
     9
import javax.ws.rs.DELETE;
franta-hg@86
    10
import javax.ws.rs.GET;
franta-hg@89
    11
import javax.ws.rs.POST;
franta-hg@87
    12
import javax.ws.rs.PUT;
franta-hg@86
    13
import javax.ws.rs.Path;
franta-hg@88
    14
import javax.ws.rs.PathParam;
franta-hg@86
    15
import javax.ws.rs.Produces;
franta-hg@86
    16
franta-hg@86
    17
@Path("clanek")
franta-hg@86
    18
public class ClankyREST {
franta-hg@86
    19
franta-hg@92
    20
    private static final String MIME_XML = "application/xml";
franta-hg@92
    21
    private static final String MIME_TEXT = "text/plain";
franta-hg@92
    22
    private HledacSluzby hledac = new HledacSluzby();
franta-hg@87
    23
franta-hg@89
    24
    /** Vypíšeme seznam všech článků v systému */
franta-hg@89
    25
    @GET
franta-hg@89
    26
    @Path("/")
franta-hg@92
    27
    @Produces(MIME_XML)
franta-hg@92
    28
    public Collection<ClanekXML> seznam() {
franta-hg@92
    29
	Collection<ClanekXML> vysledek = new ArrayList<ClanekXML>();
franta-hg@92
    30
	Collection<Clanek> clanky = hledac.getClanekEJB().getClanky();
franta-hg@92
    31
franta-hg@92
    32
	for (Clanek c : clanky) {
franta-hg@92
    33
	    vysledek.add(new ClanekXML(c));
franta-hg@92
    34
	}
franta-hg@92
    35
franta-hg@92
    36
	return vysledek;
franta-hg@89
    37
    }
franta-hg@89
    38
franta-hg@89
    39
    /** Získáme konkrétní článek */
franta-hg@86
    40
    @GET
franta-hg@88
    41
    @Path("/{id}")
franta-hg@90
    42
    @Produces(MIME_XML)
franta-hg@90
    43
    public ClanekXML ziskej(@PathParam("id") int id) {
franta-hg@93
    44
	Clanek c = hledac.getClanekEJB().getClanek(id);
franta-hg@90
    45
	return new ClanekXML(c);
franta-hg@87
    46
    }
franta-hg@87
    47
franta-hg@89
    48
    /**
franta-hg@89
    49
     * Vložíme nový článek
franta-hg@89
    50
     * @return ID založeného článku
franta-hg@89
    51
     */
franta-hg@89
    52
    @POST
franta-hg@89
    53
    @Consumes(MIME_XML)
franta-hg@92
    54
    @Produces(MIME_TEXT)
franta-hg@89
    55
    public int zaloz() {
franta-hg@89
    56
	return 0;
franta-hg@89
    57
    }
franta-hg@89
    58
franta-hg@89
    59
    /** Aktualizujeme článek */
franta-hg@87
    60
    @PUT
franta-hg@89
    61
    @Consumes(MIME_XML)
franta-hg@89
    62
    @Path("/{id}")
franta-hg@89
    63
    public void uloz(@PathParam("id") int id) {
franta-hg@89
    64
    }
franta-hg@89
    65
franta-hg@89
    66
    /** Smažeme článek */
franta-hg@89
    67
    @DELETE
franta-hg@89
    68
    @Path("/{id}")
franta-hg@89
    69
    public void smaz(@PathParam("id") int id) {
franta-hg@86
    70
    }
franta-hg@86
    71
}