Mercurial > hg > Members > nobuyasu > tightVNCProxy
annotate src/myVncProxy/CreateThread.java @ 131:2a90459a05f0
modify CreateThread
author | e085711 |
---|---|
date | Tue, 30 Aug 2011 06:21:13 +0900 |
parents | cb00150c223e |
children | 4297c2011b71 |
rev | line source |
---|---|
63
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
1 package myVncProxy; |
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
2 |
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
3 import java.io.BufferedReader; |
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
4 import java.io.IOException; |
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
5 import java.io.InputStreamReader; |
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
6 import java.io.PrintStream; |
130 | 7 import java.net.BindException; |
63
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
8 import java.net.ServerSocket; |
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
9 import java.net.Socket; |
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
10 |
64 | 11 public class CreateThread implements Runnable { |
63
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
12 ServerSocket echoServer; |
73 | 13 AcceptClient acceptClient; |
130 | 14 int port; |
15 | |
118 | 16 public CreateThread(AcceptClient _acc) { |
63
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
17 acceptClient = _acc; |
130 | 18 port = 9999; |
19 } | |
20 | |
21 public CreateThread(AcceptClient _acc , int port) { | |
22 acceptClient = _acc; | |
23 this.port = port; | |
63
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
24 } |
118 | 25 |
26 void newEchoClient(final BufferedReader is,final PrintStream os) { | |
27 Runnable echoSender = new Runnable() { | |
28 public void run() { | |
29 acceptClient.transferParentAddrerss(is,os); | |
30 } | |
31 }; | |
32 new Thread(echoSender).start(); | |
33 } | |
34 | |
130 | 35 void selectPort(int p) { |
36 int port = p; | |
63
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
37 while (true) { |
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
38 try { |
130 | 39 initServSock(port); |
40 break; | |
41 } catch (BindException e) { | |
42 port++; | |
43 continue; | |
44 } catch (IOException e) { | |
45 | |
46 } | |
47 } | |
48 System.out.println("accept port = " + port); | |
49 } | |
50 | |
51 void initServSock(int port) throws IOException { | |
52 echoServer = new ServerSocket(port); | |
53 this.port = port; | |
54 } | |
55 | |
56 | |
57 public void run() { | |
58 selectPort(port); | |
59 | |
60 while (true) { | |
61 try { | |
62 // echoServer = new ServerSocket(9999); | |
63
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
63 Socket clientSocket = echoServer.accept(); |
118 | 64 BufferedReader is = new BufferedReader(new InputStreamReader( |
65 clientSocket.getInputStream())); | |
63
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
66 PrintStream os = new PrintStream(clientSocket.getOutputStream()); |
118 | 67 newEchoClient(is,os); |
68 // acceptClient.transferParentAddrerss(is, os); | |
69 } catch (IOException e) { | |
63
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
70 System.out.println(e); |
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
71 } |
131 | 72 /* |
63
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
73 try { |
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
74 echoServer.close(); |
118 | 75 } catch (IOException e) { |
63
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
76 System.out.println(e); |
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
77 } |
131 | 78 */ |
118 | 79 |
63
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
80 } |
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
81 |
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
82 } |
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
83 |
4864a7d1df00
add CreateThread.java modify acceptClient.java and VncProxyService.java
Yu Taninari <e085734@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
84 } |