Ether Framework
Unified API docs for Ether modules
Loading...
Searching...
No Matches
WebSocketCloseStatus.java
Go to the documentation of this file.
1
package
dev.rafex.ether.websocket.core;
2
3
/*-
4
* #%L
5
* ether-websocket-core
6
* %%
7
* Copyright (C) 2025 - 2026 Raúl Eduardo González Argote
8
* %%
9
* Permission is hereby granted, free of charge, to any person obtaining a copy
10
* of this software and associated documentation files (the "Software"), to deal
11
* in the Software without restriction, including without limitation the rights
12
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13
* copies of the Software, and to permit persons to whom the Software is
14
* furnished to do so, subject to the following conditions:
15
*
16
* The above copyright notice and this permission notice shall be included in
17
* all copies or substantial portions of the Software.
18
*
19
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
25
* THE SOFTWARE.
26
* #L%
27
*/
28
29
/**
30
* Representa un estado de cierre de una conexión WebSocket conforme a la especificación RFC 6455.
31
* Cada estado se compone de un código numérico y una razón descriptiva.
32
*/
33
public
record
WebSocketCloseStatus
(
int
code, String reason) {
34
35
/** Cierre normal: la conexión se completó con éxito. */
36
public
static
final
WebSocketCloseStatus
NORMAL =
new
WebSocketCloseStatus
(1000,
"normal"
);
37
/** El punto de partida se aleja (el servidor se apaga o el cliente navega fuera). */
38
public
static
final
WebSocketCloseStatus
GOING_AWAY =
new
WebSocketCloseStatus
(1001,
"going_away"
);
39
/** La conexión se cierra debido a una violación del protocolo. */
40
public
static
final
WebSocketCloseStatus
PROTOCOL_ERROR =
new
WebSocketCloseStatus
(1002,
"protocol_error"
);
41
/** Se recibió un tipo de mensaje que no es aceptable. */
42
public
static
final
WebSocketCloseStatus
NOT_ACCEPTABLE =
new
WebSocketCloseStatus
(1003,
"not_acceptable"
);
43
/** Código reservado: no debe enviarse en frames de cierre. */
44
public
static
final
WebSocketCloseStatus
RESERVED_NO_STATUS =
new
WebSocketCloseStatus
(1005,
"no_status"
);
45
/** Código reservado: cierre anormal sin frame de cierre. */
46
public
static
final
WebSocketCloseStatus
RESERVED_ABNORMAL =
new
WebSocketCloseStatus
(1006,
"abnormal"
);
47
/** El contenido del frame no es consistente con el tipo esperado. */
48
public
static
final
WebSocketCloseStatus
INCONSISTENT_DATA =
new
WebSocketCloseStatus
(1007,
"inconsistent_data"
);
49
/** Violación de política (por ejemplo, acceso denegado). */
50
public
static
final
WebSocketCloseStatus
POLICY_VIOLATION =
new
WebSocketCloseStatus
(1008,
"policy_violation"
);
51
/** El mensaje es demasiado grande para ser procesado. */
52
public
static
final
WebSocketCloseStatus
MESSAGE_TOO_BIG =
new
WebSocketCloseStatus
(1009,
"message_too_big"
);
53
/** El cliente esperaba una extensión obligatoria que el servidor no negoció. */
54
public
static
final
WebSocketCloseStatus
MANDATORY_EXTENSION =
new
WebSocketCloseStatus
(1010,
"mandatory_extension"
);
55
/** El servidor encontró un error inesperado que impide continuar. */
56
public
static
final
WebSocketCloseStatus
SERVER_ERROR =
new
WebSocketCloseStatus
(1011,
"server_error"
);
57
58
public
WebSocketCloseStatus
{
59
reason = reason ==
null
?
""
: reason;
60
}
61
62
/**
63
* Crea un estado de cierre con el código y la razón especificados.
64
*
65
* @param code código de cierre numérico según RFC 6455
66
* @param reason descripción legible del motivo de cierre; se normaliza a cadena vacía si es {@code null}
67
* @return nueva instancia de {@code WebSocketCloseStatus}
68
*/
69
public
static
WebSocketCloseStatus
of(
final
int
code,
final
String reason) {
70
return
new
WebSocketCloseStatus
(code, reason);
71
}
72
}
dev.rafex.ether.websocket.core.WebSocketCloseStatus
record WebSocketCloseStatus(int code, String reason)
Representa un estado de cierre de una conexión WebSocket conforme a la especificación RFC 6455.
Definition
WebSocketCloseStatus.java:33
Generated by
1.16.1