RelayClientSession constructor
RelayClientSession({
- required String id,
- required TransportConnection connection,
- required RelayStore store,
- required RelayCompactionCoordinator compaction,
- Compressor? compressor,
- MessageCodec<
Message> ? messageCodec, - int? maxBufferSize,
- List<
ServerSyncPlugin> plugins = const [],
Relay client session on server.
Implements the relay protocol on top of ClientSession: the session persists pushed change blobs in the RelayStore and serves the room state on join, without ever interpreting CRDT data.
Constructor
Implementation
RelayClientSession({
required super.id,
required super.connection,
required RelayStore store,
required RelayCompactionCoordinator compaction,
super.compressor,
MessageCodec<Message>? messageCodec,
super.maxBufferSize,
super.plugins,
}) : _store = store,
_compaction = compaction,
super.base(
messageCodec: messageCodec ??
JsonMessageCodec<Message>(
toJson: (message) => message.toJson(),
fromJson: (json) =>
RelayMessage.fromJson(json) ?? Message.fromJson(json),
),
);