ClientSession constructor
ClientSession({
- required String id,
- required TransportConnection connection,
- required CRDTServerRegistry serverRegistry,
- Compressor? compressor,
Constructor
Implementation
ClientSession({
required this.id,
required TransportConnection connection,
required CRDTServerRegistry serverRegistry,
Compressor? compressor,
}) : _connection = connection,
_serverRegistry = serverRegistry,
_sessionEventController = StreamController<SessionEvent>.broadcast(),
_messageCodec = CompressedCodec<Message>(
JsonMessageCodec<Message>(
toJson: (message) => message.toJson(),
fromJson: Message.fromJson,
),
compressor: compressor ?? NoCompression.instance,
) {
_connection.incoming.listen(
_handleData,
onError: _handleConnectionError,
onDone: _handleConnectionClosed,
);
_startHeartbeatMonitoring();
}