|
74 | 74 | using firebase::firestore::util::Empty;
|
75 | 75 | using firebase::firestore::util::Executor;
|
76 | 76 | using firebase::firestore::util::ExecutorLibdispatch;
|
| 77 | +using firebase::firestore::util::kLogLevelDebug; |
| 78 | +using firebase::firestore::util::kLogLevelNotice; |
77 | 79 | using firebase::firestore::util::LogSetLevel;
|
78 | 80 | using firebase::firestore::util::MakeCallback;
|
79 | 81 | using firebase::firestore::util::MakeNSError;
|
|
83 | 85 | using firebase::firestore::util::SetThrowHandler;
|
84 | 86 | using firebase::firestore::util::Status;
|
85 | 87 | using firebase::firestore::util::StatusOr;
|
| 88 | +using firebase::firestore::util::StreamReadResult; |
86 | 89 | using firebase::firestore::util::ThrowIllegalState;
|
87 | 90 | using firebase::firestore::util::ThrowInvalidArgument;
|
88 |
| -using firebase::firestore::util::kLogLevelDebug; |
89 |
| -using firebase::firestore::util::kLogLevelNotice; |
90 |
| -using firebase::firestore::util::StreamReadResult; |
91 | 91 |
|
92 | 92 | using UserUpdateBlock = id _Nullable (^)(FIRTransaction *, NSError **);
|
93 | 93 | using UserTransactionCompletion = void (^)(id _Nullable, NSError *_Nullable);
|
@@ -128,23 +128,6 @@ + (instancetype)firestoreForApp:(FIRApp *)app {
|
128 | 128 | return [self firestoreForApp:app database:MakeNSString(DatabaseId::kDefault)];
|
129 | 129 | }
|
130 | 130 |
|
131 |
| -// TODO(b/62410906): make this public |
132 |
| -+ (instancetype)firestoreForApp:(FIRApp *)app database:(NSString *)database { |
133 |
| - if (!app) { |
134 |
| - ThrowInvalidArgument("FirebaseApp instance may not be nil. Use FirebaseApp.app() if you'd like " |
135 |
| - "to use the default FirebaseApp instance."); |
136 |
| - } |
137 |
| - if (!database) { |
138 |
| - ThrowInvalidArgument("Database identifier may not be nil. Use '%s' if you want the default " |
139 |
| - "database", |
140 |
| - DatabaseId::kDefault); |
141 |
| - } |
142 |
| - |
143 |
| - id<FSTFirestoreMultiDBProvider> provider = |
144 |
| - FIR_COMPONENT(FSTFirestoreMultiDBProvider, app.container); |
145 |
| - return [provider firestoreForDatabase:database]; |
146 |
| -} |
147 |
| - |
148 | 131 | - (instancetype)initWithDatabaseID:(model::DatabaseId)databaseID
|
149 | 132 | persistenceKey:(std::string)persistenceKey
|
150 | 133 | authCredentialsProvider:
|
@@ -529,6 +512,31 @@ @implementation FIRFirestore (Internal)
|
529 | 512 | return _firestore->database_id();
|
530 | 513 | }
|
531 | 514 |
|
| 515 | ++ (instancetype)firestoreForApp:(FIRApp *)app database:(NSString *)database { |
| 516 | + if (!app) { |
| 517 | + ThrowInvalidArgument("FirebaseApp instance may not be nil. Use FirebaseApp.app() if you'd like " |
| 518 | + "to use the default FirebaseApp instance."); |
| 519 | + } |
| 520 | + if (!database) { |
| 521 | + ThrowInvalidArgument("Database identifier may not be nil. Use '%s' if you want the default " |
| 522 | + "database", |
| 523 | + DatabaseId::kDefault); |
| 524 | + } |
| 525 | + |
| 526 | + id<FSTFirestoreMultiDBProvider> provider = |
| 527 | + FIR_COMPONENT(FSTFirestoreMultiDBProvider, app.container); |
| 528 | + return [provider firestoreForDatabase:database]; |
| 529 | +} |
| 530 | + |
| 531 | ++ (instancetype)firestoreForDatabase:(NSString *)database { |
| 532 | + FIRApp *app = [FIRApp defaultApp]; |
| 533 | + if (!app) { |
| 534 | + ThrowIllegalState("Failed to get FirebaseApp instance. Please call FirebaseApp.configure() " |
| 535 | + "before using Firestore"); |
| 536 | + } |
| 537 | + return [self firestoreForApp:app database:database]; |
| 538 | +} |
| 539 | + |
532 | 540 | + (FIRFirestore *)recoverFromFirestore:(std::shared_ptr<Firestore>)firestore {
|
533 | 541 | return (__bridge FIRFirestore *)firestore->extension();
|
534 | 542 | }
|
|
0 commit comments