11import java .io .BufferedReader ;
22import java .io .File ;
33import java .io .FileInputStream ;
4- import java .io .IOException ;
54import java .io .InputStreamReader ;
6- import java .net .Socket ;
75import java .net .URI ;
8- import java .nio .channels .ByteChannel ;
9- import java .nio .channels .SelectionKey ;
106import java .security .KeyStore ;
11- import java .util .List ;
12- import java .util .concurrent .ExecutorService ;
13- import java .util .concurrent .Executors ;
147
158import javax .net .ssl .KeyManagerFactory ;
169import javax .net .ssl .SSLContext ;
17- import javax .net .ssl .SSLEngine ;
1810import javax .net .ssl .TrustManagerFactory ;
1911
20- import org .java_websocket .SSLSocketChannel2 ;
2112import org .java_websocket .WebSocket ;
22- import org .java_websocket .WebSocketAdapter ;
23- import org .java_websocket .WebSocketFactory ;
24- import org .java_websocket .WebSocketImpl ;
13+ import org .java_websocket .client .DefaultSSLWebSocketClientFactory ;
2514import org .java_websocket .client .WebSocketClient ;
26- import org .java_websocket .drafts .Draft ;
2715import org .java_websocket .handshake .ServerHandshake ;
2816
2917class WebSocketChatClient extends WebSocketClient {
@@ -90,7 +78,7 @@ public static void main( String[] args ) throws Exception {
9078 sslContext = SSLContext .getInstance ( "TLS" );
9179 sslContext .init ( kmf .getKeyManagers (), tmf .getTrustManagers (), null );
9280
93- chatclient .setWebSocketFactory ( new SSLWebSocketClientFactory ( sslContext ) );
81+ chatclient .setWebSocketFactory ( new DefaultSSLWebSocketClientFactory ( sslContext ) );
9482
9583 chatclient .connect ();
9684
@@ -101,29 +89,3 @@ public static void main( String[] args ) throws Exception {
10189
10290 }
10391}
104-
105- class SSLWebSocketClientFactory implements WebSocketFactory {
106- private SSLContext sslcontext ;
107- private ExecutorService exec = Executors .newSingleThreadScheduledExecutor ();
108-
109- SSLWebSocketClientFactory ( SSLContext sslContext ) {
110- this .sslcontext = sslContext ;
111- }
112-
113- @ Override
114- public ByteChannel wrapChannel ( SelectionKey c ) throws IOException {
115- SSLEngine e = sslcontext .createSSLEngine ();
116- e .setUseClientMode ( true );
117- return new SSLSocketChannel2 ( c , e , exec );
118- }
119-
120- @ Override
121- public WebSocketImpl createWebSocket ( WebSocketAdapter a , Draft d , Socket c ) {
122- return new WebSocketImpl ( a , d , c );
123- }
124-
125- @ Override
126- public WebSocketImpl createWebSocket ( WebSocketAdapter a , List <Draft > d , Socket s ) {
127- return new WebSocketImpl ( a , d , s );
128- }
129- }
0 commit comments