Mercurial > hg > Applications > TightVNC_orginal
comparison src/main/java/jp/ac/u_ryukyu/treevnc/server/AcceptClient.java @ 13:406fa09ae645
modify VncProxyService.java
author | one |
---|---|
date | Wed, 22 Aug 2012 20:05:26 +0900 |
parents | 12c3a73be47f |
children | 18fad65bc447 |
comparison
equal
deleted
inserted
replaced
12:12c3a73be47f | 13:406fa09ae645 |
---|---|
5 import java.io.*; | 5 import java.io.*; |
6 import java.net.*; | 6 import java.net.*; |
7 import java.util.*; | 7 import java.util.*; |
8 | 8 |
9 public class AcceptClient { | 9 public class AcceptClient { |
10 private int counter = 0, parentnum = 0 /* 落ちたときの親の番号をカウントするためのもの */; | 10 private int counter = 0, parentnum = 0; |
11 private LinkedList<String> ls = new LinkedList<String>(); | 11 private LinkedList<String> ls = new LinkedList<String>(); |
12 private boolean addrRegistor = true; | 12 private boolean addrRegistor = true; |
13 private int passNumber=0,numberZone; | 13 private int passNumber=0,numberZone; |
14 boolean runflag = false; | 14 boolean runflag = false; |
15 //private String name; | 15 //private String name; |
16 private int passCheck = 0; | 16 private int passCheck = 0; |
17 private final int treebranch = 2; // treeの子ノードの数 | 17 private final int treebranch = 2; |
18 private String newparent,request,myAddress; | 18 private String newparent,request,myAddress; |
19 private String leaderflag = "0", sendleaderflag = "0"; | 19 private String leaderflag = "0", sendleaderflag = "0"; |
20 private final int intv_time = 100; | 20 private final int intv_time = 100; |
21 | 21 |
22 | 22 |
33 */ | 33 */ |
34 | 34 |
35 // public synchronized void transferParentAddrerss(BufferedReader | 35 // public synchronized void transferParentAddrerss(BufferedReader |
36 // is,PrintStream os) { | 36 // is,PrintStream os) { |
37 public void transferParentAddrerss(BufferedReader is,PrintStream os) { | 37 public void transferParentAddrerss(BufferedReader is,PrintStream os) { |
38 // クライアントからのメッセージを待ち、受け取ったメッセージをそのまま返す | |
39 try { | 38 try { |
40 while (true) { | 39 while (true) { |
41 String line = is.readLine(); | 40 String line = is.readLine(); |
42 String port = is.readLine(); | 41 String port = is.readLine(); |
43 myAddress = getMyAddress(); | 42 myAddress = getMyAddress(); |
217 System.out.println(parentnum); | 216 System.out.println(parentnum); |
218 outputStream(os, request,String.valueOf(parentnum), | 217 outputStream(os, request,String.valueOf(parentnum), |
219 String.valueOf(counter), leaderflag); | 218 String.valueOf(counter), leaderflag); |
220 checkParameter(parentnum, counter, leaderflag); | 219 checkParameter(parentnum, counter, leaderflag); |
221 } else { | 220 } else { |
222 // treeの親ノードに接続する人に接続する人を教える | |
223 outputStream(os, myAddress, "0", | 221 outputStream(os, myAddress, "0", |
224 String.valueOf(counter), leaderflag); | 222 String.valueOf(counter), leaderflag); |
225 } | 223 } |
226 Thread.sleep(intv_time); | 224 Thread.sleep(intv_time); |
227 return false; | 225 return false; |
231 String newpnum, String newleaderflag) throws IOException { | 229 String newpnum, String newleaderflag) throws IOException { |
232 try { | 230 try { |
233 Socket echoSocket; | 231 Socket echoSocket; |
234 System.out.println(newchild + "connect"); | 232 System.out.println(newchild + "connect"); |
235 // echoSocket = new Socket(newchild, 10001 + (i + 1));// | 233 // echoSocket = new Socket(newchild, 10001 + (i + 1));// |
236 // i+1は実験中に同じマシーンを使っていたのでportを変えて対応、本番時には取り除く予定。 | |
237 echoSocket = new Socket(newchild, 10001); | 234 echoSocket = new Socket(newchild, 10001); |
238 DataOutputStream os = new DataOutputStream(echoSocket.getOutputStream()); | 235 DataOutputStream os = new DataOutputStream(echoSocket.getOutputStream()); |
239 os.writeBytes(newparent + "\n"); | 236 os.writeBytes(newparent + "\n"); |
240 os.writeBytes(newpnum + "\n"); | 237 os.writeBytes(newpnum + "\n"); |
241 os.writeBytes(newtreenum + "\n"); | 238 os.writeBytes(newtreenum + "\n"); |