Mercurial > hg > Applications > AliceVNC
view src/main/java/jp/ac/u_ryukyu/alicevnc/NegotiateVNCServer.java @ 25:6cb444e8e646
bug fix
author | sugi |
---|---|
date | Sat, 08 Nov 2014 11:04:43 +0900 |
parents | 36a9a7de314d |
children | 14c7bd581cc2 |
line wrap: on
line source
package jp.ac.u_ryukyu.alicevnc; import java.util.ArrayList; import jp.ac.u_ryukyu.alicevnc.ChangeRequestMessage.MessageType; import com.glavsoft.viewer.Viewer; import alice.codesegment.CodeSegment; import alice.datasegment.CommandType; import alice.datasegment.Receiver; public class NegotiateVNCServer extends CodeSegment { private Receiver info = ids.create(CommandType.PEEK); private Receiver info1 = ids.create(CommandType.PEEK); public NegotiateVNCServer(){ info.setKey("host"); info1.setKey("AliceVNCConfig"); } @Override public void run() { AliceVNCConfig conf = info1.asClass(AliceVNCConfig.class); String hostname = info.asString(); if ("node0".equals(hostname)) { // root node connect to vnc Server first time. String[] args = {"localhost"}; // negotiate VNCServer by Viewer Viewer.main(args); // currentServer Info ChangeRequestMessage currentServerInfo = new ChangeRequestMessage(MessageType.CurrentVNCInfo); currentServerInfo.name = "node0"; currentServerInfo.changeServer = conf.getAllowChange(); ArrayList<String> list = new ArrayList<String>(); // list.add("local"); currentServerInfo.route = list; ods.put("changeRequest", currentServerInfo); new ReceiveServerInitMessage(); } else { new ReceiveServerInitMessage("parent"); if (conf.getProxyFlag()){ new SendChangeRequest(); } } new ReceiveChangeRequest(); new SendChangeRequest(); } }