diff --git a/src/test/java/tomcat/request/session/redis/SessionManagerTest.java b/src/test/java/tomcat/request/session/redis/SessionManagerTest.java
index d5f2149..d84777c 100644
--- a/src/test/java/tomcat/request/session/redis/SessionManagerTest.java
+++ b/src/test/java/tomcat/request/session/redis/SessionManagerTest.java
@@ -1,154 +1,168 @@
package tomcat.request.session.redis;
-import java.io.IOException;
-import java.util.Date;
-import java.util.Enumeration;
+import tomcat.request.session.manager.SessionDetailsManager;
-import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
+import java.io.IOException;
+import java.util.Date;
+import java.util.Enumeration;
@WebServlet("/")
public class SessionManagerTest extends HttpServlet {
- private static final long serialVersionUID = 7464510533820701851L;
+ private static final long serialVersionUID = 7464510533820701851L;
- /**
- * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
- * response)
- */
- protected void doGet(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
+ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
+ String action = request.getParameter("action");
+ action = (action == null) ? "" : action;
+ String responseData;
+ switch (action.toUpperCase()) {
+ case "SET":
+ responseData = setSessionValues(request.getSession());
+ break;
+ case "GET":
+ responseData = getSessionValues(request.getSession(), action);
+ break;
+ case "SESSION_DETAILS":
+ responseData = getSessionDetails();
+ break;
+ default:
+ responseData = getActions(request);
+ break;
+ }
+ sendResponse(response, responseData);
+ }
- String action = request.getParameter("action");
- action = (action == null) ? "" : action;
- String responseData = null;
+ /** method to send response */
+ private void sendResponse(HttpServletResponse response, String responseData) throws IOException {
+ response.setContentType("text/html");
+ response.setStatus(HttpServletResponse.SC_OK);
+ response.getWriter().println(responseData);
+ }
- switch (action.toUpperCase()) {
- case "SET":
- responseData = setSessionValues(request.getSession());
- break;
- case "GET":
- responseData = getSessionValues(request.getSession(), action);
- break;
- default:
- responseData = getActions(request);
- break;
- }
+ /** method to get actions */
+ private String getActions(HttpServletRequest request) {
+ StringBuilder xml = new StringBuilder();
- sendResponse(response, responseData);
- }
+ xml.append("");
+ xml.append("");
+ xml.append("
");
+ xml.append("");
+ xml.append("tomcat-cluster-redis-session-manager-test");
+ xml.append("");
+ xml.append("");
+ xml.append("tomcat-cluster-redis-session-manager-test
");
+ xml.append("actions
");
- /**
- * method to send response
- *
- * @param response
- * @param responseData
- * @throws IOException
- */
- private void sendResponse(HttpServletResponse response, String responseData) throws IOException {
- response.setContentType("text/html");
- response.setStatus(HttpServletResponse.SC_OK);
- response.getWriter().println(responseData);
- }
+ String url = request.getRequestURL().toString();
+ url = (url.contains("?action=") ? (url.substring(0, url.indexOf("?action="))) : url).concat("?action=");
- /**
- * method to get actions
- *
- * @param request
- * @return
- */
- private String getActions(HttpServletRequest request) {
- StringBuffer xml = new StringBuffer();
+ xml.append("SET");
+ xml.append("
");
+ xml.append("GET");
+ xml.append("
");
+ xml.append("SESSION_DETAILS");
- xml.append("");
- xml.append("");
- xml.append("");
- xml.append("");
- xml.append("tomcat-cluster-redis-session-manager-test");
- xml.append("");
- xml.append("");
- xml.append("tomcat-cluster-redis-session-manager-test
");
- xml.append("actions
");
+ xml.append("");
+ xml.append("");
- String url = request.getRequestURL().toString();
- url = (url.contains("?action=") ? (url.substring(0, url.indexOf("?action="))) : url).concat("?action=");
+ return xml.toString();
+ }
- xml.append("SET");
- xml.append("
");
- xml.append("GET");
+ /** method to set session values */
+ private String setSessionValues(HttpSession session) {
+ for (int i = 0; i < 10; i++) {
+ session.setAttribute("test-" + i, "test-" + new Date().getTime());
+ }
+ return getSessionValues(session, "SET");
+ }
- xml.append("");
- xml.append("");
+ /** method to get session values */
+ private String getSessionValues(HttpSession session, String action) {
+ StringBuilder xml = new StringBuilder();
+ xml.append("");
+ xml.append("");
+ xml.append("");
+ xml.append("");
+ xml.append("tomcat-cluster-redis-session-manager-test");
+ xml.append("");
+ xml.append("");
+ xml.append("tomcat-cluster-redis-session-manager-test-results
");
+ xml.append("action: ");
+ xml.append(action);
+ xml.append("
");
+ xml.append("");
+ xml.append("");
+ xml.append("Key | ");
+ xml.append("Value | ");
+ xml.append("
");
- return xml.toString();
- }
+ Enumeration names = session.getAttributeNames();
+ while (names.hasMoreElements()) {
+ String name = names.nextElement();
+ xml.append("");
+ xml.append("");
+ xml.append(name);
+ xml.append(" | ");
+ xml.append("");
+ xml.append(session.getAttribute(name));
+ xml.append(" | ");
+ xml.append("
");
+ }
- /**
- * method to set session values
- *
- * @param session
- * @return
- */
- private String setSessionValues(HttpSession session) {
- for (int i = 0; i < 10; i++) {
- session.setAttribute("test-" + i, "test-" + new Date().getTime());
- }
- return getSessionValues(session, "SET");
- }
+ xml.append("
");
+ xml.append("");
+ xml.append("");
- /**
- * method to get session values
- *
- * @param session
- * @param action
- * @return
- */
- private String getSessionValues(HttpSession session, String action) {
- StringBuffer xml = new StringBuffer();
- xml.append("");
- xml.append("");
- xml.append("");
- xml.append("");
- xml.append("tomcat-cluster-redis-session-manager-test");
- xml.append("");
- xml.append("");
- xml.append("tomcat-cluster-redis-session-manager-test-results
");
- xml.append("action: ");
- xml.append(action);
- xml.append("
");
- xml.append("");
- xml.append("");
- xml.append("Key | ");
- xml.append("Value | ");
- xml.append("
");
+ return xml.toString();
+ }
- Enumeration names = session.getAttributeNames();
- while (names.hasMoreElements()) {
- String name = names.nextElement();
- xml.append("");
- xml.append("");
- xml.append(name);
- xml.append(" | ");
- xml.append("");
- xml.append(session.getAttribute(name));
- xml.append(" | ");
- xml.append("
");
- }
+ /** method to get session details */
+ private String getSessionDetails() {
+ SessionDetailsManager manager = SessionManager.getSessionDetailsManagerInstance();
- xml.append("
");
- xml.append("");
- xml.append("");
+ StringBuilder xml = new StringBuilder();
+ xml.append("");
+ xml.append("");
+ xml.append("");
+ xml.append("");
+ xml.append("tomcat-cluster-redis-session-manager-test");
+ xml.append("");
+ xml.append("");
+ xml.append("tomcat-cluster-redis-session-manager-test-results
");
+ xml.append("count: ");
+ xml.append(manager.getActiveSessionCount());
+ xml.append("
");
+// xml.append("");
+// xml.append("");
+// xml.append("Session ID | ");
+// xml.append("
");
+//
+// for (String sessionId : manager.getActiveSessionIds()) {
+// xml.append("");
+// xml.append("");
+// xml.append(sessionId);
+// xml.append(" | ");
+// xml.append("
");
+// }
+//
+// xml.append("
");
+ xml.append("");
+ xml.append("");
- return xml.toString();
- }
+ return xml.toString();
+ }
}
\ No newline at end of file