FirebaseStorageDataManager constructor

FirebaseStorageDataManager()

Implementation

FirebaseStorageDataManager() : super() {
  // Create a [FileDataManager] and wrap it.
  fileDataManager = new FileDataManager();

  // merge the file data manager's events into this CARP data manager's event stream
  fileDataManager.events.forEach((event) => controller.add(event));

  // listen to data manager events, but only those from the file manager and
  // only closing events on a close event, upload the file to CARP
  fileDataManager.events
      .where((event) => event.runtimeType == FileDataManagerEvent)
      .where((event) => event.type == FileDataManagerEventTypes.FILE_CLOSED)
      .listen((event) =>
          _uploadFileToFirestore((event as FileDataManagerEvent).path));
}