Class MessageInputStream
java.lang.Object
java.io.InputStream
org.eclipse.jetty.websocket.core.messages.MessageInputStream
- All Implemented Interfaces:
Closeable
,AutoCloseable
,MessageSink
Support class for reading a WebSocket BINARY message via a InputStream.
An InputStream that can access a queue of ByteBuffer payloads, along with expected InputStream blocking behavior.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Consumes the WebSocket frame, possibly asynchronously when this method has returned.void
close()
void
Fails thisMessageSink
with the given cause.int
read()
int
read
(byte[] b, int off, int len) int
read
(ByteBuffer buffer) void
setTimeout
(long timeoutMs) Methods inherited from class java.io.InputStream
available, mark, markSupported, nullInputStream, read, readAllBytes, readNBytes, readNBytes, reset, skip, skipNBytes, transferTo
-
Constructor Details
-
MessageInputStream
-
-
Method Details
-
accept
Description copied from interface:MessageSink
Consumes the WebSocket frame, possibly asynchronously when this method has returned.
The callback argument must be completed when the frame payload is consumed.
The demand for more frames must be explicitly invoked, or arranged to be invoked asynchronously, by the implementation of this method, by calling
CoreSession.demand()
.- Specified by:
accept
in interfaceMessageSink
- Parameters:
frame
- the frame to consumecallback
- the callback to complete when the frame is consumed
-
read
- Specified by:
read
in classInputStream
- Throws:
IOException
-
read
- Overrides:
read
in classInputStream
- Throws:
IOException
-
read
- Throws:
IOException
-
fail
Description copied from interface:MessageSink
Fails this
MessageSink
with the given cause.- Specified by:
fail
in interfaceMessageSink
- Parameters:
failure
- the cause of the failure
-
close
public void close()- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Overrides:
close
in classInputStream
-
setTimeout
public void setTimeout(long timeoutMs)
-