Package org.miaixz.bus.http.socket
Class RealWebSocket
java.lang.Object
org.miaixz.bus.http.socket.RealWebSocket
- All Implemented Interfaces:
WebSocket,WebSocketReader.FrameCallback
- Since:
- Java 17+
- Author:
- Kimi Liu
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from interface org.miaixz.bus.http.socket.WebSocket
WebSocket.Factory -
Constructor Summary
ConstructorsConstructorDescriptionRealWebSocket(Request request, WebSocketListener listener, Random random, long pingIntervalMillis) -
Method Summary
Modifier and TypeMethodDescriptionvoidcancel()立即并强烈地释放这个web套接字持有的资源,丢弃任何排队的消息 如果web套接字已经关闭或取消,则此操作不执行任何操作boolean尝试启动此web套接字的正常关闭。voidvoidfailWebSocket(Exception e, Response response) voidinitReaderAndWriter(String name, RealWebSocket.Streams streams) voidReceive frames until there are no more.voidonReadClose(int code, String reason) voidonReadMessage(String text) voidonReadMessage(org.miaixz.bus.core.io.ByteString bytes) voidonReadPing(org.miaixz.bus.core.io.ByteString payload) voidonReadPong(org.miaixz.bus.core.io.ByteString buffer) longrequest()boolean尝试将text编码为UTF-8并将其作为文本(类型为0x1)消息的数据发送 如果消息被加入队列,此方法将返回true。booleansend(org.miaixz.bus.core.io.ByteString bytes) 尝试将bytes作为二进制(类型为0x2)消息的数据发送 如果消息被加入队列,此方法将返回true。
-
Constructor Details
-
RealWebSocket
public RealWebSocket(Request request, WebSocketListener listener, Random random, long pingIntervalMillis)
-
-
Method Details
-
request
-
queueSize
public long queueSize() -
cancel
public void cancel()Description copied from interface:WebSocket立即并强烈地释放这个web套接字持有的资源,丢弃任何排队的消息 如果web套接字已经关闭或取消,则此操作不执行任何操作 -
connect
-
initReaderAndWriter
-
loopReader
Receive frames until there are no more. Invoked only by the reader thread.- Throws:
IOException
-
onReadMessage
- Specified by:
onReadMessagein interfaceWebSocketReader.FrameCallback
-
onReadMessage
public void onReadMessage(org.miaixz.bus.core.io.ByteString bytes) - Specified by:
onReadMessagein interfaceWebSocketReader.FrameCallback
-
onReadPing
public void onReadPing(org.miaixz.bus.core.io.ByteString payload) - Specified by:
onReadPingin interfaceWebSocketReader.FrameCallback
-
onReadPong
public void onReadPong(org.miaixz.bus.core.io.ByteString buffer) - Specified by:
onReadPongin interfaceWebSocketReader.FrameCallback
-
onReadClose
- Specified by:
onReadClosein interfaceWebSocketReader.FrameCallback
-
send
Description copied from interface:WebSocket尝试将text编码为UTF-8并将其作为文本(类型为0x1)消息的数据发送 如果消息被加入队列,此方法将返回true。将溢出传出消息缓冲区的消息将被拒绝, 并触发此web套接字的graceful shutdown。此方法在这种情况下返回false, 在此web套接字关闭、关闭或取消的任何其他情况下也返回false -
send
public boolean send(org.miaixz.bus.core.io.ByteString bytes) Description copied from interface:WebSocket尝试将bytes作为二进制(类型为0x2)消息的数据发送 如果消息被加入队列,此方法将返回true。将溢出传出消息缓冲区(16 MiB)的消息将被拒绝, 并触发此web套接字的graceful shutdown。此方法在这种情况下返回false, 在此web套接字关闭、关闭或取消的任何其他情况下也返回false -
close
Description copied from interface:WebSocket尝试启动此web套接字的正常关闭。任何已加入队列的消息将在发送关闭消息之前发送, 但是随后对WebSocket.send(java.lang.String)的调用将返回false,它们的消息将不被加入队列 -
failWebSocket
-