Skip to content

Commit 5a9fc1c

Browse files
committed
Add server class to display benchmark results
WIP Fixes #1
1 parent 154d567 commit 5a9fc1c

18 files changed

+15201
-0
lines changed

pom.xml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@
5555

5656
<rabbitmq.version>3.6.5</rabbitmq.version>
5757
<commons-cli.version>1.1</commons-cli.version>
58+
<jetty.version>8.2.0.v20160908</jetty.version>
5859
<junit.version>4.12</junit.version>
5960

6061
</properties>
@@ -141,6 +142,12 @@
141142
<artifactId>commons-cli</artifactId>
142143
<version>${commons-cli.version}</version>
143144
</dependency>
145+
<dependency>
146+
<groupId>org.eclipse.jetty</groupId>
147+
<artifactId>jetty-servlet</artifactId>
148+
<version>${jetty.version}</version>
149+
</dependency>
150+
144151
<dependency>
145152
<groupId>junit</groupId>
146153
<artifactId>junit</artifactId>
Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
package com.rabbitmq.examples;
2+
3+
import org.eclipse.jetty.server.Server;
4+
import org.eclipse.jetty.servlet.DefaultServlet;
5+
import org.eclipse.jetty.servlet.ServletContextHandler;
6+
import org.eclipse.jetty.servlet.ServletHandler;
7+
import org.eclipse.jetty.servlet.ServletHolder;
8+
import org.eclipse.jetty.util.resource.Resource;
9+
10+
import javax.servlet.ServletException;
11+
import javax.servlet.http.HttpServlet;
12+
import javax.servlet.http.HttpServletRequest;
13+
import javax.servlet.http.HttpServletResponse;
14+
import java.awt.*;
15+
import java.io.BufferedReader;
16+
import java.io.File;
17+
import java.io.FileReader;
18+
import java.io.IOException;
19+
import java.net.URI;
20+
21+
/**
22+
*
23+
*/
24+
public class BenchmarkResults {
25+
26+
public static void main(String[] args) throws Exception {
27+
BufferedReader reader = null;
28+
StringBuilder builder = new StringBuilder();
29+
try {
30+
File resultsFile = new File(args[0]);
31+
reader = new BufferedReader(new FileReader(resultsFile));
32+
String line;
33+
while ((line = reader.readLine()) != null) {
34+
builder.append(line);
35+
}
36+
} finally {
37+
if(reader != null) {
38+
reader.close();
39+
}
40+
}
41+
42+
System.setProperty("org.eclipse.jetty.LEVEL", "WARN");
43+
Server server = new Server(8080);
44+
45+
ServletHandler handler = new ServletHandler();
46+
server.setHandler(handler);
47+
48+
ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS);
49+
context.setBaseResource(Resource.newClassPathResource("/static"));
50+
context.setContextPath("/");
51+
server.setHandler(context);
52+
53+
context.addServlet(new ServletHolder(new JsonServlet(builder.toString())), "/data");
54+
55+
ServletHolder holderPwd = new ServletHolder("default", DefaultServlet.class);
56+
holderPwd.setInitParameter("dirAllowed", "true");
57+
context.addServlet(holderPwd, "/");
58+
59+
server.start();
60+
61+
Desktop.getDesktop().browse(new URI("http://localhost:8080/examples/sample.html"));
62+
}
63+
64+
public static class JsonServlet extends HttpServlet {
65+
66+
private final String content;
67+
68+
public JsonServlet(String content) {
69+
this.content = content;
70+
}
71+
72+
@Override
73+
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
74+
resp.getWriter().append(content);
75+
resp.getWriter().flush();
76+
}
77+
}
78+
}

0 commit comments

Comments
 (0)