web_socket_relay_client library

WebSocket relay client library for CRDT Socket Sync.

Classes

AwarenessMessage
base class for awareness messages
AwarenessQueryMessage
message to query the awareness state
AwarenessStateMessage
message with the awareness state
AwarenessUpdateMessage
message to update the awareness state
CapabilityMismatch
One reason a build cannot handle what another peer holds.
ClientAwareness
Client awareness state
ClientAwarenessPlugin
Client awareness plugin
ClientSyncPlugin
Base class for all client plugins.
CompressedCodec<T>
Codec for messages with optional compression
Compressor
Interface for data compression
DocumentAwareness
Document awareness state
ErrorMessage
Error message.
JsonMessageCodec<T>
A message codec that uses JSON for serialization.
Message
Base class for all messages exchanged over a connection.
MessageCodec<T>
Interface for encoding and decoding messages
MessageTypeValue
Marker interface for a message type's integer code.
MissingOperationKind
An operation kind the other peer holds and this build cannot decode.
NoCompression
No compression implementation
OutboundQueue
A serialized, byte-bounded outbound send queue.
PingMessage
Ping message to check the connection.
PluginAwareMessageCodec
The codec of the protocol plus one per plugin, picked by message type.
PongMessage
Pong message.
Protocol
Class that handles the communication protocol.
RelayAckMessage
Acknowledgement of a RelayPushMessage, relay to client.
RelayChangesMessage
Change blobs rebroadcast from relay to the other clients in the room.
RelayHelloMessage
Join request sent from client to relay after connecting.
RelayMessage
Base class for relay messages.
RelayProtocol
Constants of the relay protocol.
RelayPushMessage
Change blobs pushed from client to relay.
RelaySnapshotUploadMessage
Snapshot uploaded from client to relay to compact the room log.
RelaySocketClient
Interface for a relay client.
RelayStateRequestMessage
Request the current room state, client to relay.
RelaySyncManager
Keeps a CRDTDocument and a relay client in step.
RelayWelcomeMessage
Join response sent from relay to client.
SnapshotBlobOutOfRange
A snapshot blob outside the range of layouts this build reads.
SnapshotBlobTooNew
A blob written by a build newer than this one; only a newer build reads it.
SnapshotBlobTooOld
A blob in a layout this build no longer reads.
SyncCapabilities
A DocumentCapabilities on the wire.
SyncFault
Something the client could not do with what the server sent.
SyncIncompatibility
Why the server refused this client build.
SyncPlugin
Base class for all server and client plugins.
Transport
An interface for transporting messages, define the methods necessary to send and receive messages, independently from the underlying transport mechanism.
TransportConnection
An interface for transporting messages, define the methods necessary to send and receive messages, independently from the underlying transport mechanism.
TransportConnector
An interface for the transport connection
UnknownHandlerType
A handler type the other peer holds and this build says nothing about.
WebSocketRelayClient
RelaySocketClient implementation using web socket.

Enums

AwarenessMessageType
Awareness message types
ConnectionStatus
Enum that represents the status of the connection
MessageType
Core protocol message types (range 0-19).
RelayMessageType
Relay message types (range 20-39).

Exceptions / Errors

OutboundBufferOverflow
Thrown when an OutboundQueue would exceed its byte bound.