Ejemplo n.º 1
0
        protected FirebaseClient GetClient()
        {
            try
            {
                if (Authlink == null)
                {
                    return(null);
                }

                var firebaseClient = new FirebaseClient(Url,
                                                        new FirebaseOptions
                {
                    //AuthTokenAsyncFactory = () => Task.FromResult(Authlink.FirebaseToken)
                    AuthTokenAsyncFactory = async() => (await Authlink.GetFreshAuthAsync()).FirebaseToken
                });
                return(firebaseClient);
            }
            catch (FirebaseException e)
            {
                Console.WriteLine("Exception was thrown: {0}", e.Message);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }
            return(null);
        }
Ejemplo n.º 2
0
        public async Task <bool> LoginAsync(string username = "", string password = "")
        {
            try
            {
                if (!string.IsNullOrEmpty(username) && !string.IsNullOrEmpty(password))
                {
                    UserName = username;
                    Password = password;
                }
                Auth     = new FirebaseAuthProvider(new FirebaseConfig(ApiKey));
                Authlink = await Auth.SignInWithEmailAndPasswordAsync(UserName, Password);

                await Authlink.RefreshUserDetails();

                Token = Authlink.FirebaseToken;
                return(true);
            }
            catch (FirebaseAuthException e)
            {
                Console.WriteLine($"Error {e.Reason}");
                ErrorCode = e.Reason;
                // JObject obj = JObject.Parse(e.ResponseData);
                //var oMycustomclassname = Newtonsoft.Json.JsonConvert.DeserializeObject<dynamic>(e.ResponseData);
                // var text = obj["error"]["errors"]["message"];
            }
            catch (Exception ex)
            {
                Console.WriteLine($"Error {ex.Message}");

                //JObject obj = JObject.Parse(ex.Message);
            }
            return(false);
        }
Ejemplo n.º 3
0
        public async Task <bool> AddRawData(RawData data)
        {
            try
            {
                await Authlink.RefreshUserDetails();

                var client = GetClient();

                if (!string.IsNullOrEmpty(_rawDataKey))
                {
                    await client.Child("station").
                    Child(_stationKey).Child("flights").
                    Child(_flightKey).Child("rawdata").Child(_rawDataKey).DeleteAsync();
                }

                var rawdata = await client.Child("station").
                              Child(_stationKey).Child("flights").
                              Child(_flightKey).Child("rawdata").
                              PostAsync <RawData>(data);

                _rawDataKey = rawdata.Key;
                return(true);
            }
            catch (FirebaseException ex)
            {
                Console.WriteLine(ex.Message);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
            return(false);
        }