gpt4 book ai didi

org.springframework.web.socket.client.WebSocketConnectionManager类的使用及代码示例

转载 作者:知者 更新时间:2024-03-27 10:35:05 27 4
gpt4 key购买 nike

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

WebSocketConnectionManager介绍

[英]A WebSocket connection manager that is given a URI, a WebSocketClient, and a WebSocketHandler, connects to a WebSocket server through #start() and #stop() methods. If #setAutoStartup(boolean) is set to truethis will be done automatically when the Spring ApplicationContext is refreshed.
[中]给定URI、WebSocketClient和WebSocketHandler的WebSocket连接管理器通过#start()和#stop()方法连接到WebSocket服务器。如果#setAutoStartup(布尔值)设置为True,则在刷新Spring应用程序上下文时会自动执行此操作。

代码示例

代码示例来源:origin: rampatra/jbot

/**
 * Entry point where the web socket connection starts
 * and after which your bot becomes live.
 */
@PostConstruct
protected void startRTMAndWebSocketConnection() {
  slackService.connectRTM(getSlackToken());
  if (slackService.getWebSocketUrl() != null) {
    webSocketManager = new WebSocketConnectionManager(client(), handler(), slackService.getWebSocketUrl());
    webSocketManager.start();
  } else {
    logger.error("No web socket url returned by Slack.");
  }
}

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

public WebSocketConnectionManager(WebSocketClient client,
    WebSocketHandler webSocketHandler, String uriTemplate, Object... uriVariables) {
  super(uriTemplate, uriVariables);
  this.client = client;
  this.webSocketHandler = decorateWebSocketHandler(webSocketHandler);
}

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

@Override
protected void openConnection() {
  if (logger.isInfoEnabled()) {
    logger.info("Connecting to WebSocket at " + getUri());
  }
  ListenableFuture<WebSocketSession> future =
      this.client.doHandshake(this.webSocketHandler, this.headers, getUri());
  future.addCallback(new ListenableFutureCallback<WebSocketSession>() {
    @Override
    public void onSuccess(@Nullable WebSocketSession result) {
      webSocketSession = result;
      logger.info("Successfully connected");
    }
    @Override
    public void onFailure(Throwable ex) {
      logger.error("Failed to connect", ex);
    }
  });
}

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

@Test
public void clientLifecycle() throws Exception {
  TestLifecycleWebSocketClient client = new TestLifecycleWebSocketClient(false);
  WebSocketHandler handler = new TextWebSocketHandler();
  WebSocketConnectionManager manager = new WebSocketConnectionManager(client, handler , "/a");
  manager.startInternal();
  assertTrue(client.isRunning());
  manager.stopInternal();
  assertFalse(client.isRunning());
}

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

@Test
public void openConnection() throws Exception {
  List<String> subprotocols = Arrays.asList("abc");
  TestLifecycleWebSocketClient client = new TestLifecycleWebSocketClient(false);
  WebSocketHandler handler = new TextWebSocketHandler();
  WebSocketConnectionManager manager = new WebSocketConnectionManager(client, handler , "/path/{id}", "123");
  manager.setSubProtocols(subprotocols);
  manager.openConnection();
  WebSocketHttpHeaders expectedHeaders = new WebSocketHttpHeaders();
  expectedHeaders.setSecWebSocketProtocol(subprotocols);
  assertEquals(expectedHeaders, client.headers);
  assertEquals(new URI("/path/123"), client.uri);
  WebSocketHandlerDecorator loggingHandler = (WebSocketHandlerDecorator) client.webSocketHandler;
  assertEquals(LoggingWebSocketHandlerDecorator.class, loggingHandler.getClass());
  assertSame(handler, loggingHandler.getDelegate());
}

代码示例来源:origin: io.github.xinyang-pan.crypto4j/crypto4j-core

private WebSocketConnectionManager createConnectionManager(String url, S wsHandler) {
  StandardWebSocketClient client = new StandardWebSocketClient();
  return new WebSocketConnectionManager(client, wsHandler, url);
}

代码示例来源:origin: com.bosch.bis.monitoring/bis-event-publisher-impl

@Bean
public WebSocketConnectionManager webSocketConnectionManager(WebSocketClient wsClient, WebSocketHandler wsHandler) {
  WebSocketConnectionManager manager = new WebSocketConnectionManager(
      wsClient, wsHandler, serviceAddress.getUri().toString());
  manager.setAutoStartup(true);
  return manager;
}

代码示例来源:origin: io.github.qyvlik/jsonrpclite-core

public void startup() {
  webSocketConnectionManager.start();
}

代码示例来源:origin: rampatra/jbot

