Skip to content

Interface ICompleteMessageStream

Namespace: Void.Proxy.Api.Network.Streams.Manual.Binary
Assembly: Void.Proxy.Api.dll

Defines framed I/O operations in which each read or write handles one complete binary message.

public interface ICompleteMessageStream : IMessageStream, IMessageStreamBase, IDisposable, IAsyncDisposable

Implements

IMessageStream, IMessageStreamBase, IDisposable, IAsyncDisposable

Methods

ReadMessage()

Reads the next complete message from the stream.

ICompleteBinaryMessage ReadMessage()

Returns

ICompleteBinaryMessage

The next complete message. The caller owns and must dispose the returned message.

ReadMessageAsync(CancellationToken)

Asynchronously reads the next complete message from the stream.

ValueTask<ICompleteBinaryMessage> ReadMessageAsync(CancellationToken cancellationToken = default)

Parameters

cancellationToken CancellationToken

A token used to cancel the read.

Returns

ValueTask<ICompleteBinaryMessage>

The next complete message. The caller owns and must dispose the returned message.

WriteMessage(ICompleteBinaryMessage)

Writes one complete message to the stream.

void WriteMessage(ICompleteBinaryMessage message)

Parameters

message ICompleteBinaryMessage

The message to write.

WriteMessageAsync(ICompleteBinaryMessage, CancellationToken)

Asynchronously writes one complete message to the stream.

ValueTask WriteMessageAsync(ICompleteBinaryMessage message, CancellationToken cancellationToken = default)

Parameters

message ICompleteBinaryMessage

The message to write.

cancellationToken CancellationToken

A token used to cancel the write.

Returns

ValueTask

A task that completes when the message has been written.