private void lazyLoadHandlers(SocrataSettingsPart part) { //decrypt stored password on read part.PasswordField.Getter(() => { try { var encryptedPassword = part.Retrieve(x => x.Password); return(String.IsNullOrWhiteSpace(encryptedPassword) ? String.Empty : Encoding.UTF8.GetString(_encryptionService.Decode(Convert.FromBase64String(encryptedPassword)))); } catch { Logger.Error("The Socrata password could not be decrypted. It might be corrupted, try to reset it."); return(null); } }); // encrypt plaintext password on write part.PasswordField.Setter(value => { var encryptedPassword = String.IsNullOrWhiteSpace(value) ? String.Empty : Convert.ToBase64String(_encryptionService.Encode(Encoding.UTF8.GetBytes(value))); part.Store(x => x.Password, encryptedPassword); }); }
public SodaClient GetClient(SocrataSettingsPart settings) { if (String.IsNullOrEmpty(settings.Username) || String.IsNullOrEmpty(settings.Password)) { return(new SodaClient(settings.Host, settings.AppToken)); } else { return(new SodaClient(settings.Host, settings.AppToken, settings.Username, settings.Password)); } }