org.springframework.web.socket.messaging.WebSocketStompClient类的使用及代码示例

x33g5p2x  于2022-02-03 转载在 其他  
字(10.4k)|赞(0)|评价(0)|浏览(174)

本文整理了Java中org.springframework.web.socket.messaging.WebSocketStompClient类的一些代码示例,展示了WebSocketStompClient类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。WebSocketStompClient类的具体详情如下:
包路径:org.springframework.web.socket.messaging.WebSocketStompClient
类名称:WebSocketStompClient

WebSocketStompClient介绍

[英]A STOMP over WebSocket client that connects using an implementation of org.springframework.web.socket.client.WebSocketClientincluding org.springframework.web.socket.sockjs.client.SockJsClient.
[中]一个使用org实现连接的STOMP over WebSocket客户端。springframework。网状物插座客户WebSocketClient包括组织。springframework。网状物插座索克斯。客户SockJsClient。

代码示例

代码示例来源:origin: spring-projects/spring-framework

  1. /**
  2. * Connect to the given WebSocket URL and notify the given
  3. * {@link org.springframework.messaging.simp.stomp.StompSessionHandler}
  4. * when connected on the STOMP level after the CONNECTED frame is received.
  5. * @param url the url to connect to
  6. * @param handler the session handler
  7. * @param uriVars the URI variables to expand into the URL
  8. * @return a ListenableFuture for access to the session when ready for use
  9. */
  10. public ListenableFuture<StompSession> connect(String url, StompSessionHandler handler, Object... uriVars) {
  11. return connect(url, null, handler, uriVars);
  12. }

代码示例来源:origin: spring-projects/spring-framework

  1. @Test
  2. public void heartbeatDefaultValueSetWithoutScheduler() throws Exception {
  3. WebSocketStompClient stompClient = new WebSocketStompClient(mock(WebSocketClient.class));
  4. stompClient.setDefaultHeartbeat(new long[] {5, 5});
  5. try {
  6. stompClient.processConnectHeaders(null);
  7. fail("Expected IllegalStateException");
  8. }
  9. catch (IllegalStateException ex) {
  10. // ignore
  11. }
  12. }

代码示例来源:origin: spring-projects/spring-framework

  1. @Test
  2. public void heartbeatDefaultValueWithScheduler() throws Exception {
  3. WebSocketStompClient stompClient = new WebSocketStompClient(mock(WebSocketClient.class));
  4. stompClient.setTaskScheduler(mock(TaskScheduler.class));
  5. assertArrayEquals(new long[] {10000, 10000}, stompClient.getDefaultHeartbeat());
  6. StompHeaders connectHeaders = stompClient.processConnectHeaders(null);
  7. assertArrayEquals(new long[] {10000, 10000}, connectHeaders.getHeartbeat());
  8. }

代码示例来源:origin: spring-projects/spring-framework

  1. @Override
  2. public void start() {
  3. if (!isRunning()) {
  4. this.running = true;
  5. if (getWebSocketClient() instanceof Lifecycle) {
  6. ((Lifecycle) getWebSocketClient()).start();
  7. }
  8. }
  9. }

代码示例来源:origin: spring-projects/spring-framework

  1. /**
  2. * {@inheritDoc}
  3. * <p>Also automatically sets the {@link #setDefaultHeartbeat defaultHeartbeat}
  4. * property to "10000,10000" if it is currently set to "0,0".
  5. */
  6. @Override
  7. public void setTaskScheduler(@Nullable TaskScheduler taskScheduler) {
  8. if (!isDefaultHeartbeatEnabled()) {
  9. setDefaultHeartbeat(new long[] {10000, 10000});
  10. }
  11. super.setTaskScheduler(taskScheduler);
  12. }

代码示例来源:origin: spring-projects/spring-framework

  1. /**
  2. * An overloaded version of
  3. * {@link #connect(String, WebSocketHttpHeaders, StompSessionHandler, Object...)}
  4. * that accepts a fully prepared {@link java.net.URI}.
  5. * @param url the url to connect to
  6. * @param handshakeHeaders the headers for the WebSocket handshake
  7. * @param connectHeaders headers for the STOMP CONNECT frame
  8. * @param sessionHandler the STOMP session handler
  9. * @return a ListenableFuture for access to the session when ready for use
  10. */
  11. public ListenableFuture<StompSession> connect(URI url, @Nullable WebSocketHttpHeaders handshakeHeaders,
  12. @Nullable StompHeaders connectHeaders, StompSessionHandler sessionHandler) {
  13. Assert.notNull(url, "'url' must not be null");
  14. ConnectionHandlingStompSession session = createSession(connectHeaders, sessionHandler);
  15. WebSocketTcpConnectionHandlerAdapter adapter = new WebSocketTcpConnectionHandlerAdapter(session);
  16. getWebSocketClient().doHandshake(adapter, handshakeHeaders, url).addCallback(adapter);
  17. return session.getSessionFuture();
  18. }

