1 package com.freemindcafe.apache.cxf.jaxrs.sample6;
3 import java.util.ArrayList;
4 import java.util.HashMap;
7 import java.util.stream.Collectors;
9 import javax.ws.rs.GET;
10 import javax.ws.rs.Path;
11 import javax.ws.rs.PathParam;
12 import javax.ws.rs.Produces;
13 import javax.ws.rs.core.MediaType;
20 private Map<Long, Ticket> tickets =
new HashMap<Long, Ticket>();
27 ticket1.setAssignee(
"nikhil");
28 ticket1.setDescription(
"desc");
29 ticket1.setXml(IOUtils.toString(
this.getClass().getResourceAsStream(
"ticket1.xml")));
32 ticket2.setAssignee(
"subhash");
33 ticket2.setDescription(
"desc");
34 ticket2.setXml(IOUtils.toString(
this.getClass().getResourceAsStream(
"ticket2.xml")));
36 tickets.put(1L, ticket1);
37 tickets.put(2L, ticket2);
44 @Produces(MediaType.APPLICATION_JSON)
47 tc.setTickets(tickets.values().stream().collect(Collectors.toList()));
53 @Produces(MediaType.APPLICATION_JSON)
54 public List<Ticket> getTickets(){
55 return tickets.values().stream().collect(Collectors.toList());
60 public Ticket getTicket(@PathParam(
"ticketId") Long ticketId){
61 System.out.println(ticketId);
62 System.out.println(tickets.get(ticketId));
63 return tickets.get(ticketId);
67 @Path(
"/{ticketId}/asXml")
68 @Produces(MediaType.APPLICATION_XML)
69 public Ticket getTicketAsXml(@PathParam(
"ticketId") Long ticketId){
70 System.out.println(ticketId);
71 System.out.println(tickets.get(ticketId));
72 return tickets.get(ticketId);
76 @Path(
"/{ticketId}/asJson")
77 @Produces(MediaType.APPLICATION_JSON)
78 public Ticket getTicketAsJson(@PathParam(
"ticketId") Long ticketId){
79 System.out.println(ticketId);
80 System.out.println(tickets.get(ticketId));
81 return tickets.get(ticketId);
86 @Path(
"/{ticketId}/xml")
87 public String getTicketXml(@PathParam(
"ticketId") Long ticketId){
88 System.out.println(ticketId);
89 System.out.println(tickets.get(ticketId).getXml());
90 return tickets.get(ticketId).getXml();
94 @Path(
"/{ticketId}/xml/asXml")
95 @Produces(MediaType.APPLICATION_XML)
96 public String getTicketXmlAsXml(@PathParam(
"ticketId") Long ticketId){
97 return tickets.get(ticketId).getXml();
101 @Path(
"/{ticketId}/xml/asJson")
102 @Produces(MediaType.APPLICATION_JSON)
103 public String getTicketXmlAsJson(@PathParam(
"ticketId") Long ticketId){
104 return tickets.get(ticketId).getXml();