# 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> list){ + + String channelList(LinkedList> list){ String tmp = ""; for (ChannelSimulator

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> connectedListS; LinkedList> connectedListC; - ServerData(SocketAddress ip, ServerChannelSimulator

_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> socket; - protected SocketAddress IP; + protected InetSocketAddress IP; protected Queue> acceptQ; protected Object lock; protected boolean isBlocking; @@ -30,7 +31,7 @@ acceptQ = new LinkedList>(); } - public void bind(SocketAddress ip){ + public void bind(InetSocketAddress ip){ IP = ip; } diff -r c3969dd625b2 -r c410eda661e8 test/sematest/TestSessionManager.java --- a/test/sematest/TestSessionManager.java Sat Sep 27 22:55:13 2008 +0900 +++ b/test/sematest/TestSessionManager.java Sat Sep 27 23:30:37 2008 +0900 @@ -94,7 +94,7 @@ } public static void main(String[] args){ - REPServerSocketChannel.isSimulation = false; + REPServerSocketChannel.isSimulation = true; TestSessionManager test = new TestSessionManager(1, 0, 2); logger.setLogLevel(5); test.startTest();