Mercurial > hg > Applications > AliceVNC
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 } |