@@ -368,7 +368,6 @@ - (id) init
368368{
369369 self = [super init ];
370370 if (self != nil ) {
371- _database = [FIRDatabase database ];
372371 _dbReferences = [[NSMutableDictionary alloc ] init ];
373372 }
374373 return self;
@@ -378,10 +377,7 @@ - (id) init
378377 callback:(RCTResponseSenderBlock) callback)
379378{
380379
381- BOOL isEnabled = _database.persistenceEnabled ;
382- if ( isEnabled != enable) {
383- _database.persistenceEnabled = enable;
384- }
380+ [FIRDatabase database ].persistenceEnabled = enable;
385381 callback (@[[NSNull null ], @{
386382 @" result" : @" success"
387383 }]);
@@ -391,7 +387,7 @@ - (id) init
391387 withEnable:(BOOL ) enable
392388 callback:(RCTResponseSenderBlock) callback)
393389{
394- FIRDatabaseReference *ref = [[_database reference ] child : path];
390+ FIRDatabaseReference *ref = [self getPathRef : path];
395391 [ref keepSynced: enable];
396392 callback (@[[NSNull null ], @{
397393 @" status" : @" success" ,
@@ -403,8 +399,7 @@ - (id) init
403399 value:(NSDictionary *)value
404400 callback:(RCTResponseSenderBlock) callback)
405401{
406- FIRDatabaseReference *ref = [[_database reference ] child: path];
407-
402+ FIRDatabaseReference *ref = [self getPathRef: path];
408403 [ref setValue: value withCompletionBlock: ^(NSError * _Nullable error, FIRDatabaseReference * _Nonnull ref) {
409404 [self handleCallback: @" set" callback: callback databaseError: error];
410405 }];
@@ -414,8 +409,7 @@ - (id) init
414409 value:(NSDictionary *)value
415410 callback:(RCTResponseSenderBlock) callback)
416411{
417- FIRDatabaseReference *ref = [[_database reference ] child: path];
418-
412+ FIRDatabaseReference *ref = [self getPathRef: path];
419413 [ref updateChildValues: value withCompletionBlock: ^(NSError * _Nullable error, FIRDatabaseReference * _Nonnull ref) {
420414 [self handleCallback: @" update" callback: callback databaseError: error];
421415 }];
@@ -424,7 +418,7 @@ - (id) init
424418RCT_EXPORT_METHOD (remove:(NSString *) path
425419 callback:(RCTResponseSenderBlock) callback)
426420{
427- FIRDatabaseReference *ref = [[_database reference ] child : path];
421+ FIRDatabaseReference *ref = [self getPathRef : path];
428422 [ref removeValueWithCompletionBlock: ^(NSError * _Nullable error, FIRDatabaseReference * _Nonnull ref) {
429423 [self handleCallback: @" remove" callback: callback databaseError: error];
430424 }];
@@ -434,7 +428,7 @@ - (id) init
434428 props:(NSDictionary *) props
435429 callback:(RCTResponseSenderBlock) callback)
436430{
437- FIRDatabaseReference *ref = [[_database reference ] child : path];
431+ FIRDatabaseReference *ref = [self getPathRef : path];
438432 FIRDatabaseReference *newRef = [ref childByAutoId ];
439433
440434 NSURL *url = [NSURL URLWithString: ref.URL];
@@ -526,7 +520,7 @@ - (id) init
526520 props:(NSDictionary *) props
527521 callback:(RCTResponseSenderBlock) callback)
528522{
529- FIRDatabaseReference *ref = [[_database reference ] child : path];
523+ FIRDatabaseReference *ref = [self getPathRef : path];
530524 [ref onDisconnectSetValue: props
531525 withCompletionBlock: ^(NSError * _Nullable error, FIRDatabaseReference * _Nonnull ref) {
532526 [self handleCallback: @" onDisconnectSetObject" callback: callback databaseError: error];
@@ -537,7 +531,7 @@ - (id) init
537531 val:(NSString *) val
538532 callback:(RCTResponseSenderBlock) callback)
539533{
540- FIRDatabaseReference *ref = [[_database reference ] child : path];
534+ FIRDatabaseReference *ref = [self getPathRef : path];
541535 [ref onDisconnectSetValue: val
542536 withCompletionBlock: ^(NSError * _Nullable error, FIRDatabaseReference * _Nonnull ref) {
543537 [self handleCallback: @" onDisconnectSetString" callback: callback databaseError: error];
@@ -547,7 +541,7 @@ - (id) init
547541RCT_EXPORT_METHOD (onDisconnectRemove:(NSString *) path
548542 callback:(RCTResponseSenderBlock) callback)
549543{
550- FIRDatabaseReference *ref = [[_database reference ] child : path];
544+ FIRDatabaseReference *ref = [self getPathRef : path];
551545 [ref onDisconnectRemoveValueWithCompletionBlock: ^(NSError * _Nullable error, FIRDatabaseReference * _Nonnull ref) {
552546 [self handleCallback: @" onDisconnectRemove" callback: callback databaseError: error];
553547 }];
@@ -558,12 +552,17 @@ - (id) init
558552RCT_EXPORT_METHOD (onDisconnectCancel:(NSString *) path
559553 callback:(RCTResponseSenderBlock) callback)
560554{
561- FIRDatabaseReference *ref = [[_database reference ] child : path];
555+ FIRDatabaseReference *ref = [self getPathRef : path];
562556 [ref cancelDisconnectOperationsWithCompletionBlock: ^(NSError * _Nullable error, FIRDatabaseReference * _Nonnull ref) {
563557 [self handleCallback: @" onDisconnectCancel" callback: callback databaseError: error];
564558 }];
565559}
566560
561+ - (FIRDatabaseReference *) getPathRef : (NSString *) path
562+ {
563+ return [[[FIRDatabase database ] reference ] child: path];
564+ }
565+
567566- (void ) handleCallback : (NSString *) methodName
568567 callback : (RCTResponseSenderBlock) callback
569568 databaseError : (NSError *) databaseError
@@ -592,7 +591,7 @@ - (FirestackDBReference *) getDBHandle:(NSString *) path
592591
593592 if (ref == nil ) {
594593 ref = [[FirestackDBReference alloc ] initWithPathAndModifiers: self
595- database: _database
594+ database: [FIRDatabase database ]
596595 path: path
597596 modifiers: modifiers
598597 modifiersString: modifiersString];
@@ -612,4 +611,4 @@ - (NSString *) getDBListenerKey:(NSString *) path
612611 return @[DATABASE_DATA_EVENT, DATABASE_ERROR_EVENT];
613612}
614613
615- @end
614+ @end
0 commit comments