代码示例来源:origin: CaledoniaProject/CVE-2018-1270

  1. public static void main(String... argv) {
  2. WebSocketClient webSocketClient = new StandardWebSocketClient();
  3. WebSocketStompClient stompClient = new WebSocketStompClient(webSocketClient);
  4. stompClient.setMessageConverter(new MappingJackson2MessageConverter());
  5. stompClient.setTaskScheduler(new ConcurrentTaskScheduler());
  6. String url = "ws://127.0.0.1:8080/hello";
  7. StompSessionHandler sessionHandler = new MySessionHandler();
  8. stompClient.connect(url, sessionHandler);
  9. new Scanner(System.in).nextLine(); //Don't close immediately.
  10. }
  11. }

代码示例来源:origin: mthizo247/spring-cloud-netflix-zuul-websocket

  1. @Bean
  2. @ConditionalOnMissingBean(WebSocketStompClient.class)
  3. public WebSocketStompClient stompClient(WebSocketClient webSocketClient, MessageConverter messageConverter,
  4. @Qualifier("proxyStompClientTaskScheduler") TaskScheduler taskScheduler) {
  5. int bufferSizeLimit = 1024 * 1024 * 8;
  6. WebSocketStompClient client = new WebSocketStompClient(webSocketClient);
  7. client.setInboundMessageSizeLimit(bufferSizeLimit);
  8. client.setMessageConverter(messageConverter);
  9. client.setTaskScheduler(taskScheduler);
  10. client.setDefaultHeartbeat(new long[]{0, 0});
  11. return client;
  12. }

代码示例来源:origin: spring-projects/spring-integration

  1. @Bean
  2. public WebSocketStompClient stompClient(TaskScheduler taskScheduler) {
  3. WebSocketStompClient webSocketStompClient = new WebSocketStompClient(webSocketClient());
  4. webSocketStompClient.setTaskScheduler(taskScheduler);
  5. webSocketStompClient.setReceiptTimeLimit(5000);
  6. webSocketStompClient.setMessageConverter(new StringMessageConverter());
  7. return webSocketStompClient;
  8. }

代码示例来源:origin: spring-projects/spring-integration

  1. @Bean
  2. public WebSocketStompClient stompClient(TaskScheduler taskScheduler) {
  3. WebSocketStompClient webSocketStompClient = new WebSocketStompClient(webSocketClient());
  4. webSocketStompClient.setMessageConverter(new MappingJackson2MessageConverter());
  5. webSocketStompClient.setTaskScheduler(taskScheduler);
  6. return webSocketStompClient;
  7. }

代码示例来源:origin: stackoverflow.com

  1. WebSocketClient transport = new StandardWebSocketClient();
  2. WebSocketStompClient stompClient = new WebSocketStompClient(transport);
  3. MappingJackson2MessageConverter converter = new MappingJackson2MessageConverter();
  4. stompClient.setMessageConverter(converter);
  5. StompSessionHandler handler = new WSClient(); //custom implementation
  6. String url = "ws://{URL}/ws/websocket";
  7. stompClient.connect(url, handler);

代码示例来源:origin: spring-projects/spring-framework

  1. @Before
  2. public void setUp() throws Exception {
  3. logger.debug("Setting up before '" + this.testName.getMethodName() + "'");
  4. this.wac = new AnnotationConfigWebApplicationContext();
  5. this.wac.register(TestConfig.class);
  6. this.wac.refresh();
  7. this.server = new TomcatWebSocketTestServer();
  8. this.server.setup();
  9. this.server.deployConfig(this.wac);
  10. this.server.start();
  11. WebSocketClient webSocketClient = new StandardWebSocketClient();
  12. this.stompClient = new WebSocketStompClient(webSocketClient);
  13. this.stompClient.setMessageConverter(new StringMessageConverter());
  14. }

代码示例来源:origin: spring-projects/spring-framework

  1. @Override
  2. public void onReadInactivity(final Runnable runnable, final long duration) {
  3. Assert.state(getTaskScheduler() != null, "No TaskScheduler configured");
  4. this.lastReadTime = System.currentTimeMillis();
  5. this.inactivityTasks.add(getTaskScheduler().scheduleWithFixedDelay(() -> {
  6. if (System.currentTimeMillis() - this.lastReadTime > duration) {
  7. try {
  8. runnable.run();
  9. }
  10. catch (Throwable ex) {
  11. if (logger.isDebugEnabled()) {
  12. logger.debug("ReadInactivityTask failure", ex);
  13. }
  14. }
  15. }
  16. }, duration / 2));
  17. }

