forked from I2P_Developers/i2p.i2p
Cleanups: Collections.singleton(), COWAS - includes ticket #388
This commit is contained in:
@@ -43,13 +43,13 @@ import java.io.OutputStream;
|
||||
import java.net.InetAddress;
|
||||
import java.net.UnknownHostException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashSet;
|
||||
import java.util.Iterator;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
import java.util.Properties;
|
||||
import java.util.Set;
|
||||
import java.util.StringTokenizer;
|
||||
import java.util.concurrent.CopyOnWriteArraySet;
|
||||
|
||||
import net.i2p.I2PAppContext;
|
||||
import net.i2p.I2PException;
|
||||
@@ -99,7 +99,7 @@ public class I2PTunnel implements Logging, EventDispatcher {
|
||||
private final List tasks = new ArrayList();
|
||||
private int next_task_id = 1;
|
||||
|
||||
private final Set listeners = new HashSet();
|
||||
private final Set listeners = new CopyOnWriteArraySet();
|
||||
|
||||
public static void main(String[] args) throws IOException {
|
||||
new I2PTunnel(args);
|
||||
@@ -1626,16 +1626,12 @@ public class I2PTunnel implements Logging, EventDispatcher {
|
||||
|
||||
public void addConnectionEventListener(ConnectionEventListener lsnr) {
|
||||
if (lsnr == null) return;
|
||||
synchronized (listeners) {
|
||||
listeners.add(lsnr);
|
||||
}
|
||||
listeners.add(lsnr);
|
||||
}
|
||||
|
||||
public void removeConnectionEventListener(ConnectionEventListener lsnr) {
|
||||
if (lsnr == null) return;
|
||||
synchronized (listeners) {
|
||||
listeners.remove(lsnr);
|
||||
}
|
||||
listeners.remove(lsnr);
|
||||
}
|
||||
|
||||
private String getPrefix() { return "[" + _tunnelId + "]: "; }
|
||||
@@ -1649,12 +1645,10 @@ public class I2PTunnel implements Logging, EventDispatcher {
|
||||
*/
|
||||
void routerDisconnected() {
|
||||
_log.error(getPrefix() + "Router disconnected - firing notification events");
|
||||
synchronized (listeners) {
|
||||
for (Iterator iter = listeners.iterator(); iter.hasNext();) {
|
||||
ConnectionEventListener lsnr = (ConnectionEventListener) iter.next();
|
||||
if (lsnr != null) lsnr.routerDisconnected();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -310,7 +310,7 @@ public class TunnelControllerGroup {
|
||||
synchronized (_sessions) {
|
||||
Set<TunnelController> owners = _sessions.get(session);
|
||||
if (owners == null) {
|
||||
owners = new HashSet(1);
|
||||
owners = new HashSet(2);
|
||||
_sessions.put(session, owners);
|
||||
}
|
||||
owners.add(controller);
|
||||
|
||||
@@ -2,13 +2,13 @@ package net.i2p.client.streaming;
|
||||
|
||||
import java.util.Iterator;
|
||||
import java.util.Set;
|
||||
import java.util.concurrent.CopyOnWriteArraySet;
|
||||
|
||||
import net.i2p.I2PAppContext;
|
||||
import net.i2p.client.I2PSession;
|
||||
import net.i2p.client.I2PSessionException;
|
||||
import net.i2p.client.I2PSessionListener;
|
||||
import net.i2p.util.Log;
|
||||
import net.i2p.util.ConcurrentHashSet;
|
||||
|
||||
/**
|
||||
* Receive raw information from the I2PSession and turn it into
|
||||
@@ -24,7 +24,7 @@ class MessageHandler implements I2PSessionListener {
|
||||
public MessageHandler(I2PAppContext ctx, ConnectionManager mgr) {
|
||||
_manager = mgr;
|
||||
_context = ctx;
|
||||
_listeners = new ConcurrentHashSet(1);
|
||||
_listeners = new CopyOnWriteArraySet();
|
||||
_log = ctx.logManager().getLog(MessageHandler.class);
|
||||
_context.statManager().createRateStat("stream.packetReceiveFailure", "When do we fail to decrypt or otherwise receive a packet sent to us?", "Stream", new long[] { 60*60*1000, 24*60*60*1000 });
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user