io.reactivex.netty.RxNetty.newWebSocketServerBuilder()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(5.7k)|赞(0)|评价(0)|浏览(104)

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

RxNetty.newWebSocketServerBuilder介绍

暂无

代码示例

代码示例来源:origin: com.netflix.eureka/eureka2-server

public <T extends WebSocketFrame> void connectWebSocketEndpoint(String pathPrefix, ConnectionHandler<T, T> handler) {
  WebSocketServer<T, T> backend = RxNetty.newWebSocketServerBuilder(0, handler).build();
  backend.start();
  backendServers.add(backend);
  proxy.register(ForwardingRule.pathPrefix(backend.getServerPort(), pathPrefix));
  logger.info("Started backend WebSocket server on port {} or {}", backend.getServerPort(), handler.getClass().getSimpleName());
}

代码示例来源:origin: com.netflix.eureka2/eureka-dashboard

@PostConstruct
public void start() {
  server = RxNetty.newWebSocketServerBuilder(config.getWebSocketPort(), new ConnectionHandler<WebSocketFrame, WebSocketFrame>() {
    @Override
    public Observable<Void> handle(final ObservableConnection<WebSocketFrame, WebSocketFrame> connection) {
      return connection.getInput().flatMap(new Func1<WebSocketFrame, Observable<Void>>() {
        @Override
        public Observable<Void> call(WebSocketFrame wsFrame) {
          final SocketAddress socketAddress = connection.getChannel().remoteAddress();
          if (wsFrame instanceof TextWebSocketFrame) {
            TextWebSocketFrame textFrame = (TextWebSocketFrame) wsFrame;
            logger.info("Got ws-message: " + textFrame.text());
            final String cmd = textFrame.text();
            if (cmd.equals("get status")) {
              return streamEurekaStatus(connection);
            } else {
              // registry
              return streamEurekaRegistryData(connection);
            }
          } else {
            return Observable.empty();
          }
        }
      });
    }
  }).build().start();
  logger.info("Starting WebSocket server on port {}...", server.getServerPort());
}

代码示例来源:origin: com.netflix.eureka/eureka2-dashboard

@PostConstruct
public void start() {
  server = RxNetty.newWebSocketServerBuilder(config.getWebSocketPort(), new ConnectionHandler<WebSocketFrame, WebSocketFrame>() {
    @Override
    public Observable<Void> handle(final ObservableConnection<WebSocketFrame, WebSocketFrame> connection) {
      return connection.getInput().flatMap(new Func1<WebSocketFrame, Observable<Void>>() {
        @Override
        public Observable<Void> call(WebSocketFrame wsFrame) {
          if (wsFrame instanceof TextWebSocketFrame) {
            TextWebSocketFrame textFrame = (TextWebSocketFrame) wsFrame;
            logger.info("Got ws-message: " + textFrame.text());
            final String cmd = textFrame.text();
            if (cmd.equals("get status")) {
              return streamEurekaStatus(connection);
            } else {
              // registry
              return streamEurekaRegistryData(connection);
            }
          } else {
            return Observable.empty();
          }
        }
      });
    }
  }).build().start();
  logger.info("Starting WebSocket server on port {}...", server.getServerPort());
}

代码示例来源:origin: com.netflix.karyon/karyon2-governator

@Inject
  @SuppressWarnings("unchecked")
  public void setInjector(Injector injector) {
    KaryonWebSocketsModule.WebSocketsServerConfig config = (KaryonWebSocketsModule.WebSocketsServerConfig) injector.getInstance(serverConfigKey);

    ConnectionHandler<I, O> connectionHandler = injector.getInstance(connectionHandlerKey);

    WebSocketServerBuilder<I, O> builder = RxNetty.newWebSocketServerBuilder(config.getPort(), connectionHandler)
        .withMessageAggregator(config.isMessageAggregator());

    if (injector.getExistingBinding(pipelineConfiguratorKey) != null) {
      builder.appendPipelineConfigurator(injector.getInstance(pipelineConfiguratorKey));
    }

    if (injector.getExistingBinding(metricEventsListenerFactoryKey) != null) {
      builder.withMetricEventsListenerFactory(injector.getInstance(metricEventsListenerFactoryKey));
    }

    server = builder.build().start();
    logger.info("Starting WebSockets server {} on port {}...", nameAnnotation.value(), server.getServerPort());
  }
}

代码示例来源:origin: com.netflix.karyon2/karyon-governator

@Inject
  @SuppressWarnings("unchecked")
  public void setInjector(Injector injector) {
    KaryonWebSocketsModule.WebSocketsServerConfig config = (KaryonWebSocketsModule.WebSocketsServerConfig) injector.getInstance(serverConfigKey);

    ConnectionHandler<I, O> connectionHandler = injector.getInstance(connectionHandlerKey);

    WebSocketServerBuilder<I, O> builder = RxNetty.newWebSocketServerBuilder(config.getPort(), connectionHandler)
        .withMessageAggregator(config.isMessageAggregator());

    if (injector.getExistingBinding(pipelineConfiguratorKey) != null) {
      builder.appendPipelineConfigurator(injector.getInstance(pipelineConfiguratorKey));
    }

    if (injector.getExistingBinding(metricEventsListenerFactoryKey) != null) {
      builder.withMetricEventsListenerFactory(injector.getInstance(metricEventsListenerFactoryKey));
    }

    server = builder.build().start();
    logger.info("Starting WebSockets server {} on port {}...", nameAnnotation.value(), server.getServerPort());
  }
}

代码示例来源:origin: com.netflix.karyon/karyon-governator

@Inject
  @SuppressWarnings("unchecked")
  public void setInjector(Injector injector) {
    WebSocketsServerConfig config = (WebSocketsServerConfig) injector.getInstance(serverConfigKey);

    ConnectionHandler<I, O> connectionHandler = injector.getInstance(connectionHandlerKey);

    WebSocketServerBuilder<I, O> builder = RxNetty.newWebSocketServerBuilder(config.getPort(), connectionHandler)
        .withMessageAggregator(config.isMessageAggregator());

    if (injector.getExistingBinding(pipelineConfiguratorKey) != null) {
      builder.appendPipelineConfigurator(injector.getInstance(pipelineConfiguratorKey));
    }

    if (injector.getExistingBinding(metricEventsListenerFactoryKey) != null) {
      builder.withMetricEventsListenerFactory(injector.getInstance(metricEventsListenerFactoryKey));
    }

    server = builder.build().start();
    logger.info("Starting WebSockets server {} on port {}...", nameAnnotation.value(), server.getServerPort());
  }
}

相关文章