diff src/main/java/jp/ac/u_ryukyu/ie/cr/bbs/local/bbs/ShowBoardMessageServlet.java @ 8:766f7668521f

commit
author tatsuki
date Thu, 02 Feb 2017 23:05:59 +0900
parents src/main/java/jp/ac/u_ryukyu/ie/cr/bbs/local/ShowBoardMessageServlet.java@5acde010c6db
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/main/java/jp/ac/u_ryukyu/ie/cr/bbs/local/bbs/ShowBoardMessageServlet.java	Thu Feb 02 23:05:59 2017 +0900
@@ -0,0 +1,56 @@
+package jp.ac.u_ryukyu.ie.cr.bbs.local.bbs;
+
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.PrintWriter;
+import java.util.Iterator;
+
+public class ShowBoardMessageServlet extends HttpServlet {
+    /**
+     *
+     */
+    private static final long serialVersionUID = 1L;
+    private final BulletinBoard bbs;
+    private final String createBoardMessagePath;
+
+    private static final String PARAM_BOARD_NAME = "bname";
+
+    public ShowBoardMessageServlet(BulletinBoard _bbs, String _createBoardMessagePath, String _editMessagePath) {
+        bbs = _bbs;
+        createBoardMessagePath = _createBoardMessagePath;
+    }
+
+    public void doGet(HttpServletRequest _req, HttpServletResponse _res) {
+        String bname = _req.getParameter(PARAM_BOARD_NAME);
+
+        try {
+            printBoard(bname, _res.getWriter());
+        } catch (Exception _e) {
+            _res.setStatus(500);
+        }
+
+    }
+
+    private void printBoard(String _bname, PrintWriter _pw) throws Exception {
+        _pw.write("<html><body>\n");
+        _pw.write("<h1>" + bbs.sanitize(_bname) + "</h1>\n");
+
+        _pw.write("<form action='" + createBoardMessagePath + "' method='POST'\n");
+        _pw.write("<p>Author : <input type='text' name='author'/> <input type='hidden' name='bname' value='" + _bname + "'/> EditKey : <input type='text' name='key'/></p>\n");
+        _pw.write("<p>Message<br/> <input type='textarea' name='msg'/> </p>\n");
+        _pw.write("<p><input type='submit' value='submit'/></p>\n");
+        GetAttributeImp attribute = bbs.getAttribute(_bname, "-1,0", "-1");
+
+        Iterator<String> keys = attribute.getKeys();
+
+        do {
+            String key = keys.next();
+            String mesage = attribute.getMessage(key);
+            _pw.write("<p>" + key + " = " + mesage + "</p>\n");
+        } while (keys.hasNext());
+
+        _pw.write("</body></html>");
+        _pw.flush();
+    }
+}