annotate src/main/java/jp/ac/u_ryukyu/ie/cr/bbs/network/ShowMessageWithTimeStampServlet.java @ 4:5acde010c6db

add jungle browsing system
author tatsuki
date Tue, 28 Jun 2016 19:45:55 +0900
parents f3d30646c863
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
1 package jp.ac.u_ryukyu.ie.cr.bbs.network;
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
2
3
f3d30646c863 fix error
tatsuki
parents: 2
diff changeset
3 import jp.ac.u_ryukyu.ie.cr.bbs.local.GetAttributeImp;
2
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
4 import org.eclipse.jetty.util.thread.ThreadPool;
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
5
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
6 import javax.servlet.http.HttpServlet;
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
7 import javax.servlet.http.HttpServletRequest;
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
8 import javax.servlet.http.HttpServletResponse;
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
9 import java.io.PrintWriter;
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
10 import java.util.Iterator;
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
11
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
12 public class ShowMessageWithTimeStampServlet extends HttpServlet {
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
13 /**
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
14 *
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
15 */
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
16 private static final long serialVersionUID = 1L;
3
f3d30646c863 fix error
tatsuki
parents: 2
diff changeset
17 private final jp.ac.u_ryukyu.ie.cr.bbs.network.NetworkBulletinBoard bbs;
2
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
18 private final String createBoardMessagePath;
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
19
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
20 private static final String PARAM_BOARD_NAME = "bname";
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
21 private final String editMessagePath;
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
22
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
23 public ShowMessageWithTimeStampServlet(NetworkBulletinBoard _bbs,
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
24 String _createBoardMessagePath, String _editMessagePath, ThreadPool thp) {
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
25 bbs = _bbs;
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
26 createBoardMessagePath = _createBoardMessagePath;
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
27 editMessagePath = _editMessagePath;
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
28 }
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
29
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
30 public void doGet(HttpServletRequest _req, HttpServletResponse _res) {
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
31 final String bname = (_req.getParameter(PARAM_BOARD_NAME));
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
32 try {
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
33 _res.setCharacterEncoding("UTF-8");
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
34 printBoard(bname, _res.getWriter());
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
35 } catch (Exception _e) {
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
36 _res.setStatus(500);
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
37 }
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
38 }
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
39
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
40 private void printBoard(String _bname, PrintWriter _pw) throws Exception {
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
41 _pw.write("<html><body>\n");
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
42 _pw.write("<h1>" + bbs.sanitize(_bname) + "</h1>\n");
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
43 _pw.write("<p>Latest renew time : " + bbs.getRenewTime(_bname)
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
44 + "</p>\n");
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
45 ;
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
46
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
47 _pw.write("<form action='" + createBoardMessagePath + "' method='POST'\n");
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
48 _pw.write("<p>Author : <input type='text' name='author'/> <input type='hidden' name='bname' value='" + bbs.sanitize(_bname) + "'/> EditKey : <input type='textarea' name='key'/></p>\n");
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
49 _pw.write("<p>Message<br/> <input type='textarea' name='msg'/> </p>\n");
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
50 _pw.write("<p><input type='submit' value='submit'/></p>\n");
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
51
4
5acde010c6db add jungle browsing system
tatsuki
parents: 3
diff changeset
52 GetAttributeImp attribute = bbs.getAttribute(_bname, "[-1]","1");
2
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
53 Iterator<String> keys = attribute.getKeys();
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
54
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
55 while (keys.hasNext()) {
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
56 String key = keys.next();
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
57 String mesage = attribute.getMessage(key);
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
58 _pw.write("<p>" + key + " = " + mesage + "</p>\n");
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
59 }
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
60 _pw.write("<p><a href='" + editMessagePath + "?bname=" + bbs.sanitize(_bname) + "&uuid=-1,0" + "'>edit" + "</a></p>");
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
61 _pw.write("</body></html>");
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
62 _pw.flush();
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
63 }
3c188a5b69ef add network bbs
tatsuki
parents:
diff changeset
64 }