代码示例来源:origin: spring-projects/spring-framework

  1. /**
  2. * Class constructor. Sets {@link #setDefaultHeartbeat} to "0,0" but will
  3. * reset it back to the preferred "10000,10000" when a
  4. * {@link #setTaskScheduler} is configured.
  5. * @param webSocketClient the WebSocket client to connect with
  6. */
  7. public WebSocketStompClient(WebSocketClient webSocketClient) {
  8. Assert.notNull(webSocketClient, "WebSocketClient is required");
  9. this.webSocketClient = webSocketClient;
  10. setDefaultHeartbeat(new long[] {0, 0});
  11. }

代码示例来源:origin: spring-projects/spring-framework

  1. @Test
  2. public void heartbeatDefaultValue() throws Exception {
  3. WebSocketStompClient stompClient = new WebSocketStompClient(mock(WebSocketClient.class));
  4. assertArrayEquals(new long[] {0, 0}, stompClient.getDefaultHeartbeat());
  5. StompHeaders connectHeaders = stompClient.processConnectHeaders(null);
  6. assertArrayEquals(new long[] {0, 0}, connectHeaders.getHeartbeat());
  7. }

代码示例来源:origin: spring-projects/spring-framework

  1. @Override
  2. public void stop() {
  3. if (isRunning()) {
  4. this.running = false;
  5. if (getWebSocketClient() instanceof Lifecycle) {
  6. ((Lifecycle) getWebSocketClient()).stop();
  7. }
  8. }
  9. }

代码示例来源:origin: org.springframework/spring-websocket

  1. /**
  2. * {@inheritDoc}
  3. * <p>Also automatically sets the {@link #setDefaultHeartbeat defaultHeartbeat}
  4. * property to "10000,10000" if it is currently set to "0,0".
  5. */
  6. @Override
  7. public void setTaskScheduler(@Nullable TaskScheduler taskScheduler) {
  8. if (!isDefaultHeartbeatEnabled()) {
  9. setDefaultHeartbeat(new long[] {10000, 10000});
  10. }
  11. super.setTaskScheduler(taskScheduler);
  12. }

代码示例来源:origin: org.springframework/spring-websocket

  1. /**
  2. * An overloaded version of
  3. * {@link #connect(String, WebSocketHttpHeaders, StompSessionHandler, Object...)}
  4. * that accepts a fully prepared {@link java.net.URI}.
  5. * @param url the url to connect to
  6. * @param handshakeHeaders the headers for the WebSocket handshake
  7. * @param connectHeaders headers for the STOMP CONNECT frame
  8. * @param sessionHandler the STOMP session handler
  9. * @return a ListenableFuture for access to the session when ready for use
  10. */
  11. public ListenableFuture<StompSession> connect(URI url, @Nullable WebSocketHttpHeaders handshakeHeaders,
  12. @Nullable StompHeaders connectHeaders, StompSessionHandler sessionHandler) {
  13. Assert.notNull(url, "'url' must not be null");
  14. ConnectionHandlingStompSession session = createSession(connectHeaders, sessionHandler);
  15. WebSocketTcpConnectionHandlerAdapter adapter = new WebSocketTcpConnectionHandlerAdapter(session);
  16. getWebSocketClient().doHandshake(adapter, handshakeHeaders, url).addCallback(adapter);
  17. return session.getSessionFuture();
  18. }

代码示例来源:origin: spring-projects/spring-framework

  1. @Override
  2. public void onWriteInactivity(final Runnable runnable, final long duration) {
  3. Assert.state(getTaskScheduler() != null, "No TaskScheduler configured");
  4. this.lastWriteTime = System.currentTimeMillis();
  5. this.inactivityTasks.add(getTaskScheduler().scheduleWithFixedDelay(() -> {
  6. if (System.currentTimeMillis() - this.lastWriteTime > duration) {
  7. try {
  8. runnable.run();
  9. }
  10. catch (Throwable ex) {
  11. if (logger.isDebugEnabled()) {
  12. logger.debug("WriteInactivityTask failure", ex);
  13. }
  14. }
  15. }
  16. }, duration / 2));
  17. }

代码示例来源:origin: org.springframework/spring-websocket

  1. /**
  2. * Class constructor. Sets {@link #setDefaultHeartbeat} to "0,0" but will
  3. * reset it back to the preferred "10000,10000" when a
  4. * {@link #setTaskScheduler} is configured.
  5. * @param webSocketClient the WebSocket client to connect with
  6. */
  7. public WebSocketStompClient(WebSocketClient webSocketClient) {
  8. Assert.notNull(webSocketClient, "WebSocketClient is required");
  9. this.webSocketClient = webSocketClient;
  10. setDefaultHeartbeat(new long[] {0, 0});
  11. }

相关文章