Guest User

Untitled

a guest
Dec 9th, 2018
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.18 KB | None | 0 0
  1. package wad.pastebin.controller;
  2.  
  3. import java.util.Collection;
  4. import java.util.Date;
  5. import java.util.Map;
  6. import java.util.jar.Attributes;
  7. import org.apache.commons.lang3.StringEscapeUtils;
  8. import org.springframework.beans.factory.annotation.Autowired;
  9. import org.springframework.stereotype.Controller;
  10. import org.springframework.ui.Model;
  11. import org.springframework.web.bind.annotation.PathVariable;
  12. import org.springframework.web.bind.annotation.RequestMapping;
  13. import org.springframework.web.bind.annotation.RequestMethod;
  14. import org.springframework.web.bind.annotation.RequestParam;
  15. import org.springframework.web.servlet.mvc.support.RedirectAttributes;
  16. import wad.pastebin.data.JpaSnippet;
  17. import wad.pastebin.data.JpaUser;
  18. import wad.pastebin.service.JpaSnippetService;
  19. import wad.pastebin.service.JpaUserService;
  20. import wad.pastebin.service.SnippetService;
  21. import wad.pastebin.service.UserService;
  22.  
  23. @Controller
  24. public class PastebinController implements PastebinControllerInterface {
  25.  
  26. @Autowired
  27. UserService jus;
  28. @Autowired
  29. SnippetService jss;
  30.  
  31. @Override
  32. @RequestMapping(value = "snippets", method = RequestMethod.POST)
  33. public String createSnippet(@RequestParam(value = "nickname", required = true) String nickname,
  34. @RequestParam(value = "content", required = true) String content) {
  35.  
  36. JpaUser ju = (JpaUser) jus.findByNickname(nickname);
  37.  
  38. if (ju == null) {
  39. jus.create(ju);
  40. ju.setNickname(nickname);
  41. }
  42. JpaSnippet js = new JpaSnippet();
  43. js.setTimestamp(new Date());
  44. js.setUser(ju);
  45. js.setContent(StringEscapeUtils.escapeHtml4(content));
  46. jss.create(js);
  47.  
  48. //ra.addAttribute("id", js.getId());
  49.  
  50. return "redirect:snippets/" + js.getId();
  51. }
  52.  
  53. @Override
  54. @RequestMapping(value = "snippets", method = RequestMethod.GET)
  55. public String listSnippets(Model model) {
  56.  
  57. model.addAttribute("snippets", jss.findAll());
  58.  
  59. return "list-snippets";
  60. }
  61.  
  62. @Override
  63. @RequestMapping(value = "users/{nickname}/snippets", method = RequestMethod.GET)
  64. public String listSnippetsByUser(Model model,
  65. @PathVariable String nickname) {
  66.  
  67. JpaUser ju = (JpaUser) jus.findByNickname(nickname);
  68. if(ju == null) {
  69. return "users";
  70. }
  71.  
  72.  
  73. model.addAttribute("user", ju);
  74. model.addAttribute("snippets", jss.findByUser(ju));
  75.  
  76. return "list-snippets-by-user";
  77. }
  78.  
  79. @Override
  80. @RequestMapping(value = "users", method = RequestMethod.GET)
  81. public String listUsers(Model model) {
  82.  
  83. model.addAttribute("users", jus.findAll());
  84. return "list-users";
  85. }
  86.  
  87. @Override
  88. @RequestMapping(value = "snippets/{snippetId}", method = RequestMethod.GET)
  89. public String viewSnippet(Model model, @PathVariable Long snippetId) {
  90. JpaSnippet js = (JpaSnippet) jss.findById(snippetId);
  91. if (js == null) {
  92. return "snippets";
  93. }
  94. model.addAttribute("snippet", js);
  95. return "view-snippet";
  96. }
  97. }
Add Comment
Please, Sign In to add comment