From 0c7c58f3764217eaf32656679530f86618a6e198 Mon Sep 17 00:00:00 2001 From: Vincent Breitmoser Date: Tue, 17 Nov 2015 14:33:08 +0100 Subject: inline-ttl: save changes in ttl settings --- .../keychain/util/Preferences.java | 40 +++++++++++++--------- 1 file changed, 24 insertions(+), 16 deletions(-) (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util') diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/Preferences.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/Preferences.java index 2b3c3350a..8074d8eb1 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/Preferences.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/Preferences.java @@ -98,21 +98,6 @@ public class Preferences { editor.commit(); } - public CacheTTLPrefs getPassphraseCacheTtl() { - Set pref = mSharedPreferences.getStringSet(Constants.Pref.PASSPHRASE_CACHE_TTLS, null); - if (pref == null) { - return CacheTTLPrefs.getDefault(); - } - int def = mSharedPreferences.getInt(Pref.PASSPHRASE_CACHE_DEFAULT, 0); - return new CacheTTLPrefs(pref, def); - } - - public void setPassphraseCacheTtl(int value) { - SharedPreferences.Editor editor = mSharedPreferences.edit(); - editor.putInt(Constants.Pref.PASSPHRASE_CACHE_TTLS, value); - editor.commit(); - } - public boolean getPassphraseCacheSubs() { return mSharedPreferences.getBoolean(Pref.PASSPHRASE_CACHE_SUBS, false); } @@ -315,6 +300,22 @@ public class Preferences { } + public CacheTTLPrefs getPassphraseCacheTtl() { + Set pref = mSharedPreferences.getStringSet(Constants.Pref.PASSPHRASE_CACHE_TTLS, null); + if (pref == null) { + return CacheTTLPrefs.getDefault(); + } + int def = mSharedPreferences.getInt(Pref.PASSPHRASE_CACHE_DEFAULT, 300); + return new CacheTTLPrefs(pref, def); + } + + public void setPassphraseCacheTtl(CacheTTLPrefs prefs) { + SharedPreferences.Editor editor = mSharedPreferences.edit(); + editor.putStringSet(Constants.Pref.PASSPHRASE_CACHE_TTLS, prefs.getStringSet()); + editor.putInt(Pref.PASSPHRASE_CACHE_DEFAULT, prefs.defaultTtl); + editor.commit(); + } + public static class CacheTTLPrefs implements Serializable { public static final Map CACHE_TTL_NAMES; public static final ArrayList CACHE_TTLS; @@ -331,7 +332,6 @@ public class Preferences { Collections.sort(CACHE_TTLS); } - public HashSet ttlTimes; public int defaultTtl; @@ -343,6 +343,14 @@ public class Preferences { } } + public HashSet getStringSet() { + HashSet ttlTimeStrings = new HashSet<>(); + for (Integer ttlTime : ttlTimes) { + ttlTimeStrings.add(Integer.toString(ttlTime)); + } + return ttlTimeStrings; + } + public static CacheTTLPrefs getDefault() { ArrayList ttlStrings = new ArrayList<>(); ttlStrings.add(Integer.toString(60 * 5)); -- cgit v1.2.3