annotate src/main/java/app/bbs/thinks/ShowMatrix.java @ 176:6f104ab4eb81

fit jungle core but editMessage is not work
author tatsuki
date Mon, 01 Sep 2014 00:04:32 +0900
parents ac7d1070f449
children ef5045af0753
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
1 package app.bbs.thinks;
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
2
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
3 import java.io.PrintWriter;
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
4
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
5 import javax.servlet.http.HttpServlet;
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
6 import javax.servlet.http.HttpServletRequest;
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
7 import javax.servlet.http.HttpServletResponse;
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
8
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
9 import org.eclipse.jetty.util.thread.ThreadPool;
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
10
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
11 import app.bbs.NetworkBulletinBoard;
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
12 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.bbs.BoardMessage;
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
13
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
14 public class ShowMatrix extends HttpServlet {
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
15 /**
170
df063cf6f3b5 add Delete Node Method
tatsuki
parents: 169
diff changeset
16 * edit Node Path is rename editNodePath
df063cf6f3b5 add Delete Node Method
tatsuki
parents: 169
diff changeset
17 **/
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
18 private static final long serialVersionUID = 1L;
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
19 private final NetworkBulletinBoard bbs;
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
20 private final String createBoardMessagePath;
170
df063cf6f3b5 add Delete Node Method
tatsuki
parents: 169
diff changeset
21 private final String editNodePath;
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
22 private final String showMatrixPath;
166
564f683b7aef Matrix Date type insert ok
tatsuki
parents: 165
diff changeset
23 private final String createAttributePath;
168
54d68cda84c4 create edit Attribute & Folder Method
tatsuki
parents: 167
diff changeset
24 private final String editAttributePath;
174
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
25 private final String deleteAttributePath;
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
26 private final String deleteNodePath;
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
27 private static final String PARAM_BOARD_NAME = "bname";
172
d483caeabffc change request id
tatsuki
parents: 170
diff changeset
28 private static final String PARAM_NODE_PATH = "uuid";
174
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
29 private static final String PARAM_NODE_NAME = "nodeName";
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
30
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
31 public ShowMatrix(NetworkBulletinBoard _bbs,
170
df063cf6f3b5 add Delete Node Method
tatsuki
parents: 169
diff changeset
32 String _createBoardMessagePath, String _editNodePath,
174
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
33 String _showMatrixPath, String _createAttributePath,
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
34 String _editAttributePath, String _deleteAttributePath,
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
35 String _deleteNodePath, ThreadPool thp) {
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
36 bbs = _bbs;
169
2403b9a4416f create Delete Attribute Method
tatsuki
parents: 168
diff changeset
37 deleteAttributePath = _deleteAttributePath;
2403b9a4416f create Delete Attribute Method
tatsuki
parents: 168
diff changeset
38 deleteNodePath = _deleteNodePath;
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
39 createAttributePath = _createAttributePath;
168
54d68cda84c4 create edit Attribute & Folder Method
tatsuki
parents: 167
diff changeset
40 editAttributePath = _editAttributePath;
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
41 showMatrixPath = _showMatrixPath;
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
42 createBoardMessagePath = _createBoardMessagePath;
170
df063cf6f3b5 add Delete Node Method
tatsuki
parents: 169
diff changeset
43 editNodePath = _editNodePath;
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
44 }
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
45
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
46 public void doGet(HttpServletRequest _req, HttpServletResponse _res) {
174
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
47 final String bname = _req.getParameter(PARAM_BOARD_NAME);
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
48 String path = _req.getParameter(PARAM_NODE_PATH);
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
49 String nodeName = _req.getParameter(PARAM_NODE_NAME);
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
50 try {
173
e30880a72909 change servlet encode utf-8
tatsuki
parents: 172
diff changeset
51 _res.setCharacterEncoding("UTF-8");
172
d483caeabffc change request id
tatsuki
parents: 170
diff changeset
52 printBoard(bname, path, nodeName, _res.getWriter());
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
53 } catch (Exception _e) {
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
54 _res.setStatus(500);
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
55 }
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
56 }
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
57
174
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
58 private void printBoard(String _bname, String path, String nodeName,
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
59 PrintWriter _pw) throws Exception {
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
60 _pw.write("<html><body>\n");
174
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
61
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
62 if (nodeName == null)
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
63 nodeName = "rootNode";
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
64
175
ac7d1070f449 sanitizing
tatsuki
parents: 174
diff changeset
65 _pw.write("<h1>" + bbs.sanitize(nodeName) + " Path = " + path + "</h1>\n");
174
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
66
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
67 _pw.write("<form action='" + createBoardMessagePath
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
68 + "' method='POST'>\n");
175
ac7d1070f449 sanitizing
tatsuki
parents: 174
diff changeset
69 _pw.write("<p><input type='hidden' name='bname' value='" + bbs.sanitize(_bname)
174
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
70 + "'/> </p>\n");
172
d483caeabffc change request id
tatsuki
parents: 170
diff changeset
71 _pw.write("<p>Folder Name<br/> <input type='textarea' name='name'/> </p>\n");
d483caeabffc change request id
tatsuki
parents: 170
diff changeset
72 _pw.write("<input type='hidden' name='path' value='" + path + "'/>");
166
564f683b7aef Matrix Date type insert ok
tatsuki
parents: 165
diff changeset
73 _pw.write("<p><input type='submit' value='submit'/></p>\n");
564f683b7aef Matrix Date type insert ok
tatsuki
parents: 165
diff changeset
74 _pw.write("</form>");
564f683b7aef Matrix Date type insert ok
tatsuki
parents: 165
diff changeset
75
564f683b7aef Matrix Date type insert ok
tatsuki
parents: 165
diff changeset
76 _pw.write("<p><br>add Attribute</p>");
564f683b7aef Matrix Date type insert ok
tatsuki
parents: 165
diff changeset
77 _pw.write("<form action='" + createAttributePath + "' method='POST'\n");
175
ac7d1070f449 sanitizing
tatsuki
parents: 174
diff changeset
78 _pw.write("<p><input type='hidden' name='bname' value='" + bbs.sanitize(_bname)
174
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
79 + "'</p>\n");
166
564f683b7aef Matrix Date type insert ok
tatsuki
parents: 165
diff changeset
80 _pw.write("<p>attributeName<br/> <input type='textarea' name='msg'/> </p>\n");
172
d483caeabffc change request id
tatsuki
parents: 170
diff changeset
81 _pw.write("<input type='hidden' name='path' value='" + path + "'/>");
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
82 _pw.write("<p><input type='submit' value='submit'/></p>\n");
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
83 _pw.write("</form>");
169
2403b9a4416f create Delete Attribute Method
tatsuki
parents: 168
diff changeset
84 _pw.write("<hr/>");
166
564f683b7aef Matrix Date type insert ok
tatsuki
parents: 165
diff changeset
85 _pw.write("<p>Folder</p>");
564f683b7aef Matrix Date type insert ok
tatsuki
parents: 165
diff changeset
86
172
d483caeabffc change request id
tatsuki
parents: 170
diff changeset
87 for (BoardMessage msg : bbs.getFolder(_bname, path)) {
175
ac7d1070f449 sanitizing
tatsuki
parents: 174
diff changeset
88 _pw.write("<small><a href=" + showMatrixPath + "?bname=" + bbs.sanitize(_bname)
174
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
89 + "&uuid=" + path + "/" + msg.getUUID() + "&nodeName="
175
ac7d1070f449 sanitizing
tatsuki
parents: 174
diff changeset
90 + bbs.sanitize(msg.getMessage()) + ">" + bbs.sanitize(msg.getMessage())
174
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
91 + "</a></small>");
170
df063cf6f3b5 add Delete Node Method
tatsuki
parents: 169
diff changeset
92 _pw.write(" ");
175
ac7d1070f449 sanitizing
tatsuki
parents: 174
diff changeset
93 _pw.write("<small><a href='" + editNodePath + "?bname=" + bbs.sanitize(_bname)
174
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
94 + "&path=" + path + "/" + msg.getUUID()
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
95 + "'>edit</a></small>");
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
96 _pw.write(" ");
175
ac7d1070f449 sanitizing
tatsuki
parents: 174
diff changeset
97 _pw.write("<small><a href='" + deleteNodePath + "?bname=" + bbs.sanitize(_bname)
174
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
98 + "&path=" + path + "&id=" + msg.getUUID()
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
99 + "'>delete</a><br><br></small>");
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
100 }
174
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
101
169
2403b9a4416f create Delete Attribute Method
tatsuki
parents: 168
diff changeset
102 _pw.write("<br><hr/><p>Value</p>");
172
d483caeabffc change request id
tatsuki
parents: 170
diff changeset
103 getAttributeImp attribute = (bbs.getAttribute(_bname, path));
166
564f683b7aef Matrix Date type insert ok
tatsuki
parents: 165
diff changeset
104 for (int count = 0; attribute.getMessage(count) != null; count++) {
169
2403b9a4416f create Delete Attribute Method
tatsuki
parents: 168
diff changeset
105 _pw.write("<p><b>" + count + " : </b>");
175
ac7d1070f449 sanitizing
tatsuki
parents: 174
diff changeset
106 _pw.write("<a href='" + editAttributePath + "?bname=" + bbs.sanitize(_bname)
174
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
107 + "&path=" + path + "&id=" + count + "'>"
175
ac7d1070f449 sanitizing
tatsuki
parents: 174
diff changeset
108 + bbs.sanitize(attribute.getMessage(count)) + "</a>");
ac7d1070f449 sanitizing
tatsuki
parents: 174
diff changeset
109 _pw.write("<a href='" + deleteAttributePath + "?bname=" + bbs.sanitize(_bname)
174
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
110 + "&path=" + path + "&id=" + count + "'>" + " delete"
066f58e93a14 remove StringEscapeUtils.unescapeHtml
tatsuki
parents: 173
diff changeset
111 + "</a></p>");
166
564f683b7aef Matrix Date type insert ok
tatsuki
parents: 165
diff changeset
112 }
165
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
113 _pw.write("</body></html>");
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
114 _pw.flush();
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
115 }
b3d5fbe95b9a Create Folder Method
tatsuki
parents:
diff changeset
116 }