Subversion Repositories general

Compare Revisions

Ignore whitespace Rev 955 → Rev 956

/sun/backpath/trunk/src/ak/backpath/test/BackPathTest.java
0,0 → 1,87
package ak.backpath.test;
 
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import ak.backpath.BackPath;
 
public class BackPathTest
{
 
public static void main(String[] args)
throws Exception
{
int n = 50000;
int m = 1;
 
TestThread[] threads = new TestThread[m];
 
for(int i = 0; i < threads.length; i++) {
threads[i] = new TestThread(n);
}
 
long t1 = System.currentTimeMillis();
for(int i = 0; i < threads.length; i++) {
threads[i].start();
}
for(int i = 0; i < threads.length; i++) {
threads[i].join();
}
long t2 = System.currentTimeMillis();
 
System.out.println(m + " threads * " + n + " iterations = " + (t2-t1) + " ms");
System.out.println((((long)m*n*1000)/(t2-t1)) + " requests/s");
}
 
private static class TestThread extends Thread
{
private int n;
 
public TestThread(int n)
{
this.n = n;
}
 
public void run() {
try {
Map params = new java.util.HashMap();
DummyRequest request;
BackPath backPath;
String pathString;
 
// index
params.clear();
request = new DummyRequest("http://localhost/testapp/index.do", params);
backPath = BackPath.findBackPath(request);
pathString = backPath.getForwardParams();
backPath.getBackwardUrl();
 
// list
params.clear();
params.put("backpath", new String[] { pathString });
params.put("show", new String[] { "true" });
request = new DummyRequest("http://localhost/testapp/some/list.do?show=true", params);
backPath = BackPath.findBackPath(request);
pathString = backPath.getForwardParams();
backPath.getBackwardUrl();
 
// details
params.clear();
params.put("backpath", new String[] { pathString });
params.put("id", new String[] { "123" });
params.put("show", new String[] { "true" });
request = new DummyRequest("http://localhost/testapp/some/details.do?id=123&show=true", params);
 
for(int i = 0; i < n; i++) {
request.clearAttributes();
backPath = BackPath.findBackPath(request);
backPath.getCurrentParams();
backPath.getForwardParams();
backPath.getBackwardUrl();
}
}
catch(Exception ex) {
ex.printStackTrace();
}
}
}
}
/sun/backpath/trunk/src/ak/backpath/test/DummyRequest.java
0,0 → 1,294
package ak.backpath.test;
 
import javax.servlet.http.HttpServletRequest;
 
class DummyRequest implements HttpServletRequest
{
private StringBuffer url;
private java.util.Map params;
private java.util.Map attrs = new java.util.HashMap();
 
public DummyRequest(String url, java.util.Map params)
{
this.url = new StringBuffer(url);
this.params = params;
}
 
public void clearAttributes()
{
attrs.clear();
}
 
public Object getAttribute(String name)
{
return attrs.get(name);
}
 
public java.util.Enumeration getAttributeNames()
{
return null;
}
 
public String getCharacterEncoding()
{
return null;
}
 
public int getContentLength()
{
return 0;
}
 
public String getContentType()
{
return null;
}
 
public javax.servlet.ServletInputStream getInputStream()
{
return null;
}
 
public java.util.Locale getLocale()
{
return null;
}
 
public java.util.Enumeration getLocales()
{
return null;
}
 
public String getLocalAddr()
{
return null;
}
 
public String getLocalName()
{
return null;
}
 
public int getLocalPort()
{
return 0;
}
 
public String getParameter(String name)
{
String[] v = (String[])params.get(name);
 
if(v == null)
return null;
else
return v[0];
}
 
public java.util.Map getParameterMap()
{
return params;
}
 
public java.util.Enumeration getParameterNames()
{
return null;
}
 
public String[] getParameterValues(String name)
{
return null;
}
 
public String getProtocol()
{
return null;
}
 
public java.io.BufferedReader getReader()
{
return null;
}
 
public String getRealPath(String path)
{
return null;
}
 
public String getRemoteAddr()
{
return null;
}
 
public String getRemoteHost()
{
return null;
}
 
public int getRemotePort()
{
return 0;
}
 
public javax.servlet.RequestDispatcher getRequestDispatcher(String path)
{
return null;
}
 
public String getScheme()
{
return null;
}
 
public String getServerName()
{
return null;
}
 
public int getServerPort()
{
return 0;
}
 
public boolean isSecure()
{
return false;
}
 
public void removeAttribute(String name)
{
}
 
public void setAttribute(String name, Object o)
{
attrs.put(name, o);
}
 
public void setCharacterEncoding(String env)
{
}
 
public String getAuthType()
{
return null;
}
 
public String getContextPath()
{
return null;
}
 
public javax.servlet.http.Cookie[] getCookies()
{
return null;
}
 
public long getDateHeader(String name)
{
return 0;
}
 
public String getHeader(String name)
{
return null;
}
 
public java.util.Enumeration getHeaderNames()
{
return null;
}
 
public java.util.Enumeration getHeaders(String name)
{
return null;
}
 
public int getIntHeader(String name)
{
return 0;
}
 
public String getMethod()
{
return "GET";
}
 
public String getPathInfo()
{
return null;
}
 
public String getPathTranslated()
{
return null;
}
 
public String getQueryString()
{
return null;
}
 
public String getRemoteUser()
{
return null;
}
 
public String getRequestedSessionId()
{
return null;
}
 
public String getRequestURI()
{
return null;
}
 
public StringBuffer getRequestURL()
{
return url;
}
 
public String getServletPath()
{
return null;
}
 
public javax.servlet.http.HttpSession getSession()
{
return null;
}
 
public javax.servlet.http.HttpSession getSession(boolean create)
{
return null;
}
 
public java.security.Principal getUserPrincipal()
{
return null;
}
 
public boolean isRequestedSessionIdFromCookie()
{
return false;
}
 
public boolean isRequestedSessionIdFromUrl()
{
return false;
}
 
public boolean isRequestedSessionIdFromURL()
{
return false;
}
 
public boolean isRequestedSessionIdValid()
{
return false;
}
 
public boolean isUserInRole(String role)
{
return false;
}
}