instanceFor static method

FirebaseFirestore instanceFor({
  1. required FirebaseApp app,
  2. @Deprecated('`databaseURL` has been deprecated. Please use `databaseId` instead.') String? databaseURL,
  3. String? databaseId,
})

Returns an instance using a specified FirebaseApp.

Implementation

static FirebaseFirestore instanceFor({
  required FirebaseApp app,
  @Deprecated(
    '`databaseURL` has been deprecated. Please use `databaseId` instead.',
  )
  String? databaseURL,
  String? databaseId,
}) {
  String firestoreDatabaseId = databaseId ?? databaseURL ?? '(default)';
  String cacheKey = '${app.name}|$firestoreDatabaseId';
  if (_cachedInstances.containsKey(cacheKey)) {
    return _cachedInstances[cacheKey]!;
  }

  FirebaseFirestore newInstance =
      // Both databaseURL and databaseId are required so we have to pass both for now. We can remove databaseURL in a future release.
      FirebaseFirestore._(
    app: app,
    databaseURL: firestoreDatabaseId,
    databaseId: firestoreDatabaseId,
  );
  _cachedInstances[cacheKey] = newInstance;

  return newInstance;
}