/// <summary> /// Checks if the user exists <see cref="GenerateStoredKey"/>. /// </summary> private GoogleUserCredential GetUserByKey(string key) { try { var user = GoogleUserCredentials.Where(a => a.Key == key).FirstOrDefault(); if (user != null) { return(user); } return(null); } catch (System.Data.SqlClient.SqlException) { return(null); } }
/// <summary> /// Deletes the given key. It deletes the <see cref="GenerateStoredKey"/> row in /// <see cref="GoogleUserCredentials"/>. /// </summary> /// <param name="key">The key to delete from the data store.</param> Task IDataStore.DeleteAsync <T>(string key) { if (string.IsNullOrEmpty(key)) { throw new ArgumentException("Key MUST have a value"); } try { var hold = GoogleUserCredentials.Where(a => a.Key == key).FirstOrDefault(); GoogleUserCredentials.Remove(hold); SaveChangesAsync(); } catch (System.Data.SqlClient.SqlException ex) { throw new Exception("Failed to delete credentials", ex); } return(Task.Delay(0)); }
/// <summary> /// Save the credentials. If the user <see cref="GenerateStoredKey"/> does not exists we insert it other wise we will do an update. /// </summary> /// <param name="key"></param> /// <param name="serialized"></param> private void save(string key, string serialized) { try { var user = GoogleUserCredentials.Where(a => a.Key == key).FirstOrDefault(); if (user == null) { var hold = new GoogleUserCredential { Key = key, Credentials = serialized }; GoogleUserCredentials.Add(hold); } else { var aUser = this.GoogleUserCredentials.Where(a => a.Key == key).FirstOrDefault(); aUser.Credentials = serialized; } SaveChanges(); } catch (Exception ex) { throw ex; } }