# HG changeset patch # User Nobuyasu Oshiro # Date 1390722358 -32400 # Node ID 7a7bac51a3cc54beb4d48b7ea7d25122db6869eb # Parent 85dab752d0ac0794298018bb4fdfabadbbed2d0b Added RequestNumCheckServlet diff -r 85dab752d0ac -r 7a7bac51a3cc src/main/java/app/bbs/NetworkBulletinBoard.java --- a/src/main/java/app/bbs/NetworkBulletinBoard.java Sun Jan 26 01:36:47 2014 +0900 +++ b/src/main/java/app/bbs/NetworkBulletinBoard.java Sun Jan 26 16:45:58 2014 +0900 @@ -5,4 +5,6 @@ public interface NetworkBulletinBoard extends BulletinBoard { public void init(); + public int getRequestNum(); + } diff -r 85dab752d0ac -r 7a7bac51a3cc src/main/java/app/bbs/NetworkJungleBulletinBoard.java --- a/src/main/java/app/bbs/NetworkJungleBulletinBoard.java Sun Jan 26 01:36:47 2014 +0900 +++ b/src/main/java/app/bbs/NetworkJungleBulletinBoard.java Sun Jan 26 16:45:58 2014 +0900 @@ -35,6 +35,7 @@ private final NetworkJournal journal; private final String LOG_DIR; private Boolean persistentFlag; + private AtomicInteger requestCounter = new AtomicInteger(0); private NetworkJungleBulletinBoard(String _uuid, NetworkJournal _journal) { @@ -131,6 +132,7 @@ public void createBoards(final String _name,final String _author,final String _initMessage,final String _editKey) { + requestCounter.incrementAndGet(); if(null == jungle.createNewTree(_name)){ throw new IllegalStateException(); } @@ -190,6 +192,7 @@ public void createBoardMessage(final String _board,final String _author,final String _message,final String _editKey) { + requestCounter.incrementAndGet(); JungleTree tree = jungle.getTreeByName(_board); if(tree == null){ throw new IllegalStateException(); @@ -231,6 +234,7 @@ public void editMessage(String _board,String _uuid,final String _author,final String _message,final String _editKey) { + requestCounter.incrementAndGet(); final long timestamp = new Date().getTime(); for(;;) { DefaultNodePath path = new DefaultNodePath(); @@ -264,6 +268,7 @@ public Iterable getMessages(String _boardName) { + requestCounter.incrementAndGet(); JungleTree tree = jungle.getTreeByName(_boardName); Node node = tree.getRootNode(); Children chs = node.getChildren(); @@ -280,7 +285,9 @@ return new IterableConverter(chs,converter); } - + public int getRequestNum() { + return requestCounter.get(); + } private static class BoardMessageImpl implements BoardMessage { @@ -309,6 +316,7 @@ { return uuid; } + } } diff -r 85dab752d0ac -r 7a7bac51a3cc src/main/java/app/bbs/RequestNumCheckServlet.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/main/java/app/bbs/RequestNumCheckServlet.java Sun Jan 26 16:45:58 2014 +0900 @@ -0,0 +1,34 @@ +package app.bbs; + +import java.io.PrintWriter; + +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + + +public class RequestNumCheckServlet extends HttpServlet +{ + private final NetworkBulletinBoard bbs; + + public RequestNumCheckServlet(NetworkBulletinBoard _bbs) + { + bbs = _bbs; + } + + public void doGet(HttpServletRequest _req,HttpServletResponse _res) + { + int num = bbs.getRequestNum(); + + try{ + PrintWriter pw = _res.getWriter(); + pw.write(Integer.toString(num)); + pw.flush(); + }catch(Exception _e){ + _res.setStatus(500); + } + + + } + +} diff -r 85dab752d0ac -r 7a7bac51a3cc src/main/java/app/bbs/codesegment/StartBBSCodeSegment.java --- a/src/main/java/app/bbs/codesegment/StartBBSCodeSegment.java Sun Jan 26 01:36:47 2014 +0900 +++ b/src/main/java/app/bbs/codesegment/StartBBSCodeSegment.java Sun Jan 26 16:45:58 2014 +0900 @@ -21,6 +21,7 @@ import alice.datasegment.Receiver; import app.bbs.NetworkBulletinBoard; import app.bbs.NetworkJungleBulletinBoard; +import app.bbs.RequestNumCheckServlet; public class StartBBSCodeSegment extends CodeSegment { @@ -89,6 +90,11 @@ String editMessageUseGetPath = "/editMessageUseGet"; Servlet editMessageUseGet = new EditMessageUseGetServlet(cassaBBS); context.addServletWithMapping(new ServletHolder(editMessageUseGet), editMessageUseGetPath); + String requestNumCheckPath = "/requestNum"; + Servlet requestNumCheckServlet = new RequestNumCheckServlet(cassaBBS); + context.addServletWithMapping(new ServletHolder(requestNumCheckServlet), requestNumCheckPath); + + serv.addHandler(context); try { serv.start();