javax.websocket

## Enum CloseReason.CloseCodes

- java.lang.Object
- - java.lang.Enum<CloseReason.CloseCodes>
  - - javax.websocket.CloseReason.CloseCodes

- All Implemented Interfaces:
    Serializable, Comparable<CloseReason.CloseCodes>, CloseReason.CloseCode
  Enclosing class:
    CloseReason

      public static enum CloseReason.CloseCodes
      extends Enum<CloseReason.CloseCodes>
      implements CloseReason.CloseCode

  An Enumeration of status codes for a web socket close that are defined in the specification.

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant and Description
    `CANNOT_ACCEPT` 1003 indicates that an endpoint is terminating the connection because it has received a type of data it cannot accept (e.g., an endpoint that understands only text data MAY send this if it receives a binary message).
    `CLOSED_ABNORMALLY` 1006 is a reserved value and MUST NOT be set as a status code in a Close control frame by an endpoint.
    `GOING_AWAY` 1001 indicates that an endpoint is "going away", such as a server going down or a browser having navigated away from a page.
    `NO_EXTENSION` 1010 indicates that an endpoint (client) is terminating the connection because it has expected the server to negotiate one or more extension, but the server didn't return them in the response message of the WebSocket handshake.
    `NO_STATUS_CODE` 1005 is a reserved value and MUST NOT be set as a status code in a Close control frame by an endpoint.
    `NORMAL_CLOSURE` 1000 indicates a normal closure, meaning that the purpose for which the connection was established has been fulfilled.
    `NOT_CONSISTENT` 1007 indicates that an endpoint is terminating the connection because it has received data within a message that was not consistent with the type of the message (e.g., non-UTF-8 data within a text message).
    `PROTOCOL_ERROR` 1002 indicates that an endpoint is terminating the connection due to a protocol error.
    `RESERVED` Reserved.
    `SERVICE_RESTART` 1012 indicates that the service will be restarted.
    `TLS_HANDSHAKE_FAILURE` 1015 is a reserved value and MUST NOT be set as a status code in a Close control frame by an endpoint.
    `TOO_BIG` 1009 indicates that an endpoint is terminating the connection because it has received a message that is too big for it to process.
    `TRY_AGAIN_LATER` 1013 indicates that the service is experiencing overload
    `UNEXPECTED_CONDITION` 1011 indicates that a server is terminating the connection because it encountered an unexpected condition that prevented it from fulfilling the request.
    `VIOLATED_POLICY` 1008 indicates that an endpoint is terminating the connection because it has received a message that violates its policy.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static CloseReason.CloseCode` | `getCloseCode(int code)` Creates a CloseCode from the given int code number.
    `int` | `getCode()` Return the code number of this status code.
    `static CloseReason.CloseCodes` | `valueOf(String name)` Returns the enum constant of this type with the specified name.
    `static CloseReason.CloseCodes[]` | `values()` Returns an array containing the constants of this enum type, in the order they are declared.

    - ### Methods inherited from class java.lang.Enum

      `clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Enum Constant Detail

    - #### NORMAL_CLOSURE

          public static final CloseReason.CloseCodes NORMAL_CLOSURE

      1000 indicates a normal closure, meaning that the purpose for which the connection was established has been fulfilled.

    - #### GOING_AWAY

          public static final CloseReason.CloseCodes GOING_AWAY

      1001 indicates that an endpoint is "going away", such as a server going down or a browser having navigated away from a page.

    - #### PROTOCOL_ERROR

          public static final CloseReason.CloseCodes PROTOCOL_ERROR

      1002 indicates that an endpoint is terminating the connection due to a protocol error.

    - #### CANNOT_ACCEPT

          public static final CloseReason.CloseCodes CANNOT_ACCEPT

      1003 indicates that an endpoint is terminating the connection because it has received a type of data it cannot accept (e.g., an endpoint that understands only text data MAY send this if it receives a binary message).

    - #### RESERVED

          public static final CloseReason.CloseCodes RESERVED

      Reserved. The specific meaning might be defined in the future.

    - #### NO_STATUS_CODE

          public static final CloseReason.CloseCodes NO_STATUS_CODE

      1005 is a reserved value and MUST NOT be set as a status code in a Close control frame by an endpoint. It is designated for use in applications expecting a status code to indicate that no status code was actually present.

    - #### CLOSED_ABNORMALLY

          public static final CloseReason.CloseCodes CLOSED_ABNORMALLY

      1006 is a reserved value and MUST NOT be set as a status code in a Close control frame by an endpoint. It is designated for use in applications expecting a status code to indicate that the connection was closed abnormally, e.g., without sending or receiving a Close control frame.

    - #### NOT_CONSISTENT

          public static final CloseReason.CloseCodes NOT_CONSISTENT

      1007 indicates that an endpoint is terminating the connection because it has received data within a message that was not consistent with the type of the message (e.g., non-UTF-8 data within a text message).

    - #### VIOLATED_POLICY

          public static final CloseReason.CloseCodes VIOLATED_POLICY

      1008 indicates that an endpoint is terminating the connection because it has received a message that violates its policy. This is a generic status code that can be returned when there is no other more suitable status code (e.g., 1003 or 1009) or if there is a need to hide specific details about the policy.

    - #### TOO_BIG

          public static final CloseReason.CloseCodes TOO_BIG

      1009 indicates that an endpoint is terminating the connection because it has received a message that is too big for it to process.

    - #### NO_EXTENSION

          public static final CloseReason.CloseCodes NO_EXTENSION

      1010 indicates that an endpoint (client) is terminating the connection because it has expected the server to negotiate one or more extension, but the server didn't return them in the response message of the WebSocket handshake. The list of extensions that are needed SHOULD appear in the /reason/ part of the Close frame. Note that this status code is not used by the server, because it can fail the WebSocket handshake instead.

    - #### UNEXPECTED_CONDITION

          public static final CloseReason.CloseCodes UNEXPECTED_CONDITION

      1011 indicates that a server is terminating the connection because it encountered an unexpected condition that prevented it from fulfilling the request.

    - #### SERVICE_RESTART

          public static final CloseReason.CloseCodes SERVICE_RESTART

      1012 indicates that the service will be restarted.

    - #### TRY_AGAIN_LATER

          public static final CloseReason.CloseCodes TRY_AGAIN_LATER

      1013 indicates that the service is experiencing overload

    - #### TLS_HANDSHAKE_FAILURE

          public static final CloseReason.CloseCodes TLS_HANDSHAKE_FAILURE

      1015 is a reserved value and MUST NOT be set as a status code in a Close control frame by an endpoint. It is designated for use in applications expecting a status code to indicate that the connection was closed due to a failure to perform a TLS handshake (e.g., the server certificate can't be verified).

  - ### Method Detail

    - #### values

          public static CloseReason.CloseCodes[] values()

      Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

          for (CloseReason.CloseCodes c : CloseReason.CloseCodes.values())
              System.out.println(c);

      Returns:
        an array containing the constants of this enum type, in the order they are declared

    - #### valueOf

          public static CloseReason.CloseCodes valueOf(String name)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
        `name` - the name of the enum constant to be returned.
      Returns:
        the enum constant with the specified name
      Throws:
        `IllegalArgumentException` - if this enum type has no constant with the specified name
        `NullPointerException` - if the argument is null

    - #### getCloseCode

          public static CloseReason.CloseCode getCloseCode(int code)

      Creates a CloseCode from the given int code number. This method throws an IllegalArgumentException if the int is not one of the
      Parameters:
        `code` - the integer code number
      Returns:
        a new CloseCode with the given code number
      Throws:
        `IllegalArgumentException` - if the code is not a valid close code

    - #### getCode

          public int getCode()

      Return the code number of this status code.
      Specified by:
        `getCode` in interface `CloseReason.CloseCode`
      Returns:
        the code.

Copyright © 1996-2013, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.