view src/main/java/app/bbs/thinks/ShowMatrix.java @ 170:df063cf6f3b5

add Delete Node Method
author tatsuki
date Wed, 30 Jul 2014 10:57:19 +0900
parents 2403b9a4416f
children d483caeabffc
line wrap: on
line source

package app.bbs.thinks;

import java.io.PrintWriter;

import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.eclipse.jetty.util.thread.ThreadPool;

import app.bbs.NetworkBulletinBoard;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.bbs.BoardMessage;

public class ShowMatrix extends HttpServlet {
	/**
	 * edit Node Path is rename editNodePath
	 **/
	private static final long serialVersionUID = 1L;
	private final NetworkBulletinBoard bbs;
	private final String createBoardMessagePath;
	private final String editNodePath;
	private final String showMatrixPath;
	private final String createAttributePath;
	private final String editAttributePath;
	private final String  deleteAttributePath;
	private final String  deleteNodePath;
	private static final String PARAM_BOARD_NAME = "bname";
	private static final String PARAM_BOARD_UUID = "uuid";
	public ShowMatrix(NetworkBulletinBoard _bbs,
			String _createBoardMessagePath, String _editNodePath,
			String _showMatrixPath, String _createAttributePath, String _editAttributePath, String _deleteAttributePath, String _deleteNodePath, ThreadPool thp) {
		bbs = _bbs;
		deleteAttributePath = _deleteAttributePath;
		deleteNodePath = _deleteNodePath;
		createAttributePath = _createAttributePath;
		editAttributePath = _editAttributePath;
		showMatrixPath = _showMatrixPath;
		createBoardMessagePath = _createBoardMessagePath;
		editNodePath = _editNodePath;
	}

	public void doGet(HttpServletRequest _req, HttpServletResponse _res) {
		final String bname = _req.getParameter(PARAM_BOARD_NAME);
		String nodeNum = _req.getParameter(PARAM_BOARD_UUID);
		String nodeName = _req.getParameter("nodeName");
		try {
			printBoard(bname, nodeNum, nodeName, _res.getWriter());
		} catch (Exception _e) {
			_res.setStatus(500);
		}
	}

	private void printBoard(String _bname, String nodeNum, String  nodeName, PrintWriter _pw)
			throws Exception {
		_pw.write("<html><body>\n");
		
		if(nodeName == null )
			nodeName = "rootNode" ;
		
			
		_pw.write("<h1>" + nodeName + " Path = " + nodeNum +  "</h1>\n");
			
		_pw.write("<form action='" + createBoardMessagePath + "' method='POST'>\n");
		_pw.write("<p><input type='hidden' name='bname' value='" + _bname + "'/> </p>\n");
		_pw.write("<p>Folder Name<br/> <input type='textarea' name='msg'/> </p>\n");
		_pw.write("<input type='hidden' name='uuid' value='" + nodeNum + "'/>");
		_pw.write("<p><input type='submit' value='submit'/></p>\n");
		_pw.write("</form>");

		_pw.write("<p><br>add Attribute</p>");
		_pw.write("<form action='" + createAttributePath + "' method='POST'\n");
		_pw.write("<p><input type='hidden' name='bname' value='" + _bname + "'</p>\n");
		_pw.write("<p>attributeName<br/> <input type='textarea' name='msg'/> </p>\n");
		_pw.write("<input type='hidden' name='uuid' value='" + nodeNum + "'/>");
		_pw.write("<p><input type='submit' value='submit'/></p>\n");
		_pw.write("</form>");
		_pw.write("<hr/>");
		_pw.write("<p>Folder</p>");

		for (BoardMessage msg : bbs.getFolder(_bname, nodeNum)) {
			_pw.write("<small><a href=" + showMatrixPath + "?bname=" + _bname + "&uuid=" + nodeNum + "/" + msg.getUUID() + "&nodeName=" + msg.getMessage() + ">" + msg.getMessage() + "</a></small>");
			_pw.write("   ");
			_pw.write("<small><a href='" + editNodePath + "?bname=" + _bname + "&uuid=" + nodeNum  + "/"+ msg.getUUID() + "'>edit</a></small>");
			_pw.write("   ");
			_pw.write("<small><a href='" + deleteNodePath + "?bname=" + _bname + "&path=" + nodeNum  + "&id=" + msg.getUUID() + "'>delete</a><br><br></small>");
		}
		
		
		_pw.write("<br><hr/><p>Value</p>");
		getAttributeImp attribute = (bbs.getAttribute(_bname, nodeNum));
		for (int count = 0; attribute.getMessage(count) != null; count++) {
			_pw.write("<p><b>" + count + " :  </b>");
			_pw.write("<a href='" + editAttributePath + "?bname=" + _bname + "&path=" + nodeNum  + "&count="+ count + "'>"  + attribute.getMessage(count) + "</a>");
			_pw.write("<a href='" + deleteAttributePath + "?bname=" + _bname + "&path=" + nodeNum  + "&count="+ count + "'>"  + "   delete" + "</a></p>");
		}
		_pw.write("</body></html>");
		_pw.flush();
	}
}