[tor-commits] [onionoo/master] Make Onionoo out/ directory configurable.
karsten at torproject.org
karsten at torproject.org
Mon Apr 2 16:18:47 UTC 2012
commit c51b324e13e11ac7451ea72c816c0332f59bd445
Author: Karsten Loesing <karsten.loesing at gmx.net>
Date: Mon Apr 2 17:25:29 2012 +0200
Make Onionoo out/ directory configurable.
---
.gitignore | 1 +
build.xml | 4 +++
etc/web.xml | 29 --------------------
etc/web.xml.template | 33 +++++++++++++++++++++++
src/org/torproject/onionoo/ResourceServlet.java | 13 ++++++---
5 files changed, 47 insertions(+), 33 deletions(-)
diff --git a/.gitignore b/.gitignore
index 4ee5771..2848bda 100755
--- a/.gitignore
+++ b/.gitignore
@@ -5,6 +5,7 @@ lib/
classes/
out/
onionoo.war
+etc/web.xml
etc/context.xml
GeoIP.dat
GeoIPASNum.dat
diff --git a/build.xml b/build.xml
index 652a49b..878c07f 100644
--- a/build.xml
+++ b/build.xml
@@ -7,6 +7,9 @@
<property name="contextxmltemplate"
value="${config}/context.xml.template"/>
<property name="contextxml" value="${config}/context.xml"/>
+ <property name="webxmltemplate"
+ value="${config}/web.xml.template"/>
+ <property name="webxml" value="${config}/web.xml"/>
<property name="warfile" value="onionoo.war"/>
<path id="classpath">
<pathelement path="${classes}"/>
@@ -18,6 +21,7 @@
</path>
<target name="init">
<copy file="${contextxmltemplate}" tofile="${contextxml}"/>
+ <copy file="${webxmltemplate}" tofile="${webxml}"/>
<mkdir dir="${classes}"/>
</target>
<target name="compile"
diff --git a/etc/web.xml b/etc/web.xml
deleted file mode 100644
index 7855706..0000000
--- a/etc/web.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<web-app version="2.4"
- xmlns="http://java.sun.com/xml/ns/j2ee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
- http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" >
-
- <servlet>
- <servlet-name>Resource</servlet-name>
- <servlet-class>
- org.torproject.onionoo.ResourceServlet
- </servlet-class>
- </servlet>
- <servlet-mapping>
- <servlet-name>Resource</servlet-name>
- <url-pattern>/summary/*</url-pattern>
- </servlet-mapping>
- <servlet-mapping>
- <servlet-name>Resource</servlet-name>
- <url-pattern>/details/*</url-pattern>
- </servlet-mapping>
- <servlet-mapping>
- <servlet-name>Resource</servlet-name>
- <url-pattern>/bandwidth/*</url-pattern>
- </servlet-mapping>
-
-</web-app>
-
diff --git a/etc/web.xml.template b/etc/web.xml.template
new file mode 100644
index 0000000..4cba2b5
--- /dev/null
+++ b/etc/web.xml.template
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<web-app version="2.4"
+ xmlns="http://java.sun.com/xml/ns/j2ee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
+ http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" >
+
+ <servlet>
+ <servlet-name>Resource</servlet-name>
+ <servlet-class>
+ org.torproject.onionoo.ResourceServlet
+ </servlet-class>
+ <init-param>
+ <param-name>outDir</param-name>
+ <param-value>/srv/onionoo/out/</param-value>
+ </init-param>
+ </servlet>
+ <servlet-mapping>
+ <servlet-name>Resource</servlet-name>
+ <url-pattern>/summary/*</url-pattern>
+ </servlet-mapping>
+ <servlet-mapping>
+ <servlet-name>Resource</servlet-name>
+ <url-pattern>/details/*</url-pattern>
+ </servlet-mapping>
+ <servlet-mapping>
+ <servlet-name>Resource</servlet-name>
+ <url-pattern>/bandwidth/*</url-pattern>
+ </servlet-mapping>
+
+</web-app>
+
diff --git a/src/org/torproject/onionoo/ResourceServlet.java b/src/org/torproject/onionoo/ResourceServlet.java
index 037657e..55a96ff 100644
--- a/src/org/torproject/onionoo/ResourceServlet.java
+++ b/src/org/torproject/onionoo/ResourceServlet.java
@@ -15,6 +15,7 @@ import java.util.Map;
import java.util.Set;
import java.util.regex.Pattern;
+import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
@@ -28,7 +29,11 @@ public class ResourceServlet extends HttpServlet {
private static final long serialVersionUID = 7236658979947465319L;
- public void init() {
+ private String outDirString;
+
+ public void init(ServletConfig config) throws ServletException {
+ super.init(config);
+ this.outDirString = config.getInitParameter("outDir");
this.readSummaryFile();
}
@@ -41,7 +46,7 @@ public class ResourceServlet extends HttpServlet {
relayFingerprintSummaryLines = new HashMap<String, String>(),
bridgeFingerprintSummaryLines = new HashMap<String, String>();
private void readSummaryFile() {
- File summaryFile = new File("/srv/onionoo/out/summary.json");
+ File summaryFile = new File(this.outDirString + "summary.json");
if (!summaryFile.exists()) {
readSummaryFile = false;
return;
@@ -427,7 +432,7 @@ public class ResourceServlet extends HttpServlet {
return "";
}
fingerprint = fingerprint.substring(0, 40);
- File detailsFile = new File("/srv/onionoo/out/details/"
+ File detailsFile = new File(this.outDirString + "details/"
+ fingerprint);
StringBuilder sb = new StringBuilder();
String detailsLines = null;
@@ -472,7 +477,7 @@ public class ResourceServlet extends HttpServlet {
return "";
}
fingerprint = fingerprint.substring(0, 40);
- File detailsFile = new File("/srv/onionoo/out/bandwidth/"
+ File detailsFile = new File(this.outDirString + "bandwidth/"
+ fingerprint);
StringBuilder sb = new StringBuilder();
String bandwidthLines = null;
More information about the tor-commits
mailing list