/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package com.cultuzz.java.utils.jdbc;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.management.ObjectName;
import javax.management.*;
import com.sun.appserv.management.client.AppserverConnectionSource;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Set;
import java.sql.*;
import javax.sql.*;
import javax.naming.*;
/**
*
* @author sanjeev
* Cultuzz India Pvt. Ltd.
*/
public class ConnectionsTest extends HttpServlet {
public static final long serialVersionUID = -200806031139L;
public static final HashMap properties = new HashMap();
public static final String USER_PASSWORD = "adminadmin";
public static final int JMX_PORT = 8686; // 8754;
public static final String DOTTED_NAME_GET = "dottedNameGet";
public static final String USER = "admin";
public static final String CONFIG = "server-config";
public static final String HOST_NAME = "localhost";
public static final String connectionPoolName = "csp-pool";
protected void updateProperties() {
properties.put("Number of Current Connections Used", "numconnused-current");
properties.put("Maximum Number of Connections Used", "numconnused-highwatermark");
properties.put("Number of Connections Destroyed by pool since last sampling", "numconndestroyed-count");
properties.put("Number of Connections Created by pool since last sampling", "numconncreated-count");
properties.put("Number of Connections Acquired from the pool", "numconnacquired-count");
properties.put("Number of Connections Released to the pool", "numconnreleased-count");
properties.put("Average Connection wait time", "averageconnwaittime-count");
properties.put("Wait time for last connection request serviced by pool", "connrequestwaittime-current");
properties.put("Maximum wait time for request serviced by pool", "connrequestwaittime-highwatermark");
properties.put("Number of Connections in pool, failed validation", "numconnfailedvalidation-count");
properties.put("Number of Connections didn't match", "numconnnotsuccessfullymatched-count");
properties.put("Number of Connections matched successfully", "numconnsuccessfullymatched-count");
properties.put("Number of Connections timed out", "numconntimedout-count");
properties.put("Length of wait queue", "waitqueuelength-count");
properties.put("Number of potential connection leaks", "numpotentialconnleak-count");
properties.put("Number of free connections", "numconnfree-current");
properties.put("Maximum Number of free connections", "numconnfree-highwatermark");
}
/**
* Processes requests for both HTTP GET
and POST
methods.
* @param request servlet request
* @param response servlet responseprintln
* @throws ServletException
* @throws IOException
*/
private int testcase = 1;
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
updateProperties();
if(request.getParameter("count") != null) {
NUM_CONN = Integer.parseInt(request.getParameter("count"));
}
if(request.getParameter("testcase") != null) {
testcase = Integer.parseInt(request.getParameter("testcase"));
}
try {
out.println("");
out.println("
GET
method.
* @param request servlet request
* @param response servlet response
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
/**
* Handles the HTTP POST
method.
* @param request servlet request
* @param response servlet response
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
/**
* Returns a short description of the servlet.
*/
public String getServletInfo() {
return "Short description";
}// " + keyit.next() + out.write(" | " + property + " | : | " + result + " | "); out.write("