@Override
public void run() {
  try {
    logger.debug("Pinging Slack...");
    Message message = new Message();
    message.setType(EventType.PING.name().toLowerCase());
    synchronized (sendMessageLock) {
      webSocketSession.sendMessage(new TextMessage(message.toJSONString()));
    }
  } catch (Exception e) {
    logger.error("Error pinging Slack. Slack bot may go offline when not active. Exception: ", e);
    if (!isWebSocketSessionOpen()) {
      try {
        webSocketManager.stop();
      } catch (Exception innerException) {
        logger.error("Error closing websocket after failed ping. Exception: ", innerException);
      }
      pingTask = null;
      if (pingScheduledExecutorService != null) {
        pingScheduledExecutorService.shutdownNow();
      }
      pingScheduledExecutorService = null;
      startRTMAndWebSocketConnection();
    }
  }
}

代码示例来源:origin: com.bosch.bis.monitoring/bis-event-publisher-impl

void sendMessage(byte[] message) {
  BinaryMessage binaryMessage = new BinaryMessage(message);
  webSocketRetryExecutor.doWithRetry(retryContext -> {
    if (serverSession == null) {
      throw new ConnectionNotEstablishedYetException();
    }
    if (!serverSession.isOpen()) {
      LOG.warn("Connection has been closed meanwhile, reconnecting...");
      tokenRetriever.updateOAuth2AuthenticationHeader();
      manager.startInternal();
      throw new ConnectionNotEstablishedYetException();
    }
    try {
      serverSession.sendMessage(binaryMessage);
    } catch (IOException e) {
      LOG.error("Failed to send websocket message (attempt " + retryContext.getRetryCount()
          + " with error: " + e.getMessage(), e);
      throw e;
    }
  });
}

代码示例来源:origin: io.github.qyvlik/jsonrpclite-core

public RpcClient(String wsUrl, int sendTimeLimit, int bufferSizeLimit) {
  this.sendTimeLimit = sendTimeLimit;
  this.bufferSizeLimit = bufferSizeLimit;
  this.wsUrl = wsUrl;
  WebSocketContainer container = ContainerProvider.getWebSocketContainer();
  container.setDefaultMaxTextMessageBufferSize(10 * 1024 * 1024);
  webSocketClient = new StandardWebSocketClient(container);
  webSocketConnectionManager = new WebSocketConnectionManager(webSocketClient,
      new RpcClientTextHandler(), this.wsUrl);
}

代码示例来源:origin: io.github.xinyang-pan.crypto4j/crypto4j-core

public void connect() {
  Preconditions.checkNotNull(subscriber);
  subscriber.setWebSocketManager(this);
  if (heartbeat != null) {
    heartbeat.setWebSocketManager(this);
  }
  // 
  this.manager = createConnectionManager(url, subscriber);
  log.info("WebSocketManager[{}] is connecting to {}.", name, url);
  manager.start();
  sessionChecker = new Thread(this::checkSession);
  sessionChecker.setDaemon(true);
  sessionChecker.start();
}

代码示例来源:origin: io.github.xinyang-pan.crypto4j/crypto4j-core

public void disconnect() {
  if (sessionChecker != null) {
    sessionChecker.interrupt();
  }
  if (manager == null) {
    return;
  }
  manager.stop();
  manager = null;
}

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

public WebSocketConnectionManager(WebSocketClient client,
    WebSocketHandler webSocketHandler, String uriTemplate, Object... uriVariables) {
  super(uriTemplate, uriVariables);
  this.client = client;
  this.webSocketHandler = decorateWebSocketHandler(webSocketHandler);
}

代码示例来源:origin: apache/servicemix-bundles

@Override
protected void openConnection() {
  if (logger.isInfoEnabled()) {
    logger.info("Connecting to WebSocket at " + getUri());
  }
  ListenableFuture<WebSocketSession> future =
      this.client.doHandshake(this.webSocketHandler, this.headers, getUri());
  future.addCallback(new ListenableFutureCallback<WebSocketSession>() {
    @Override
    public void onSuccess(@Nullable WebSocketSession result) {
      webSocketSession = result;
      logger.info("Successfully connected");
    }
    @Override
    public void onFailure(Throwable ex) {
      logger.error("Failed to connect", ex);
    }
  });
}

代码示例来源:origin: apache/servicemix-bundles

public WebSocketConnectionManager(WebSocketClient client,
    WebSocketHandler webSocketHandler, String uriTemplate, Object... uriVariables) {
  super(uriTemplate, uriVariables);
  this.client = client;
  this.webSocketHandler = decorateWebSocketHandler(webSocketHandler);
}

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

@Override
protected void openConnection() {
  if (logger.isInfoEnabled()) {
    logger.info("Connecting to WebSocket at " + getUri());
  }
  ListenableFuture<WebSocketSession> future =
      this.client.doHandshake(this.webSocketHandler, this.headers, getUri());
  future.addCallback(new ListenableFutureCallback<WebSocketSession>() {
    @Override
    public void onSuccess(@Nullable WebSocketSession result) {
      webSocketSession = result;
      logger.info("Successfully connected");
    }
    @Override
    public void onFailure(Throwable ex) {
      logger.error("Failed to connect", ex);
    }
  });
}

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com