Mercurial > hg > Applications > AliceVNC
comparison src/main/java/jp/ac/u_ryukyu/alicevnc/ReceiveAliceVNCMessage.java @ 47:9354e8a1d03b
working AliceVNC
author | Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 19 Oct 2015 23:48:18 +0900 |
parents | aace9df1462e |
children | 57ca704f86a3 |
comparison
equal
deleted
inserted
replaced
46:51e57371c620 | 47:9354e8a1d03b |
---|---|
9 | 9 |
10 public class ReceiveAliceVNCMessage extends CodeSegment { | 10 public class ReceiveAliceVNCMessage extends CodeSegment { |
11 private Receiver info = ids.create(CommandType.TAKE); | 11 private Receiver info = ids.create(CommandType.TAKE); |
12 private Receiver info1 = ids.create(CommandType.PEEK); // connection list | 12 private Receiver info1 = ids.create(CommandType.PEEK); // connection list |
13 | 13 |
14 public ReceiveAliceVNCMessage() { | 14 public ReceiveAliceVNCMessage(CodeSegment cs) { |
15 info.setKey("AliceVNCMessage"); | 15 this.aliceDaemon = cs.aliceDaemon; |
16 info1.setKey("_CLIST"); | 16 info.setKey("AliceVNCMessage", this); |
17 info1.setKey("_CLIST", this); | |
17 } | 18 } |
18 | 19 |
19 @Override | 20 @Override |
20 public void run() { | 21 public void run() { |
21 AliceVNCMessage order = info.asClass(AliceVNCMessage.class); | 22 AliceVNCMessage order = info.asClass(AliceVNCMessage.class); |
25 if (order.messageID == MessageType.ChangeRequest.getId()|| | 26 if (order.messageID == MessageType.ChangeRequest.getId()|| |
26 order.messageID == MessageType.CurrentVNCInfo.getId()) { | 27 order.messageID == MessageType.CurrentVNCInfo.getId()) { |
27 if (clist.contains("parent")){ | 28 if (clist.contains("parent")){ |
28 order.route.add(info.from); | 29 order.route.add(info.from); |
29 ods.put("parent", "AliceVNCMessage", order); | 30 ods.put("parent", "AliceVNCMessage", order); |
30 new ReceiveAliceVNCMessage(); | 31 new ReceiveAliceVNCMessage(this); |
31 } else { // this node is root. | 32 } else { // this node is root. |
32 order.route.add(info.from); | 33 order.route.add(info.from); |
33 if (order.messageID == MessageType.CurrentVNCInfo.getId()) { | 34 if (order.messageID == MessageType.CurrentVNCInfo.getId()) { |
34 ods.put("currentServer", order); | 35 ods.put("currentServer", order); |
35 new ReceiveAliceVNCMessage(); | 36 new ReceiveAliceVNCMessage(this); |
36 } else { | 37 } else { |
37 new CheckCurrentInfo(order); // check change Server flag. | 38 new CheckCurrentInfo(order, this); // check change Server flag. |
38 } | 39 } |
39 } | 40 } |
40 } else if (order.messageID == MessageType.StartNegotiate.getId()|| | 41 } else if (order.messageID == MessageType.StartNegotiate.getId()|| |
41 order.messageID == MessageType.StopProxy.getId()|| | 42 order.messageID == MessageType.StopProxy.getId()|| |
42 order.messageID == MessageType.DeniedRequest.getId()) { | 43 order.messageID == MessageType.DeniedRequest.getId()) { |
43 if (order.route.size() == 0) { | 44 if (order.route.size() == 0) { |
44 // this node send ChangeVNCRequest | 45 // this node send ChangeVNCRequest |
45 if (order.messageID == MessageType.StartNegotiate.getId()){ | 46 if (order.messageID == MessageType.StartNegotiate.getId()){ |
46 // negotiate VNCServer by Viewer | 47 // negotiate VNCServer by Viewer |
47 ods.put("vncRight", true); | 48 ods.put("vncRight", true); |
48 new NegotiateVNCServer(); | 49 new NegotiateVNCServer(this); |
49 new ReceiveAliceVNCMessage(); | 50 new ReceiveAliceVNCMessage(this); |
50 } else if(order.messageID == MessageType.StopProxy.getId()) { | 51 } else if(order.messageID == MessageType.StopProxy.getId()) { |
51 new StopProxy(); | 52 new StopProxy(); |
52 } else if (order.messageID == MessageType.DeniedRequest.getId()) { | 53 } else if (order.messageID == MessageType.DeniedRequest.getId()) { |
53 // pop up window or message | 54 // pop up window or message |
54 } | 55 } |
55 } else { | 56 } else { |
56 String address = order.getNextAddress(); | 57 String address = order.getNextAddress(); |
57 ods.put(address, "AliceVNCMessage", order); | 58 ods.put(address, "AliceVNCMessage", order); |
58 new ReceiveAliceVNCMessage(); | 59 new ReceiveAliceVNCMessage(this); |
59 } | 60 } |
60 } | 61 } |
61 } | 62 } |
62 } | 63 } |