comparison src/main/java/jp/ac/u_ryukyu/alicevnc/NegotiateVNCServer.java @ 30:d8c6a4c7f16e

change algotherm
author sugi
date Sat, 08 Nov 2014 21:00:49 +0900
parents 14c7bd581cc2
children 556e27a53219
comparison
equal deleted inserted replaced
29:0f964a1ec846 30:d8c6a4c7f16e
11 import alice.datasegment.Receiver; 11 import alice.datasegment.Receiver;
12 12
13 public class NegotiateVNCServer extends CodeSegment { 13 public class NegotiateVNCServer extends CodeSegment {
14 private Receiver info = ids.create(CommandType.PEEK); 14 private Receiver info = ids.create(CommandType.PEEK);
15 private Receiver info1 = ids.create(CommandType.PEEK); 15 private Receiver info1 = ids.create(CommandType.PEEK);
16 private Receiver info2 = ids.create(CommandType.TAKE);
17
16 18
17 public NegotiateVNCServer(){ 19 public NegotiateVNCServer(){
18 info.setKey("host"); 20 info.setKey("host");
19 info1.setKey("AliceVNCConfig"); 21 info1.setKey("AliceVNCConfig");
22 info2.setKey("vncRight");
20 } 23 }
21 24
22 @Override 25 @Override
23 public void run() { 26 public void run() {
24 27
25 AliceVNCConfig conf = info1.asClass(AliceVNCConfig.class); 28 AliceVNCConfig conf = info1.asClass(AliceVNCConfig.class);
26 String hostname = info.asString(); 29 String hostname = info.asString();
30 boolean vncRight = info2.asClass(boolean.class);
27 31
28 if ("node0".equals(hostname)) { 32 if (vncRight) {
29 // root node connect to vnc Server first time. 33 // root node connect to vnc Server first time.
30 String[] args = {"localhost"}; 34 String[] args = {"localhost"};
31 // negotiate VNCServer by Viewer 35 // negotiate VNCServer by Viewer
32 Viewer.main(args); 36 Viewer.main(args);
33 37
34 // currentServer Info 38 // currentServer Info
35 ChangeRequestMessage currentServerInfo = new ChangeRequestMessage(MessageType.CurrentVNCInfo); 39 ChangeRequestMessage currentServerInfo = new ChangeRequestMessage(MessageType.CurrentVNCInfo);
36 currentServerInfo.name = "node0"; 40 currentServerInfo.name = hostname;
37 currentServerInfo.allowChange = conf.getAllowChange(); 41 currentServerInfo.allowChange = conf.getAllowChange();
38 ArrayList<String> list = new ArrayList<String>(); 42 ArrayList<String> list = new ArrayList<String>();
39 currentServerInfo.route = list; 43 currentServerInfo.route = list;
40 ods.put("changeRequest", currentServerInfo); 44 ods.put("changeRequest", currentServerInfo);
41 new ReceiveServerInitMessage(); 45 new ReceiveServerInitMessage();
45 new SendChangeRequest(); 49 new SendChangeRequest();
46 50
47 } 51 }
48 } 52 }
49 53
50 new ReceiveChangeRequest(); 54
51 new SendChangeRequest();
52 } 55 }
53 56
54 } 57 }