comparison src/main/java/jp/ac/u_ryukyu/treevnc/server/state/ChangeHost.java @ 40:3c072f2f39bb

add Screen change function.
author one
date Mon, 22 Oct 2012 17:40:32 +0900
parents 6a34a5220a01
children d2741b80399e
comparison
equal deleted inserted replaced
39:6a34a5220a01 40:3c072f2f39bb
1 package jp.ac.u_ryukyu.treevnc.server.state; 1 package jp.ac.u_ryukyu.treevnc.server.state;
2 2
3 import java.io.BufferedReader; 3 import java.io.BufferedReader;
4 import java.io.IOException; 4 import java.io.IOException;
5 import java.io.InputStreamReader; 5 import java.io.InputStreamReader;
6 import java.net.Socket;
7 import java.net.UnknownHostException; 6 import java.net.UnknownHostException;
8 import java.util.LinkedList; 7 import java.util.LinkedList;
9 8
10 import jp.ac.u_ryukyu.treevnc.MyRfbProto;
11 import jp.ac.u_ryukyu.treevnc.server.VncProxyService; 9 import jp.ac.u_ryukyu.treevnc.server.VncProxyService;
12 10
13 import com.glavsoft.rfb.protocol.ProtocolSettings; 11 public class ChangeHost implements Runnable,ScreenChanges {
14 import com.glavsoft.viewer.ConnectionManager;
15 import com.glavsoft.viewer.Viewer;
16 import com.glavsoft.viewer.swing.ParametersHandler;
17
18 public class ChangeHost extends ConnectionManager implements Runnable,ScreenChanges {
19 12
20 private VncProxyService vps; 13 private VncProxyService vps;
21 private ScreenChanges screenChange; 14 private ScreenChanges screenChange;
22 private LinkedList<String> clientList; 15 private LinkedList<String> clientList;
23 private int port; 16 private int port;
24 17
25 18
26 public ChangeHost(VncProxyService _vps, boolean isApplet) { 19 public ChangeHost(VncProxyService _vps, boolean isApplet) {
27 super(_vps, isApplet);
28 vps = _vps; 20 vps = _vps;
29 screenChange = this; 21 screenChange = this;
30 } 22 }
31 23
32 24
33 /**
34 *
35 */
36 private static final long serialVersionUID = 1L;
37 String str; 25 String str;
38 26
39 @Override 27 @Override
40 public void run() { 28 public void run() {
41 try { 29 try {
54 private void waitingInput() { 42 private void waitingInput() {
55 try { 43 try {
56 BufferedReader br = new BufferedReader(new InputStreamReader( 44 BufferedReader br = new BufferedReader(new InputStreamReader(
57 System.in)); 45 System.in));
58 str = br.readLine(); 46 str = br.readLine();
59 vps.changeVNCServer(); 47 vps.changeVNCServer(str);
60 // vps.createConnectionAndStart(); 48 // vps.createConnectionAndStart();
61 // vps.aClient.setList(prevVps.aClient.getList()); 49 // vps.aClient.setList(prevVps.aClient.getList());
62 // clientList = prevVps.aClient.getList(); 50 // clientList = prevVps.aClient.getList();
63 // createSocketAndSend(clientList,String.valueOf(port)); 51 // createSocketAndSend(clientList,String.valueOf(port));
64 } catch (IOException e) { 52 } catch (IOException e) {
65 e.printStackTrace(); 53 e.printStackTrace();
66 } 54 }
67 }
68
69 @Override
70 public Socket connectToHost(
71 final ParametersHandler.ConnectionParams connectionParams,
72 ProtocolSettings settings, MyRfbProto rfb) {
73 Socket socket = null;
74 connectionParams.hostName = str;
75 connectionParams.portNumber = 5900;
76 Viewer.logger.info("Connecting to host " + connectionParams.hostName
77 + ":" + connectionParams.portNumber);
78 try {
79 socket = new Socket(connectionParams.hostName,
80 connectionParams.portNumber);
81 } catch (UnknownHostException e) {
82 Viewer.logger.severe("Unknown host: " + connectionParams.hostName);
83 showConnectionErrorDialog("Unknown host: '"
84 + connectionParams.hostName + "'");
85 } catch (IOException e) {
86 Viewer.logger.severe("Couldn't connect to: "
87 + connectionParams.hostName + ":"
88 + connectionParams.portNumber + ": " + e.getMessage());
89 showConnectionErrorDialog("Couldn't connect to: '"
90 + connectionParams.hostName + "'\n" + e.getMessage());
91 }
92 return socket;
93 } 55 }
94 56
95 57
96 @Override 58 @Override
97 public boolean next() { 59 public boolean next() {