| | |
| | | @Configuration |
| | | public class WebSocketClientBeanConfig { |
| | | |
| | | |
| | | @Bean |
| | | public Map<String, WebSocketClient> websocketRunClientMap() { |
| | | |
| | | Map<String, WebSocketClient> retMap = new HashMap<>(2); |
| | | try { |
| | | WebsocketRunClient websocketRunClient = new WebsocketRunClient(new URI(PropertiesUtil.getProperty("MAS_WS_URL"))); |
| | | websocketRunClient.connect(); |
| | | websocketRunClient.setConnectionLostTimeout(0); |
| | | new Thread(() -> { |
| | | while (true) { |
| | | try { |
| | | Thread.sleep(8000); |
| | | websocketRunClient.send("heartbeat".getBytes()); |
| | | } catch (Exception e) { |
| | | websocketRunClient.reconnect(); |
| | | websocketRunClient.setConnectionLostTimeout(0); |
| | | } |
| | | } |
| | | }).start(); |
| | | retMap.put(EStockType.MAS.getStockKey(), websocketRunClient); |
| | | } catch (Exception e) { |
| | | } |
| | | |
| | | try { |
| | | USWebsocketRunClient usWebsocketRunClient = new USWebsocketRunClient(new URI(PropertiesUtil.getProperty("US_WS_URL"))); |
| | | usWebsocketRunClient.connect(); |
| | | usWebsocketRunClient.setConnectionLostTimeout(0); |
| | | new Thread(() -> { |
| | | while (true) { |
| | | try { |
| | | Thread.sleep(8000); |
| | | usWebsocketRunClient.send("heartbeat".getBytes()); |
| | | } catch (Exception e) { |
| | | usWebsocketRunClient.reconnect(); |
| | | usWebsocketRunClient.setConnectionLostTimeout(0); |
| | | } |
| | | } |
| | | }).start(); |
| | | retMap.put(EStockType.US.getStockKey(), usWebsocketRunClient); |
| | | } catch (Exception e) { |
| | | } |
| | | |
| | | |
| | | try { |
| | | HKWebsocketRunClient hkWebsocketRunClient = new HKWebsocketRunClient(new URI(PropertiesUtil.getProperty("HK_WS_URL"))); |
| | | hkWebsocketRunClient.connect(); |
| | | hkWebsocketRunClient.setConnectionLostTimeout(0); |
| | | new Thread(() -> { |
| | | while (true) { |
| | | try { |
| | | Thread.sleep(8000); |
| | | hkWebsocketRunClient.send("heartbeat".getBytes()); |
| | | } catch (Exception e) { |
| | | hkWebsocketRunClient.reconnect(); |
| | | hkWebsocketRunClient.setConnectionLostTimeout(0); |
| | | } |
| | | } |
| | | }).start(); |
| | | retMap.put(EStockType.HK.getStockKey(), hkWebsocketRunClient); |
| | | } catch (Exception e) { |
| | | } |
| | | |
| | | |
| | | return retMap; |
| | | } |
| | | |
| | | // |
| | | // @Bean |
| | | // public void websocketRunClientMap() { |
| | | // |
| | | // // 创建WebSocket客户端实例 |
| | | // try { |
| | | // URI serverUri = new URI("wss://ws.durocaspitall.com/websocket-server"); |
| | | // EStockType stockType = EStockType.IN; // 根据你的枚举调整 |
| | | // |
| | | // WebsocketRunClient client = new WebsocketRunClient(serverUri, stockType); |
| | | // client.connect(); |
| | | // |
| | | // } catch (Exception e) { |
| | | // log.error("创建WebSocket客户端失败: {}", e.getMessage(), e); |
| | | // } |
| | | // } |
| | | |
| | | } |