# HG changeset patch # User kono # Date 1222525837 -32400 # Node ID c410eda661e828ba82aab81e0ca6a31995cc94d2 # Parent c3969dd625b2e6ad1524795bd3cde3cb1e2856fd *** empty log message *** diff -r c3969dd625b2 -r c410eda661e8 rep/channel/NetworkSimulator.java --- a/rep/channel/NetworkSimulator.java Sat Sep 27 22:55:13 2008 +0900 +++ b/rep/channel/NetworkSimulator.java Sat Sep 27 23:30:37 2008 +0900 @@ -1,5 +1,6 @@ package rep.channel; +import java.net.InetSocketAddress; import java.net.SocketAddress; import java.util.HashMap; import java.util.LinkedList; @@ -36,7 +37,7 @@ } /* */ - synchronized public void listen(SocketAddress ip, ServerChannelSimulator
scs) { + synchronized public void listen(InetSocketAddress ip, ServerChannelSimulator
scs) { serverList.add(new ServerData
(ip, scs)); logger.writeLog("listen", 1); printAllState(); @@ -46,7 +47,8 @@ logger.writeLog("connecting..", 1); for (ServerData
sd0: serverList){ // ANY address (0.0.0.0/0.0.0.0) should be considered. - if (!sd0.IP.equals(ip)) continue; + if (sd0.IP.getAddress().isAnyLocalAddress()) { + } else if (!sd0.IP.equals(ip)) continue; ChannelSimulator
CHserver = new ChannelSimulator
(); CHserver.setOtherEnd(CHclient); @@ -64,23 +66,21 @@ } /** for DEBUG methods. */ - synchronized void printAllState(){ - synchronized (logger){ - logger.writeLog("NetworkSimulator State:"); + void printAllState(){ + String log = "NetworkSimulator State:"; for (ServerData
sd: serverList){
- logger.writeLog("\tSessionManager(ip="+sd.IP.toString()+"): ");
- //writeLog("\tacceptWaitingList="+sd.acceptWaitingList.size());
- printChannelList(sd.connectedListC);
- //writeLog("\testablishedList="+sd.establishedList.size());
+ log += "\tSessionManager(ip="+sd.IP.toString()+"): ";
+ log += channelList(sd.connectedListC);
}
- }
+ logger.writeLog(log);
}
- synchronized void printChannelList(LinkedList ch: list){
tmp += ch.toString()+" ";
}
- logger.writeLog("\t"+tmp);
+ return "\t"+tmp;
}
@@ -98,13 +98,13 @@
class ServerData {
//int virtualIP;
- SocketAddress IP;
+ InetSocketAddress IP;
//SelectorSimulator selector;
ServerChannelSimulator scs;
LinkedList _scs){
+ ServerData(InetSocketAddress ip, ServerChannelSimulator _scs){
IP = ip;
//selector = _selector;
scs = _scs;
diff -r c3969dd625b2 -r c410eda661e8 rep/channel/REPServerSocket.java
--- a/rep/channel/REPServerSocket.java Sat Sep 27 22:55:13 2008 +0900
+++ b/rep/channel/REPServerSocket.java Sat Sep 27 23:30:37 2008 +0900
@@ -2,6 +2,7 @@
import java.io.IOException;
import java.net.InetAddress;
+import java.net.InetSocketAddress;
import java.net.ServerSocket;
import java.net.SocketAddress;
import java.nio.channels.ServerSocketChannel;
@@ -16,7 +17,7 @@
}
public void bind(SocketAddress ip){
- scs.bind(ip);
+ scs.bind((InetSocketAddress)ip);
}
@Override
diff -r c3969dd625b2 -r c410eda661e8 rep/channel/SelectionKeySimulator.java
--- a/rep/channel/SelectionKeySimulator.java Sat Sep 27 22:55:13 2008 +0900
+++ b/rep/channel/SelectionKeySimulator.java Sat Sep 27 23:30:37 2008 +0900
@@ -21,6 +21,7 @@
channel = k.channel();
interestOpt = k.interestOps();
selector = k.selector();
+ attach(k.attachment());
}
diff -r c3969dd625b2 -r c410eda661e8 rep/channel/ServerChannelSimulator.java
--- a/rep/channel/ServerChannelSimulator.java Sat Sep 27 22:55:13 2008 +0900
+++ b/rep/channel/ServerChannelSimulator.java Sat Sep 27 23:30:37 2008 +0900
@@ -1,6 +1,7 @@
package rep.channel;
import java.io.IOException;
+import java.net.InetSocketAddress;
import java.net.ServerSocket;
import java.net.SocketAddress;
import java.nio.channels.ClosedChannelException;
@@ -15,7 +16,7 @@
public class ServerChannelSimulator extends REPServerSocketChannel {
protected NetworkSimulator ns;
//public REPServerSocket