@Override public void configure(Session websocketSession) { JsrSession jsrSession = (JsrSession)websocketSession; WebSocketPolicy policy = jsrSession.getPolicy(); websocketSession.setMaxTextMessageBufferSize(1024 * 1024 * 64); websocketSession.setMaxBinaryMessageBufferSize(1024 * 1024 * 512); policy.setMaxTextMessageSize(1024 * 1024 * 64); } });
@Override protected WebSocketContainer createContainer() { return JettyClientContainerProvider.getWebSocketContainer(); }
@Override protected void doStart() throws Exception { // Proceed with Normal Startup super.doStart(); // Process Deferred Endpoints if (deferredEndpointClasses != null) { for (Class<?> endpointClass : deferredEndpointClasses) { addEndpoint(endpointClass); } deferredEndpointClasses.clear(); } if (deferredEndpointConfigs != null) { for (ServerEndpointConfig config : deferredEndpointConfigs) { addEndpoint(config); } deferredEndpointConfigs.clear(); } }
@Override public Object createWebSocket(ServletUpgradeRequest req, ServletUpgradeResponse resp) JsrHandshakeRequest jsrHandshakeRequest = new JsrHandshakeRequest(req); JsrHandshakeResponse jsrHandshakeResponse = new JsrHandshakeResponse(resp); ServerEndpointConfig config = metadata.getConfig(); config = new BasicServerEndpointConfig(containerScope, config); for (String extName : extensionFactory.getAvailableExtensions().keySet()) installedExtensions.add(new JsrExtension(extName)); requestedExts.add(new JsrExtension(reqCfg)); PathSpec pathSpec = jsrHandshakeRequest.getRequestPathSpec(); if (pathSpec instanceof UriTemplatePathSpec) String requestPath = req.getRequestPath(); config = new PathParamServerEndpointConfig(containerScope,config,wspathSpec,requestPath); return new EndpointInstance(endpoint,config,metadata);
/** * * @param configuration the {@link NativeWebSocketConfiguration} to use * @param httpClient the {@link HttpClient} instance to use */ public ServerContainer(NativeWebSocketConfiguration configuration, HttpClient httpClient) { super(configuration.getFactory(), httpClient); this.configuration = configuration; EventDriverFactory eventDriverFactory = this.configuration.getFactory().getEventDriverFactory(); eventDriverFactory.addImplementation(new JsrServerEndpointImpl()); eventDriverFactory.addImplementation(new JsrServerExtendsEndpointImpl()); this.configuration.getFactory().addSessionFactory(new JsrSessionFactory(this)); addBean(this.configuration); }
ClientContainer container = new ClientContainer(); SslContextFactory scf = container.getClient().getSslContextFactory(); if (trustStore != null) { container.start(); return container;
@Override public void setAsyncSendTimeout(long ms) { super.setAsyncSendTimeout(ms); this.configuration.getPolicy().setAsyncWriteTimeout(ms); }
@Override public void setDefaultMaxSessionIdleTimeout(long ms) { super.setDefaultMaxSessionIdleTimeout(ms); this.configuration.getPolicy().setIdleTimeout(ms); }
@Override public void setDefaultMaxBinaryMessageBufferSize(int max) { super.setDefaultMaxBinaryMessageBufferSize(max); // overall message limit (used in non-streaming) this.configuration.getPolicy().setMaxBinaryMessageSize(max); // incoming streaming buffer size this.configuration.getPolicy().setMaxBinaryMessageBufferSize(max); }
@Override public void setDefaultMaxTextMessageBufferSize(int max) { super.setDefaultMaxTextMessageBufferSize(max); // overall message limit (used in non-streaming) this.configuration.getPolicy().setMaxTextMessageSize(max); // incoming streaming buffer size this.configuration.getPolicy().setMaxTextMessageBufferSize(max); }
ClientContainer container = new ClientContainer(); SslContextFactory scf = container.getClient().getSslContextFactory(); if (trustStore != null) { container.start(); return container;
@Override protected WebSocketContainer createContainer() { return JettyClientContainerProvider.getWebSocketContainer(); }