protected void configurePolicy(final ConfigurationContext context, final WebSocketPolicy policy) { final int inputBufferSize = context.getProperty(INPUT_BUFFER_SIZE).asDataSize(DataUnit.B).intValue(); final int maxTextMessageSize = context.getProperty(MAX_TEXT_MESSAGE_SIZE).asDataSize(DataUnit.B).intValue(); final int maxBinaryMessageSize = context.getProperty(MAX_BINARY_MESSAGE_SIZE).asDataSize(DataUnit.B).intValue(); policy.setInputBufferSize(inputBufferSize); policy.setMaxTextMessageSize(maxTextMessageSize); policy.setMaxBinaryMessageSize(maxBinaryMessageSize); }
@Override public void onWebSocketConnect(Session session) { final WebSocketPolicy currentPolicy = session.getPolicy(); currentPolicy.setInputBufferSize(service.configuredPolicy.getInputBufferSize()); currentPolicy.setMaxTextMessageSize(service.configuredPolicy.getMaxTextMessageSize()); currentPolicy.setMaxBinaryMessageSize(service.configuredPolicy.getMaxBinaryMessageSize()); super.onWebSocketConnect(session); } };
@Override public void init(FilterConfig filterConfig) throws ServletException { super.init(filterConfig); try { WebSocketPolicy serverPolicy = WebSocketPolicy.newServerPolicy(); String inputBufferSize = filterConfig.getInitParameter("inputBufferSize"); if (inputBufferSize != null) { serverPolicy.setInputBufferSize(Integer.parseInt(inputBufferSize)); } String idleTimeout = filterConfig.getInitParameter("idleTimeout"); if (idleTimeout != null) { serverPolicy.setIdleTimeout(Integer.parseInt(idleTimeout)); } String maxTextMessageSize = filterConfig.getInitParameter("maxTextMessageSize"); if (maxTextMessageSize != null) { serverPolicy.setMaxTextMessageSize(Integer.parseInt(maxTextMessageSize)); } webSocketFactory = new WebSocketServerFactory(filterConfig.getServletContext(), serverPolicy); webSocketFactory.setCreator((request, response) -> createWebSocketAdapter(request)); webSocketFactory.start(); } catch (ServletException e) { throw e; } catch (Exception e) { throw new ServletException(e); } }
@Override public void setInputBufferSize(int size) { delegated.setInputBufferSize(size); }
@Override public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) { SpringWSHandler springPlease = new SpringWSHandler(); registry.addHandler(springPlease, "/websocket").setHandshakeHandler(factoryBean()); } //Configure buffer size and timeouts @Bean public HandshakeHandler factoryBean() { WebSocketPolicy policy = new WebSocketPolicy(WebSocketBehavior.SERVER); policy.setInputBufferSize(8192); policy.setIdleTimeout(3600000); WebSocketServerFactory factory = new WebSocketServerFactory(policy); return new DefaultHandshakeHandler(new JettyRequestUpgradeStrategy(factory)); }
if (max != null) policy.setInputBufferSize(Integer.parseInt(max));
if (max != null) policy.setInputBufferSize(Integer.parseInt(max));
if (max != null) getFactory().getPolicy().setInputBufferSize(Integer.parseInt(max));
public AnnotatedEventDriver(WebSocketPolicy policy, Object websocket, EventMethods events) { super(policy,websocket); this.events = events; WebSocket anno = websocket.getClass().getAnnotation(WebSocket.class); // Setup the policy if (anno.maxMessageSize() > 0) { this.policy.setMaxMessageSize(anno.maxMessageSize()); } if (anno.inputBufferSize() > 0) { this.policy.setInputBufferSize(anno.inputBufferSize()); } if (anno.maxIdleTime() > 0) { this.policy.setIdleTimeout(anno.maxIdleTime()); } }
if (max != null) policy.setInputBufferSize(Integer.parseInt(max));
public AnnotatedEventDriver(WebSocketPolicy policy, Object websocket, EventMethods events) { super(policy,websocket); this.events = events; WebSocket anno = websocket.getClass().getAnnotation(WebSocket.class); // Setup the policy if (anno.maxMessageSize() > 0) { this.policy.setMaxMessageSize(anno.maxMessageSize()); } if (anno.inputBufferSize() > 0) { this.policy.setInputBufferSize(anno.inputBufferSize()); } if (anno.maxIdleTime() > 0) { this.policy.setIdleTimeout(anno.maxIdleTime()); } }
public JettyAnnotatedEventDriver(WebSocketPolicy policy, Object websocket, JettyAnnotatedMetadata events) { super(policy,websocket); this.events = events; WebSocket anno = websocket.getClass().getAnnotation(WebSocket.class); // Setup the policy if (anno.maxTextMessageSize() > 0) { this.policy.setMaxTextMessageSize(anno.maxTextMessageSize()); } if (anno.maxBinaryMessageSize() > 0) { this.policy.setMaxBinaryMessageSize(anno.maxBinaryMessageSize()); } if (anno.inputBufferSize() > 0) { this.policy.setInputBufferSize(anno.inputBufferSize()); } if (anno.maxIdleTime() > 0) { this.policy.setIdleTimeout(anno.maxIdleTime()); } this.batchMode = anno.batchMode(); }
@Override public void configure(final WebSocketServletFactory factory) { factory.setCreator(this); factory.getPolicy() .setMaxTextMessageSize(config.getWebsocketMaxTextMessageSize()); factory.getPolicy() .setMaxBinaryMessageSize(config.getWebsocketMaxBinaryMessageSize()); factory.getPolicy().setMaxBinaryMessageBufferSize( config.getWebsocketMaxBinaryMessageBufferSize()); factory.getPolicy().setMaxTextMessageBufferSize( config.getWebsocketMaxTextMessageBufferSize()); factory.getPolicy() .setInputBufferSize(config.getWebsocketInputBufferSize()); factory.getPolicy() .setAsyncWriteTimeout(config.getWebsocketAsyncWriteTimeout()); factory.getPolicy().setIdleTimeout(config.getWebsocketIdleTimeout()); }
@Override public void configure(final WebSocketServletFactory factory) { factory.setCreator(this); factory.getPolicy() .setMaxTextMessageSize(config.getWebsocketMaxTextMessageSize()); factory.getPolicy() .setMaxBinaryMessageSize(config.getWebsocketMaxBinaryMessageSize()); factory.getPolicy().setMaxBinaryMessageBufferSize( config.getWebsocketMaxBinaryMessageBufferSize()); factory.getPolicy().setMaxTextMessageBufferSize( config.getWebsocketMaxTextMessageBufferSize()); factory.getPolicy() .setInputBufferSize(config.getWebsocketInputBufferSize()); factory.getPolicy() .setAsyncWriteTimeout(config.getWebsocketAsyncWriteTimeout()); factory.getPolicy().setIdleTimeout(config.getWebsocketIdleTimeout()); }