# HG changeset patch # User oc # Date 1403865646 -32400 # Node ID 2f6237fea67e965aac354db59e198a149a86b2fd # Parent 22676ca0dd9746fd24fa7b27214bda153fbc9b7f change createTreeManagers timing. diff -r 22676ca0dd97 -r 2f6237fea67e src/main/java/jp/ac/u_ryukyu/treevnc/MyRfbProto.java --- a/src/main/java/jp/ac/u_ryukyu/treevnc/MyRfbProto.java Fri Jun 27 19:21:18 2014 +0900 +++ b/src/main/java/jp/ac/u_ryukyu/treevnc/MyRfbProto.java Fri Jun 27 19:40:46 2014 +0900 @@ -57,7 +57,6 @@ ViewerInterface viewer; private short id; // my tree node id ( = 0 in root ) private boolean leader; - public TreeManagement treeManager; private TreeVncCommandChannelListener acceptThread; private boolean firstTime = true; private TreeRootFinderListener getCast; @@ -65,7 +64,8 @@ private boolean hasViewer = false; private boolean reconnecting; private short reconnectingId; // Change Server Request to id's node VNC server - private HashMap interfaces = new HashMap(); + private HashMap interfaces = new HashMap(); + private String vncInterface; public MyRfbProto() { @@ -362,6 +362,7 @@ Socket vncSocket = viewer.getVNCSocket(); NetworkInterface ni = getInterface(vncSocket); if (ni!=null) { + vncInterface = ni.getName(); System.out.println("VNCNetworkInterface :" + ni.getName()); } sendDesktopSizeChange(reconnectingId); @@ -624,12 +625,12 @@ return leader; } - public void setTreeManager(TreeManagement clients) { - treeManager = clients; + public void setTreeManager(String intf, TreeManagement clients) { + interfaces.put(intf, clients); } - public TreeManagement getTreeManager() { - return treeManager; + public TreeManagement getTreeManager(String intf) { + return interfaces.get(intf); } /** @@ -664,9 +665,7 @@ */ public void createConnectionAndStart(ViewerInterface v) { selectPort(ConnectionParams.DEFAULT_VNC_ROOT); - if (treeManager!=null) { - treeManager.getList().getFirst().setPort(getAcceptPort()); - } + createTreeManagers(); startTreeVncCommandListener(); if(isTreeManager() && firstTime) { getCast = new TreeRootFinderListener(v); @@ -676,7 +675,14 @@ } } - public void startTreeVncCommandListener() { + private void createTreeManagers() { + setTreeManager(new TreeManagement(hostName, ConnectionParams.DEFAULT_VNC_ROOT, showTree)); + if (treeManager!=null) { + treeManager.getList().getFirst().setPort(getAcceptPort()); + } + } + + public void startTreeVncCommandListener() { acceptThread = new TreeVncCommandChannelListener(this, getAcceptPort()); Thread thread = new Thread(acceptThread, "TreeVNC-accept"); thread.start(); @@ -722,7 +728,7 @@ } private void addNetworkInterface(NetworkInterface ni, TreeManagement treeManager) { - interfaces.put(ni, treeManager); + interfaces.put(ni.getName(), treeManager); } diff -r 22676ca0dd97 -r 2f6237fea67e src/viewer_swing/java/com/glavsoft/viewer/Viewer.java --- a/src/viewer_swing/java/com/glavsoft/viewer/Viewer.java Fri Jun 27 19:21:18 2014 +0900 +++ b/src/viewer_swing/java/com/glavsoft/viewer/Viewer.java Fri Jun 27 19:40:46 2014 +0900 @@ -382,7 +382,6 @@ MyRfbProtoProxy rfb = new MyRfbProtoProxy(); myRfb = rfb; rfb.setShowTree(showTree); - rfb.setTreeManager(new TreeManagement(hostname, ConnectionParams.DEFAULT_VNC_ROOT, rfb.showTreeNode)); rfb.setViewer(this); rfb.setCuiVersion(false); rfb.setHasViewer(true); @@ -396,7 +395,6 @@ } public void initRoot(MyRfbProto myRfbProto, String hostName) { - myRfbProto.setTreeManager(new TreeManagement(hostName, ConnectionParams.DEFAULT_VNC_ROOT, showTree)); setIsTreeVNC(true); connectionParams.setConnectionParam(hostName, vncport); isApplet = true;