view src/main/java/jp/ac/u_ryukyu/treevnc/server/state/ChangeHost.java @ 46:d2741b80399e

extract method and delete tempWorkingProtocol.
author one
date Thu, 06 Dec 2012 17:15:23 +0900
parents 3c072f2f39bb
children eb34277a22ff
line wrap: on
line source

package jp.ac.u_ryukyu.treevnc.server.state;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.UnknownHostException;
import java.util.LinkedList;

import jp.ac.u_ryukyu.treevnc.server.VncProxyService;

public class ChangeHost implements Runnable,ScreenChanges {

	private VncProxyService vps;
	private ScreenChanges screenChange;
	

	public ChangeHost(VncProxyService _vps, boolean isApplet) {
		vps = _vps;
		screenChange = this;
	}


	String str;

	@Override
	public void run() {
		try {
			while(screenChange.next());
		} catch (UnknownHostException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

	public String getHost() {
		return str;
	}

	private void waitingInput() {
		try {
			BufferedReader br = new BufferedReader(new InputStreamReader(
					System.in));
			str = br.readLine();
			vps.changeVNCServer(str);
//			vps.createConnectionAndStart();
//			vps.aClient.setList(prevVps.aClient.getList());
//			clientList = prevVps.aClient.getList();
//			createSocketAndSend(clientList,String.valueOf(port));
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
	
	
	@Override
	public boolean next() {
		waitingInput();
		changeState(new ReconnectionRequest(vps));
		return true;
	}

	public void changeState(ScreenChanges change) {
		screenChange = change;
	}
}