view src/main/java/jp/ac/u_ryukyu/treevnc/client/WaitReply.java @ 38:c2f0b6907448

add doc directory
author one
date Thu, 27 Sep 2012 19:32:25 +0900
parents b7d4d0349f99
children fe38611c4b2b
line wrap: on
line source

package jp.ac.u_ryukyu.treevnc.client;

import java.io.IOException;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;

/**
 * this Class get top(Proxy) Instruction. 
 * Type of Instruction is ReConnection and SocketClose.
 */
public class WaitReply extends Thread {
	private boolean passflag;
	private EchoClient echo;
	
	public WaitReply(String treenum, EchoClient echo) {
		this.echo = echo;
	}
	
	public boolean checkPath() {
		return passflag;
	}
	
	public void run() {
		Socket clientSocket = null;
		ServerSocket echoServer = null;
		while (true) {
			try {
				echoServer = new ServerSocket(10001);
				clientSocket = echoServer.accept();
				if (clientSocket != null) {
					echo.client.close();
					passflag = true;
					echo.client.setSocket(echo.createSocketForClient(clientSocket));
					// hult();
					// client.init();
					echo.client.run();
					echoServer.close();
				}
			} catch (IOException e) {
				System.out.println(e);
			}
		}
	}
	
	private void hult() throws IOException {
		Socket socket = new Socket("localhsot",	echo.client.getPort());
		OutputStream stream = socket.getOutputStream();
		stream.write("halt".getBytes());
		stream.flush();
	}
}