Guest User

class_prophetie

a guest
Jan 10th, 2018
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.81 KB | None | 0 0
  1. package df.asi.nirvana0;
  2.  
  3. import java.util.Arrays;
  4. import java.util.HashSet;
  5. import java.util.LinkedList;
  6. import java.util.List;
  7. import java.util.Set;
  8.  
  9. import javax.ws.rs.Consumes;
  10. import javax.ws.rs.DELETE;
  11. import javax.ws.rs.FormParam;
  12. import javax.ws.rs.GET;
  13. import javax.ws.rs.POST;
  14. import javax.ws.rs.PUT;
  15. import javax.ws.rs.Path;
  16. import javax.ws.rs.PathParam;
  17. import javax.ws.rs.Produces;
  18. import javax.ws.rs.QueryParam;
  19. import javax.ws.rs.core.Application;
  20. import javax.ws.rs.core.MediaType;
  21.  
  22. @Path("/prophetie")
  23. public class Prophetie extends Application {
  24. public Set<Class<?>> getClasses() {
  25. Set<Class<?>> s = new HashSet<Class<?>>();
  26. s.add(Prophetie.class);
  27. return s;
  28. }
  29.  
  30. static List<String> donnees = new LinkedList<String>(Arrays.asList(
  31. "vive le surhumain", "Nietzsche est mort aussi", "Dieu est mort",
  32. "Si la matière grise était plus rose, le monde aurait moins les idées noires.",
  33. "Il faut une infinie patience pour attendre toujours ce qui n'arrive jamais."
  34. ));
  35. @Path("/list")
  36. @GET
  37. @Produces(MediaType.TEXT_HTML)
  38. public String list() {
  39. StringBuffer result = new StringBuffer("<html><body><ul>");
  40. for (int i=0; i < donnees.size() ; ++i )
  41. result.append("<li>prophétie numéro " + i + " : " + donnees.get(i) +"</li> ");
  42. return result.toString() + "</ul></body></html> ";
  43. }
  44. @Path("/{numero}")
  45. @GET
  46. @Produces(MediaType.TEXT_HTML)
  47. public String showIeme(@PathParam("numero") int i) {
  48. return "<html><body>prophétie numéro "+i+" : " + donnees.get(i) +"</body></html> ";
  49. }
  50. @Path("/find1")
  51. @GET
  52. @Produces(MediaType.TEXT_HTML)
  53. public String findFirst(@QueryParam("mot") String mot) {
  54. for (int i=0; i < donnees.size() ; ++i )
  55. if ((donnees.get(i)).contains(mot))
  56. return "<html><body>prophétie numéro " + i + " : " + donnees.get(i)
  57. +"</body></html> ";
  58. return "<html><body>pas de prophétie contenant le mot " + mot + "</body></html> ";
  59. }
  60.  
  61. @Path("/new")
  62. @POST
  63. @Consumes(MediaType.APPLICATION_FORM_URLENCODED)
  64. @Produces(MediaType.TEXT_HTML)
  65. public String nouvelle(@FormParam("texte") String texte) {
  66. donnees.add(texte);
  67. return "<html><body>prophétie numéro " + (donnees.size()-1) + " : "
  68. + texte +"</body></html> ";
  69. }
  70.  
  71. @Path("/{numero}")
  72. @DELETE
  73. @Produces(MediaType.TEXT_HTML)
  74. public String delete(@PathParam("numero") int i) {
  75. String texte = donnees.remove(i);
  76. return "<html><body>prophétie de texte " + texte +" supprimée</body></html> ";
  77. }
  78. @Path("/{numero}")
  79. @PUT
  80. @Consumes(MediaType.APPLICATION_FORM_URLENCODED)
  81. @Produces(MediaType.TEXT_HTML)
  82. public String change(@PathParam("numero") int i, @FormParam("texte") String texte) {
  83. donnees.set(i, texte);
  84. return "<html><body>prophétie numéro "+i+" : "+donnees.get(i)+"</body></html> ";
  85. }
  86. }
Advertisement
Add Comment
Please, Sign In to add comment