streamDocument method

Stream<Document?> streamDocument(
  1. String path
)

Implementation

Stream<Document?> streamDocument(String path) {
  if (_listenRequestStreamMap.containsKey(path)) {
    return _mapDocumentStream(_listenRequestStreamMap[path]!);
  }

  final documentsTarget = Target_DocumentsTarget()..documents.add(path);
  final target = Target()..documents = documentsTarget;
  final request = ListenRequest()
    ..database = database
    ..addTarget = target;

  final listenRequestStream = _FirestoreGatewayStreamCache(
      onDone: _handleDone, userInfo: path, onError: _handleError);
  _listenRequestStreamMap[path] = listenRequestStream;

  listenRequestStream.setListenRequest(request, _client, database);

  return _mapDocumentStream(listenRequestStream);
}