Beispiel #1
0
        public static ICloudDatabase Create(ICloudDatabaseConfig config)
        {
            if (config.IsNull())
            {
                return(null);
            }

            var service = config.GetConfig <CloudDatabaseType>(nameof(CloudService));

            switch (service)
            {
                #if FIREBASE_REALTIME_DATABASE
            case CloudDatabaseType.FirebaseRealtimeDatabase:
            {
                if (!databases.ContainsKey(service))
                {
                    databases[service] = new Dictionary <string, ICloudDatabase>();
                }

                var db = config.GetConfig <string>(Firebase.FirebaseCloudDatabaseConfig.DB);
                if (db.IsNullOrEmpty())
                {
                    db = "default";
                }

                var dic = databases[service] as Dictionary <string, ICloudDatabase>;
                if (dic.ContainsKey(db))
                {
                    return(dic[db]);
                }

                return(dic[db] = new Firebase.FirebaseCloudDatabase(config));
            }
                #endif

            default:
            {
                "Service UnAvailable".LogError();
                return(null);
            }
            }
        }
        public FirebaseCloudDatabase(ICloudDatabaseConfig config)
        {
            var url = config?.GetConfig <string>(FirebaseCloudDatabaseConfig.DB);

            Init(url);
        }