view src/main/java/jp/ac/u_ryukyu/alicevnc/NegotiateVNCServer.java @ 52:57ca704f86a3

back version Alice tag:work-compressedDSM
author Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
date Mon, 09 Nov 2015 16:09:16 +0900
parents 9354e8a1d03b
children fe627049e289 3a27a0727705
line wrap: on
line source

package jp.ac.u_ryukyu.alicevnc;

import java.util.ArrayList;

import jp.ac.u_ryukyu.alicevnc.AliceVNCMessage.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();

        // root node connect to vnc Server first time.
        String[] args = {"localhost"};
        // negotiate VNCServer by Viewer
        Viewer.main(args);

        // currentServer Info
        AliceVNCMessage currentServerInfo = new AliceVNCMessage(MessageType.CurrentVNCInfo);
        currentServerInfo.name = hostname;
        currentServerInfo.allowChange = conf.getAllowChange();
        ArrayList<String> list = new ArrayList<String>();
        currentServerInfo.route = list;
        ods.put("AliceVNCMessage", currentServerInfo);

    }

}