comparison src/myVncProxy/AcceptClient.java @ 171:ffc16faf011a

merge
author Yu Taninari <you@cr.ie.u-ryukyu.ac.jp>
date Fri, 21 Oct 2011 17:02:00 +0900
parents 57904d72fc09 1c0af90f7f59
children 54ad8e0654b5
comparison
equal deleted inserted replaced
170:57904d72fc09 171:ffc16faf011a
4 import java.net.UnknownHostException; 4 import java.net.UnknownHostException;
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 extends Thread { 9 public class AcceptClient {
10 int counter = 0, parentnum = 0/* 落ちたときの親の番号をカウントするためのもの */; 10 int counter = 0, parentnum = 0/* 落ちたときの親の番号をカウントするためのもの */;
11 LinkedList<String> ls = new LinkedList<String>(); 11 LinkedList<String> ls = new LinkedList<String>();
12 boolean runflag = false; 12 boolean runflag = false;
13 private String name; 13 private String name;
14 boolean addrRegistor = true; 14 boolean addrRegistor = true;
16 int treebranch = 2;// treeの子ノードの数 16 int treebranch = 2;// treeの子ノードの数
17 String newparent,request,myAddress; 17 String newparent,request,myAddress;
18 String leaderflag = "0", sendleaderflag = "0"; 18 String leaderflag = "0", sendleaderflag = "0";
19 int intv_time = 100; 19 int intv_time = 100;
20 20
21
21 22
22 public AcceptClient(String name) { 23 public AcceptClient(String name) {
23 this.name = name; 24 this.name = name;
24 } 25 }
25 26
69 void listupdate(String port) { 70 void listupdate(String port) {
70 ls.remove(Integer.parseInt(port)); 71 ls.remove(Integer.parseInt(port));
71 ls.add(Integer.parseInt(port), ls.getLast()); 72 ls.add(Integer.parseInt(port), ls.getLast());
72 ls.removeLast(); 73 ls.removeLast();
73 } 74 }
74
75 void listupdate(String port,String myaddr) {
76 ls.remove(Integer.parseInt(port));
77 ls.add(Integer.parseInt(port), myaddr);
78 ls.removeLast();
79 }
80 75
81 void outputStream(PrintStream os, String request, String parentnum, 76 void outputStream(PrintStream os, String request, String parentnum,
82 String treenum, String leaderflag) { 77 String treenum, String leaderflag) {
83 os.println(request); 78 os.println(request);
84 os.println(parentnum); 79 os.println(parentnum);
106 g++; 101 g++;
107 } 102 }
108 } 103 }
109 104
110 String decisionLeader(int counter, int treebranch) { 105 String decisionLeader(int counter, int treebranch) {
111 if(counter == 1) 106 if ((counter - 1) % treebranch == 1) { // children in most young treenum
107 // have leaderflag 1 other 0
108 return "0";
109 } else {
112 return "1"; 110 return "1";
113 if ((counter - 1) % treebranch == 1)// children in most young treenum 111 }
114 return "0";
115 else
116 return "1";
117 } 112 }
118 113
119 String getMyAddress () throws UnknownHostException { 114 String getMyAddress () throws UnknownHostException {
120 InetAddress addr = InetAddress.getLocalHost(); 115 InetAddress addr = InetAddress.getLocalHost();
121 return new String(addr.getHostAddress()); 116 return new String(addr.getHostAddress());