Set BOB source/target to JDK 5 (AKA 1.5)

Minor bugfixes/code cleanup on BOB
Add/Cleanup some documentation to streaming lib javadocs
This commit is contained in:
sponge
2008-10-11 07:45:30 +00:00
parent 855293d673
commit f3f7537ec6
14 changed files with 103 additions and 86 deletions

View File

@ -40,8 +40,8 @@ javac.classpath=\
# Space-separated list of extra javac options
javac.compilerargs=
javac.deprecation=false
javac.source=1.4
javac.target=1.4
javac.source=1.5
javac.target=1.5
javac.test.classpath=\
${javac.classpath}:\
${build.classes.dir}:\

View File

@ -58,16 +58,15 @@ public class I2Plistener implements Runnable {
this.info = info;
this._log = _log;
this.socketManager = S;
serverSocket = socketManager.getServerSocket();
serverSocket = this.socketManager.getServerSocket();
tgwatch = 1;
}
/**
* Simply listen on I2P port, and thread connections
*
* @throws RuntimeException
*/
public void run() throws RuntimeException {
public void run() {
boolean g = false;
I2PSocket sessSocket = null;
@ -105,7 +104,7 @@ public class I2Plistener implements Runnable {
}
} catch(I2PException e) {
// System.out.println("Exception " + e);
// System.out.println("Exception " + e);
}
}
@ -123,7 +122,8 @@ public class I2Plistener implements Runnable {
// nop
}
}
// System.out.println("STOP Thread count " + Thread.activeCount());
// System.out.println("STOP Thread count " + Thread.activeCount());
// need to kill off the socket manager too.
I2PSession session = socketManager.getSession();
if(session != null) {
@ -134,7 +134,5 @@ public class I2Plistener implements Runnable {
}
// System.out.println("destroySession Thread count " + Thread.activeCount());
}
}
}

View File

