CircuitConnection constructor

CircuitConnection({
  1. required P2PStream<Uint8List> stream,
  2. required PeerId localPeerId,
  3. required PeerId remotePeerId,
  4. required MultiAddr remoteAddr,
  5. required ConnManager manager,
})

Implementation

CircuitConnection({
  required P2PStream<Uint8List> stream,
  required PeerId localPeerId,
  required PeerId remotePeerId,
  required MultiAddr remoteAddr,
  required ConnManager manager,
})  : _stream = stream,
      _localPeerId = localPeerId,
      _remotePeerId = remotePeerId,
      _remoteAddr = remoteAddr,
      _manager = manager,
      _id = 'circuit-${DateTime.now().millisecondsSinceEpoch}' {
  // Register with the manager
  _manager.registerConnection(this);

  // Monitor stream for closure
  _stream.incoming.read().then((data) {
    // Handle incoming data
    _manager.recordActivity(this);
  }).catchError((e) {
    _handleError(e);
  });
}