Class WebSocketPolicy

java.lang.Object
org.eclipse.jetty.websocket.api.WebSocketPolicy
Direct Known Subclasses:
WebSocketPolicy.Delegated

public class WebSocketPolicy extends Object
Settings for WebSocket operations.
  • Field Details

    • KB

      private static final int KB
      See Also:
    • maxTextMessageSize

      private int maxTextMessageSize
      The maximum size of a text message during parsing/generating.

      Text messages over this maximum will result in a close code 1009 StatusCode.MESSAGE_TOO_LARGE

      Default: 65536 (64 K)

    • maxTextMessageBufferSize

      private int maxTextMessageBufferSize
      The maximum size of a text message buffer.

      Used ONLY for stream based message writing.

      Default: 32768 (32 K)

    • maxBinaryMessageSize

      private int maxBinaryMessageSize
      The maximum size of a binary message during parsing/generating.

      Binary messages over this maximum will result in a close code 1009 StatusCode.MESSAGE_TOO_LARGE

      Default: 65536 (64 K)

    • maxBinaryMessageBufferSize

      private int maxBinaryMessageBufferSize
      The maximum size of a binary message buffer

      Used ONLY for for stream based message writing

      Default: 32768 (32 K)

    • asyncWriteTimeout

      private long asyncWriteTimeout
      The timeout in ms (milliseconds) for async write operations.

      Negative values indicate a disabled timeout.

    • idleTimeout

      private long idleTimeout
      The time in ms (milliseconds) that a websocket may be idle before closing.

      Default: 300000 (ms)

    • inputBufferSize

      private int inputBufferSize
      The size of the input (read from network layer) buffer size.

      Default: 4096 (4 K)

    • behavior

      private final WebSocketBehavior behavior
      Behavior of the websockets
  • Constructor Details

  • Method Details

    • newClientPolicy

      public static WebSocketPolicy newClientPolicy()
    • newServerPolicy

      public static WebSocketPolicy newServerPolicy()
    • assertLessThan

      private void assertLessThan(String name, long size, String otherName, long otherSize)
    • assertGreaterThan

      private void assertGreaterThan(String name, long size, long minSize)
    • assertValidBinaryMessageSize

      public void assertValidBinaryMessageSize(int requestedSize)
    • assertValidTextMessageSize

      public void assertValidTextMessageSize(int requestedSize)
    • clonePolicy

      public WebSocketPolicy clonePolicy()
      Make a copy of the policy, with current values.
      Returns:
      the cloned copy of the policy.
    • clonePolicy

      @Deprecated public WebSocketPolicy clonePolicy(WebSocketBehavior behavior)
      Deprecated.
      Make a copy of the policy, with current values, but a different behavior.
      Parameters:
      behavior - the behavior to copy/clone
      Returns:
      the cloned policy with a new behavior.
    • delegateAs

      public WebSocketPolicy delegateAs(WebSocketBehavior behavior)
    • getAsyncWriteTimeout

      @Deprecated public long getAsyncWriteTimeout()
      Deprecated.
      The timeout in ms (milliseconds) for async write operations.

      Negative values indicate a disabled timeout.

      Returns:
      the timeout for async write operations. negative values indicate disabled timeout.
    • getBehavior

      public WebSocketBehavior getBehavior()
    • getIdleTimeout

      public long getIdleTimeout()
      The time in ms (milliseconds) that a websocket connection may be idle before being closed automatically.
      Returns:
      the timeout in milliseconds for idle timeout.
    • getInputBufferSize

      public int getInputBufferSize()
      The size of the input (read from network layer) buffer size.

      This is the raw read operation buffer size, before the parsing of the websocket frames.

      Returns:
      the raw network bytes read operation buffer size.
    • getMaxBinaryMessageBufferSize

      public int getMaxBinaryMessageBufferSize()
      Get the maximum size of a binary message buffer (for streaming writing)
      Returns:
      the maximum size of a binary message buffer
    • getMaxBinaryMessageSize

      public int getMaxBinaryMessageSize()
      Get the maximum size of a binary message during parsing.

      This is a memory conservation option, memory over this limit will not be allocated by Jetty for handling binary messages. This applies to individual frames, whole message handling, and partial message handling.

      Binary messages over this maximum will result in a close code 1009 StatusCode.MESSAGE_TOO_LARGE

      Returns:
      the maximum size of a binary message
    • getMaxTextMessageBufferSize

      public int getMaxTextMessageBufferSize()
      Get the maximum size of a text message buffer (for streaming writing)
      Returns:
      the maximum size of a text message buffer
    • getMaxTextMessageSize

      public int getMaxTextMessageSize()
      Get the maximum size of a text message during parsing.

      This is a memory conservation option, memory over this limit will not be allocated by Jetty for handling text messages. This applies to individual frames, whole message handling, and partial message handling.

      Text messages over this maximum will result in a close code 1009 StatusCode.MESSAGE_TOO_LARGE

      Returns:
      the maximum size of a text message.
    • setAsyncWriteTimeout

      public void setAsyncWriteTimeout(long ms)
      The timeout in ms (milliseconds) for async write operations.

      Negative values indicate a disabled timeout.

      Parameters:
      ms - the timeout in milliseconds
    • setIdleTimeout

      public void setIdleTimeout(long ms)
      The time in ms (milliseconds) that a websocket may be idle before closing.
      Parameters:
      ms - the timeout in milliseconds
    • setInputBufferSize

      public void setInputBufferSize(int size)
      The size of the input (read from network layer) buffer size.
      Parameters:
      size - the size in bytes
    • setMaxBinaryMessageBufferSize

      public void setMaxBinaryMessageBufferSize(int size)
      The maximum size of a binary message buffer.

      Used ONLY for stream based binary message writing.

      Parameters:
      size - the maximum size of the binary message buffer
    • setMaxBinaryMessageSize

      public void setMaxBinaryMessageSize(int size)
      The maximum size of a binary message during parsing.

      This is a memory conservation option, memory over this limit will not be allocated by Jetty for handling binary messages. This applies to individual frames, whole message handling, and partial message handling.

      Binary messages over this maximum will result in a close code 1009 StatusCode.MESSAGE_TOO_LARGE

      Parameters:
      size - the maximum allowed size of a binary message.
    • setMaxTextMessageBufferSize

      public void setMaxTextMessageBufferSize(int size)
      The maximum size of a text message buffer.

      Used ONLY for stream based text message writing.

      Parameters:
      size - the maximum size of the text message buffer
    • setMaxTextMessageSize

      public void setMaxTextMessageSize(int size)
      The maximum size of a text message during parsing.

      This is a memory conservation option, memory over this limit will not be allocated by Jetty for handling text messages. This applies to individual frames, whole message handling, and partial message handling.

      Text messages over this maximum will result in a close code 1009 StatusCode.MESSAGE_TOO_LARGE

      Parameters:
      size - the maximum allowed size of a text message.
    • toString

      public String toString()
      Overrides:
      toString in class Object