[or-cvs] fix debugging and listenforevents API a little
Nick Mathewson
nickm at seul.org
Wed Jul 20 22:48:37 UTC 2005
Update of /home/or/cvsroot/control/java/net/freehaven/tor/control
In directory moria:/tmp/cvs-serv11597/java/net/freehaven/tor/control
Modified Files:
TorControlCommands.java TorControlConnection1.java
Log Message:
fix debugging and listenforevents API a little
Index: TorControlCommands.java
===================================================================
RCS file: /home/or/cvsroot/control/java/net/freehaven/tor/control/TorControlCommands.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- TorControlCommands.java 24 Jun 2005 18:03:27 -0000 1.2
+++ TorControlCommands.java 20 Jul 2005 22:48:34 -0000 1.3
@@ -65,6 +65,21 @@
public static final short EVENT_MSG_WARN = 0x000A;
public static final short EVENT_MSG_ERROR = 0x000B;
+ public static final String[] EVENT_NAMES = {
+ "(0)",
+ "CIRC",
+ "STREAM",
+ "ORCONN",
+ "BW",
+ "OLDLOG",
+ "NEWDESC",
+ "DEBUG",
+ "INFO",
+ "NOTICE",
+ "WARN",
+ "ERR",
+ };
+
public static final byte CIRC_STATUS_LAUNCHED = 0x01;
public static final byte CIRC_STATUS_BUILT = 0x02;
public static final byte CIRC_STATUS_EXTENDED = 0x03;
Index: TorControlConnection1.java
===================================================================
RCS file: /home/or/cvsroot/control/java/net/freehaven/tor/control/TorControlConnection1.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- TorControlConnection1.java 20 Jul 2005 22:30:58 -0000 1.5
+++ TorControlConnection1.java 20 Jul 2005 22:48:34 -0000 1.6
@@ -70,10 +70,12 @@
else
line += "\r\n";
if (debugOutput != null)
- debugOutput.print("<< "+line);
+ debugOutput.print(">> "+line);
output.write(line);
}
output.write(".\r\n");
+ if (debugOutput != null)
+ debugOutput.print(">> .\n");
}
protected static final String quote(String s) {
@@ -100,7 +102,7 @@
do {
String line = input.readLine();
if (debugOutput != null)
- debugOutput.print(">> "+line);
+ debugOutput.println("<< "+line);
if (line.length() < 4)
throw new TorControlSyntaxError("Line (\""+line+"\") too short");
String status = line.substring(0,3);
@@ -112,7 +114,7 @@
while (true) {
line = input.readLine();
if (debugOutput != null)
- debugOutput.print(">> "+line);
+ debugOutput.print("<< "+line);
if (line.equals("."))
break;
else if (line.startsWith("."))
@@ -148,7 +150,7 @@
checkThread();
Waiter w = new Waiter();
if (debugOutput != null)
- debugOutput.println("<< "+s);
+ debugOutput.print(">> "+s);
synchronized (waiters) {
output.write(s);
output.flush();
@@ -231,10 +233,10 @@
if (w instanceof java.io.PrintWriter)
debugOutput = (java.io.PrintWriter) w;
else
- debugOutput = new java.io.PrintWriter(w);
+ debugOutput = new java.io.PrintWriter(w, true);
}
public void setDebugging(java.io.PrintStream s) {
- debugOutput = new java.io.PrintWriter(s);
+ debugOutput = new java.io.PrintWriter(s, true);
}
public List getConf(Collection keys) throws IOException {
@@ -258,8 +260,13 @@
public void setEvents(List events) throws IOException {
StringBuffer sb = new StringBuffer("SETEVENTS");
for (Iterator it = events.iterator(); it.hasNext(); ) {
- String event = (String) it.next();
- sb.append(" ").append(event);
+ Object event = it.next();
+ if (event instanceof String) {
+ sb.append(" ").append((String)event);
+ } else {
+ int i = ((Number) event).intValue();
+ sb.append(" ").append(EVENT_NAMES[i]);
+ }
}
sb.append("\r\n");
sendAndWaitForResponse(sb.toString(), null);
More information about the tor-commits
mailing list