@ -36,7 +36,7 @@ import net.i2p.client.streaming.I2PSocket;
public class I2PtoTCP implements Runnable {
private I2PSocket I2P;
private nickname info, database;
private nickname info, database;
private Socket sock;
/**

View File

@ -21,7 +21,6 @@
*
* ...for any additional details and liscense questions.
*/
package net.i2p.BOB;
import net.i2p.client.streaming.RetransmissionTimer;
@ -33,7 +32,6 @@ import net.i2p.util.SimpleTimer;
* @author sponge
*
*/
public class Main {
/**

View File

@ -41,7 +41,7 @@ import net.i2p.util.Log;
*/
public class TCPlistener implements Runnable {
private nickname info, database;
private nickname info, database;
private Log _log;
private int tgwatch;
public I2PSocketManager socketManager;
@ -65,11 +65,12 @@ public class TCPlistener implements Runnable {
/**
* Simply listen on TCP port, and thread connections
* @throws java.lang.RuntimeException
*
*/
public void run() throws RuntimeException {
public void run() {
boolean g = false;
database.getReadLock();
boolean spin = true;
database.getReadLock();
info.getReadLock();
if(info.exists("OUTPORT")) {
tgwatch = 2;
@ -79,15 +80,14 @@ public class TCPlistener implements Runnable {
ServerSocket listener = new ServerSocket(Integer.parseInt(info.get("INPORT").toString()), backlog, InetAddress.getByName(info.get("INHOST").toString()));
Socket server = new Socket();
listener.setSoTimeout(1000);
info.releaseReadLock();
database.releaseReadLock();
boolean spin = true;
while(spin) {
database.getReadLock();
info.getReadLock();
spin = info.get("RUNNING").equals(Boolean.TRUE);
info.releaseReadLock();
database.releaseReadLock();
while(spin) {
database.getReadLock();
info.getReadLock();
spin = info.get("RUNNING").equals(Boolean.TRUE);
info.releaseReadLock();
database.releaseReadLock();
// System.out.println("Thread count " + Thread.activeCount());
try {
server = listener.accept();
@ -105,7 +105,20 @@ public class TCPlistener implements Runnable {
}
listener.close();
} catch(IOException ioe) {
// throw new RuntimeException(ioe);
// Fatal failure, cause a stop event
database.getReadLock();
info.getReadLock();
spin = info.get("RUNNING").equals(Boolean.TRUE);
info.releaseReadLock();
database.releaseReadLock();
if(spin) {
database.getWriteLock();
info.getWriteLock();
info.add("STOPPING", new Boolean(true));
info.add("RUNNING", new Boolean(false));
info.releaseWriteLock();
database.releaseWriteLock();
}
}
//System.out.println("STOP!");

View File

@ -45,7 +45,7 @@ import net.i2p.i2ptunnel.I2PTunnel;
public class TCPtoI2P implements Runnable {
private I2PSocket I2P;
private nickname info, database;
private nickname info, database;
private Socket sock;
private I2PSocketManager socketManager;

View File

@ -21,7 +21,6 @@
*
* ...for any additional details and liscense questions.
*/
package net.i2p.BOB;
import java.io.DataInputStream;
@ -34,7 +33,6 @@ import net.i2p.client.I2PSessionListener;
import net.i2p.data.Destination;
import net.i2p.util.Log;
/**
* UDP IO on I2P
*
@ -56,23 +54,25 @@ public class UDPIOthread implements I2PSessionListener, Runnable {
private Destination _peerDestination;
private boolean up;
/**
* Constructor
* @param info
* @param _log
* @param socket
* @param _session
*/ UDPIOthread(nickname info, Log _log, Socket socket, I2PSession _session) {
/**
* Constructor
* @param info
* @param _log
* @param socket
* @param _session
*/
UDPIOthread(nickname info, Log _log, Socket socket, I2PSession _session) {
this.info = info;
this._log = _log;
this.socket = socket;
this._session = _session;
}
/**
*
*/
public void run() {
/**
*
*/
public void run() {
byte data[] = new byte[1024];
up = true;
try {
@ -103,12 +103,13 @@ public class UDPIOthread implements I2PSessionListener, Runnable {
}
}
}
/**
*
* @param session
* @param msgId
* @param size
*/
/**
*
* @param session
* @param msgId
* @param size
*/
public void messageAvailable(I2PSession session, int msgId, long size) {
// _log.debug("Message available: id = " + msgId + " size = " + size);
try {
@ -123,22 +124,21 @@ public class UDPIOthread implements I2PSessionListener, Runnable {
}
// Great, can these be used to kill ourselves.
/** required by {@link I2PSessionListener I2PSessionListener} to notify of disconnect */
public void disconnected(I2PSession session) {
_log.debug("Disconnected");
// up = false;
// up = false;
}
/** required by {@link I2PSessionListener I2PSessionListener} to notify of error */
public void errorOccurred(I2PSession session, String message, Throwable error) {
_log.debug("Error occurred: " + message, error);
// up = false;
// up = false;
}
/** required by {@link I2PSessionListener I2PSessionListener} to notify of abuse */
public void reportAbuse(I2PSession session, int severity) {
_log.debug("Abuse reported of severity " + severity);
// up = false;
// up = false;
}
}

View File

@ -70,6 +70,9 @@ public class doCMDS implements Runnable {
private static final String P_RUNNING = "RUNNING";
private static final String P_STARTING = "STARTING";
private static final String P_STOPPING = "STOPPING";
// private static final String P_INSTATE = "INSTATE";
// private static final String P_OUTSTATE = "OUTSTATE";
/* command strings */
private static final String C_help = "help";
private static final String C_clear = "clear";
@ -490,6 +493,8 @@ public class doCMDS implements Runnable {
wlock();
database.add(Arg, nickinfo);
nickinfo.add(P_NICKNAME, Arg);
// nickinfo.add(P_INSTATE,new Boolean(false));
// nickinfo.add(P_OUTSTATE,new Boolean(false));
nickinfo.add(P_STARTING, Boolean.FALSE);
nickinfo.add(P_RUNNING, Boolean.FALSE);
nickinfo.add(P_STOPPING, Boolean.FALSE);

View File

@ -32,8 +32,9 @@ public class nickname {
private static final int maxWritersWaiting = 2;
private volatile Object[][] data;
private volatile int index, writersWaiting, readers;
private volatile int index, writersWaiting, readers;
private volatile boolean writingInProgress;
/**
* make initial NULL object
*
@ -110,7 +111,7 @@ public class nickname {
}
olddata = new Object[index + 2][2];
// copy to olddata, skipping 'k'
for(i = 0 , l = 0; l < index; i++, l++) {
for(i = 0 , l = 0; l < index; i++, l++) {
if(i == k) {
l++;
didsomething++;

View File

@ -113,7 +113,7 @@ public class ConnectionManager {
public void setAllowIncomingConnections(boolean allow) {
_connectionHandler.setActive(allow);
}
/** should we acceot connections, or just reject everyone? */
/** @return if we should accept connections */
public boolean getAllowIncomingConnections() {
return _connectionHandler.getActive();
}

View File

@ -181,6 +181,7 @@ public class I2PSocketManagerFull implements I2PSocketManager {
* @param peer Destination to connect to
* @param options I2P socket options to be used for connecting
*
* @return I2PSocket if successful
* @throws NoRouteToHostException if the peer is not found or not reachable
* @throws I2PException if there is some other I2P-related problem
*/
@ -215,6 +216,7 @@ public class I2PSocketManagerFull implements I2PSocketManager {
*
* @param peer Destination to connect to
*
* @return I2PSocket if successful
* @throws NoRouteToHostException if the peer is not found or not reachable
* @throws I2PException if there is some other I2P-related problem
*/