/* * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ #if FB_SONARKIT_ENABLED #import "FlipperKitDatabasesPlugin.h" #import #import #import #import "DatabaseDriver.h" #import "DatabasesManager.h" #import "MockDatabaseDriver.h" @interface FlipperKitDatabasesPlugin () @property(strong, nonatomic) id connection; @end @implementation FlipperKitDatabasesPlugin - (instancetype)init { if (self = [super init]) { _databasesManager = [DatabasesManager new]; } return self; } + (instancetype)sharedInstance { static FlipperKitDatabasesPlugin* sInstance = nil; static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ sInstance = [FlipperKitDatabasesPlugin new]; }); return sInstance; } - (void)didConnect:(id)connection { self.connection = connection; [self.databasesManager setConnection:connection]; } - (void)didDisconnect { [self.databasesManager setConnection:nil]; } - (NSString*)identifier { return @"Databases"; } - (BOOL)runInBackground { return NO; } - (void)addDatabaseDriver:(id)driver { [self.databasesManager addDatabaseDriver:driver]; } - (void)removeDatabaseDriver:(id)driver { [self.databasesManager addDatabaseDriver:driver]; } @end #endif