view src/main/java/jp/ac/u_ryukyu/alicevnc/NegotiateVNCServer.java @ 79:3a27a0727705

update Alice
author Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
date Thu, 17 Dec 2015 17:16:07 +0900
parents 57ca704f86a3
children 4a8755a30aa8
line wrap: on
line source

package jp.ac.u_ryukyu.alicevnc;

import java.util.ArrayList;

import alice.datasegment.DataSegment;
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() {
        System.out.println("NegotiateVNCServer host index:" + DataSegment.getLocal().getDSindex("host"));
        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);

    }

}