public static FirebaseUserTokenResult CreateCanceledResult() { FirebaseUserTokenResult result = new FirebaseUserTokenResult(); result.IsCanceled = true; return(result); }
public static FirebaseUserTokenResult CreateSuccessResult(string accessToken) { FirebaseUserTokenResult result = new FirebaseUserTokenResult(); result.AccessToken = accessToken; return(result); }
public static FirebaseUserTokenResult CreateFaultedResult(Exception exception) { FirebaseUserTokenResult result = new FirebaseUserTokenResult(); result.IsFaulted = true; result.Exception = exception; return(result); }
public void SignOut() { if (auth != null) { auth.SignOut(); } currentUser = null; currentToken = null; stsTokenManager = null; }
public IEnumerator ProcessFirebaseUserTokenTaskRoutine(Task <string> t, Action <FirebaseUserTokenResult> callback) { while (!t.IsCompleted) { yield return(null); } if (callback != null) { if (t.IsFaulted) { callback(FirebaseUserTokenResult.CreateFaultedResult(t.Exception)); } else if (t.IsCanceled) { callback(FirebaseUserTokenResult.CreateCanceledResult()); } else { currentToken = FirebaseUserTokenResult.CreateSuccessResult(t.Result); callback(currentToken); } } }
public IEnumerator ProcessWebServiceUserRoutine(WWW www, Action <FirebaseUserResult> callback) { yield return(www); if (callback != null) { if (!string.IsNullOrEmpty(www.error)) { currentUser = null; currentToken = null; stsTokenManager = null; callback(FirebaseUserResult.CreateFaultedResult(new Exception(www.error))); } else { // Parsing json var result = MiniJSON.Json.Deserialize(www.text) as Dictionary <string, object>; stsTokenManager = result["stsTokenManager"] as Dictionary <string, object>; currentUser = FirebaseUserResult.CreateSuccessResult(result.GetString("uid"), result.GetString("displayName"), result.GetString("photoURL"), result.GetString("email"), result.GetBool("emailVerified"), result.GetBool("isAnonymous")); currentToken = FirebaseUserTokenResult.CreateSuccessResult(stsTokenManager.GetString("accessToken")); callback(currentUser); } } }