annotate src/main/java/app/bbs/ShowMessageWithTimeStampServlet.java @ 192:3202a2a427b1 default tip

bug fix
author tatsuki
date Tue, 20 Jan 2015 09:30:59 +0900
parents 269bada9eedc
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
146
29734d7d6521 Added ShowMessageWithTimeStampServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
1 package app.bbs;
29734d7d6521 Added ShowMessageWithTimeStampServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
2
29734d7d6521 Added ShowMessageWithTimeStampServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
3 import java.io.PrintWriter;
29734d7d6521 Added ShowMessageWithTimeStampServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
4
29734d7d6521 Added ShowMessageWithTimeStampServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
5 import javax.servlet.http.HttpServlet;
29734d7d6521 Added ShowMessageWithTimeStampServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
6 import javax.servlet.http.HttpServletRequest;
29734d7d6521 Added ShowMessageWithTimeStampServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
7 import javax.servlet.http.HttpServletResponse;
29734d7d6521 Added ShowMessageWithTimeStampServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
8
155
83e99eba6ec1 async thread comtext in showmessage servlet
tatsuki
parents: 146
diff changeset
9 import org.eclipse.jetty.util.thread.ThreadPool;
83e99eba6ec1 async thread comtext in showmessage servlet
tatsuki
parents: 146
diff changeset
10
192
3202a2a427b1 bug fix
tatsuki
parents: 190
diff changeset
11 import fj.data.List;
146
29734d7d6521 Added ShowMessageWithTimeStampServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
12 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.bbs.BoardMessage;
192
3202a2a427b1 bug fix
tatsuki
parents: 190
diff changeset
13 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.bbs.GetAttributeImp;
3202a2a427b1 bug fix
tatsuki
parents: 190
diff changeset
14 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultNodePath;
146
29734d7d6521 Added ShowMessageWithTimeStampServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
15
156
89999029c543 remove asynchronous showMessage
tatsuki
parents: 155
diff changeset
16 public class ShowMessageWithTimeStampServlet extends HttpServlet {
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
17 /**
146
29734d7d6521 Added ShowMessageWithTimeStampServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
18 *
29734d7d6521 Added ShowMessageWithTimeStampServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
19 */
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
20 private static final long serialVersionUID = 1L;
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
21 private final NetworkBulletinBoard bbs;
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
22 private final String createBoardMessagePath;
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
23 private final String editMessagePath;
156
89999029c543 remove asynchronous showMessage
tatsuki
parents: 155
diff changeset
24
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
25 private static final String PARAM_BOARD_NAME = "bname";
146
29734d7d6521 Added ShowMessageWithTimeStampServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
26
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
27 public ShowMessageWithTimeStampServlet(NetworkBulletinBoard _bbs,
190
tatsuki
parents: 176
diff changeset
28 String _createBoardMessagePath, String _editMessagePath,ThreadPool thp) {
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
29 bbs = _bbs;
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
30 createBoardMessagePath = _createBoardMessagePath;
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
31 editMessagePath = _editMessagePath;
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
32 }
156
89999029c543 remove asynchronous showMessage
tatsuki
parents: 155
diff changeset
33
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
34 public void doGet(HttpServletRequest _req, HttpServletResponse _res) {
174
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
35 final String bname = (_req.getParameter(PARAM_BOARD_NAME));
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
36 try {
173
e30880a72909 change servlet encode utf-8
tatsuki
parents: 167
diff changeset
37 _res.setCharacterEncoding("UTF-8");
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
38 printBoard(bname, _res.getWriter());
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
39 } catch (Exception _e) {
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
40 _res.setStatus(500);
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
41 }
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
42 }
146
29734d7d6521 Added ShowMessageWithTimeStampServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
43
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
44 private void printBoard(String _bname, PrintWriter _pw) throws Exception {
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
45 _pw.write("<html><body>\n");
175
ac7d1070f449 sanitizing
tatsuki
parents: 174
diff changeset
46 _pw.write("<h1>" + bbs.sanitize(_bname) + "</h1>\n");
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
47 _pw.write("<p>Latest renew time : " + bbs.getRenewTime(_bname)
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
48 + "</p>\n");
167
91f6dd655a01 refactoring
tatsuki
parents: 166
diff changeset
49 ;
91f6dd655a01 refactoring
tatsuki
parents: 166
diff changeset
50
91f6dd655a01 refactoring
tatsuki
parents: 166
diff changeset
51 _pw.write("<form action='" + createBoardMessagePath + "' method='POST'\n");
175
ac7d1070f449 sanitizing
tatsuki
parents: 174
diff changeset
52 _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");
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
53 _pw.write("<p>Message<br/> <input type='textarea' name='msg'/> </p>\n");
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
54 _pw.write("<p><input type='submit' value='submit'/></p>\n");
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
55
192
3202a2a427b1 bug fix
tatsuki
parents: 190
diff changeset
56 GetAttributeImp attribute = bbs.getAttribute(_bname, "[-1]","0");
3202a2a427b1 bug fix
tatsuki
parents: 190
diff changeset
57 List<String> keys = attribute.getKeys();
3202a2a427b1 bug fix
tatsuki
parents: 190
diff changeset
58
3202a2a427b1 bug fix
tatsuki
parents: 190
diff changeset
59 for(String key : keys){
3202a2a427b1 bug fix
tatsuki
parents: 190
diff changeset
60 String mesage = attribute.getMessage(key);
3202a2a427b1 bug fix
tatsuki
parents: 190
diff changeset
61 _pw.write("<p>" + key + " = " + mesage + "</p>\n");
3202a2a427b1 bug fix
tatsuki
parents: 190
diff changeset
62 }
156
89999029c543 remove asynchronous showMessage
tatsuki
parents: 155
diff changeset
63
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
64 _pw.write("</body></html>");
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
65 _pw.flush();
b3d5fbe95b9a Create Folder Method
tatsuki
parents: 158
diff changeset
66 }
146
29734d7d6521 Added ShowMessageWithTimeStampServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
67 }