# Enum Class CloseReason.CloseCodes

java.lang.Object
java.lang.Enum<CloseReason.CloseCodes>
jakarta.websocket.CloseReason.CloseCodes

All Implemented Interfaces:
  `CloseReason.CloseCode, Serializable, Comparable<CloseReason.CloseCodes>, Constable`

Enclosing class:
  `CloseReason`

public static enum CloseReason.CloseCodes extends Enum<CloseReason.CloseCodes> implements CloseReason.CloseCode
Standard WebSocket close codes as defined by RFC 6455 and related specifications.

## Nested Class Summary

### Nested classes/interfaces inherited from class Enum

`Enum.EnumDesc<E>`

## Enum Constant Summary

Enum Constants
Enum Constant
Description
`CANNOT_ACCEPT`
Indicates that the endpoint is terminating the connection because it has received a type of data it cannot accept.
`CLOSED_ABNORMALLY`
Indicates that the connection was closed abnormally without receiving a close frame.
`GOING_AWAY`
Indicates that the endpoint is going away, either because the browser is navigating away from the page, or because the server is shutting down.
`NO_EXTENSION`
Indicates that the client is terminating the connection because it expected the server to negotiate one or more extension, but the server didn't return them in the handshake response.
`NO_STATUS_CODE`
Indicates that no status code was included in the closing frame.
`NORMAL_CLOSURE`
Indicates a normal closure, meaning that the purpose for which the connection was established has been fulfilled.
`NOT_CONSISTENT`
Indicates that the endpoint is terminating the connection because it has received a message that contains data that is not consistent with the type of the message.
`PROTOCOL_ERROR`
Indicates that the endpoint is terminating the connection due to a protocol error.
`RESERVED`
Reserved.
`SERVICE_RESTART`
Indicates that the server is restarting.
`TLS_HANDSHAKE_FAILURE`
Indicates that the connection was closed due to a failure to perform a TLS handshake.
`TOO_BIG`
Indicates that the endpoint is terminating the connection because it has received a message that is too big to process.
`TRY_AGAIN_LATER`
Indicates that the server is experiencing a temporary condition and the client should try to connect again later.
`UNEXPECTED_CONDITION`
Indicates that the server is terminating the connection because it encountered an unexpected condition that prevented it from fulfilling the request.
`VIOLATED_POLICY`
Indicates that the endpoint is terminating the connection because it has received a message that violates its policy.

## Method Summary

Modifier and Type
Method
Description
`static CloseReason.CloseCode`
`getCloseCode(int code)`
Returns the `CloseReason.CloseCode` for the given numeric code value.
`int`
`getCode()`
Returns the numeric value of this close code.
`static CloseReason.CloseCodes`
`valueOf(String name)`
Returns the enum constant of this class with the specified name.
`static CloseReason.CloseCodes[]`
`values()`
Returns an array containing the constants of this enum class, in the order they are declared.

### Methods inherited from class Enum

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

### Methods inherited from class Object

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

## Enum Constant Details

### NORMAL_CLOSURE

public static final CloseReason.CloseCodes NORMAL_CLOSURE
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
Indicates that the endpoint is going away, either because the browser is navigating away from the page, or because the server is shutting down.

### PROTOCOL_ERROR

public static final CloseReason.CloseCodes PROTOCOL_ERROR
Indicates that the endpoint is terminating the connection due to a protocol error.

### CANNOT_ACCEPT

public static final CloseReason.CloseCodes CANNOT_ACCEPT
Indicates that the endpoint is terminating the connection because it has received a type of data it cannot accept.

### 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
Indicates that no status code was included in the closing frame. This value is reserved and must not be set as a status code in a Close control frame.

### CLOSED_ABNORMALLY

public static final CloseReason.CloseCodes CLOSED_ABNORMALLY
Indicates that the connection was closed abnormally without receiving a close frame. This value is reserved and must not be set as a status code in a Close control frame.

### NOT_CONSISTENT

public static final CloseReason.CloseCodes NOT_CONSISTENT
Indicates that the endpoint is terminating the connection because it has received a message that contains data that is not consistent with the type of the message.

### VIOLATED_POLICY

public static final CloseReason.CloseCodes VIOLATED_POLICY
Indicates that the endpoint is terminating the connection because it has received a message that violates its policy.

### TOO_BIG

public static final CloseReason.CloseCodes TOO_BIG
Indicates that the endpoint is terminating the connection because it has received a message that is too big to process.

### NO_EXTENSION

public static final CloseReason.CloseCodes NO_EXTENSION
Indicates that the client is terminating the connection because it expected the server to negotiate one or more extension, but the server didn't return them in the handshake response.

### UNEXPECTED_CONDITION

public static final CloseReason.CloseCodes UNEXPECTED_CONDITION
Indicates that the 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
Indicates that the server is restarting. A client may choose to reconnect.

### TRY_AGAIN_LATER

public static final CloseReason.CloseCodes TRY_AGAIN_LATER
Indicates that the server is experiencing a temporary condition and the client should try to connect again later.

### TLS_HANDSHAKE_FAILURE

public static final CloseReason.CloseCodes TLS_HANDSHAKE_FAILURE
Indicates that the connection was closed due to a failure to perform a TLS handshake. This value is reserved and must not be set as a status code in a Close control frame.

## Method Details

### values

public static CloseReason.CloseCodes[] values()
Returns an array containing the constants of this enum class, in the order they are declared.

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

### valueOf

public static CloseReason.CloseCodes valueOf(String name)
Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (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 class has no constant with the specified name
  `NullPointerException` - if the argument is null

### getCloseCode

public static CloseReason.CloseCode getCloseCode(int code)
Returns the `CloseReason.CloseCode` for the given numeric code value.

Parameters:
  `code` - The numeric close code value
Returns:
  The corresponding `CloseReason.CloseCode`
Throws:
  `IllegalArgumentException` - if the code is not a valid close code

### getCode

public int getCode()
Returns the numeric value of this close code.

Specified by:
  `getCode` in interface `CloseReason.CloseCode`
Returns:
  The numeric close code value