Refactor preference upgrade
This commit is contained in:
@@ -433,68 +433,19 @@ public class Preferences {
|
||||
|
||||
switch (oldVersion) {
|
||||
case 1:
|
||||
// fall through
|
||||
case 2:
|
||||
// fall through
|
||||
case 3: {
|
||||
// migrate keyserver to hkps
|
||||
ArrayList<HkpKeyserverAddress> servers = getKeyServers();
|
||||
ListIterator<HkpKeyserverAddress> it = servers.listIterator();
|
||||
while (it.hasNext()) {
|
||||
HkpKeyserverAddress server = it.next();
|
||||
if (server == null) {
|
||||
continue;
|
||||
}
|
||||
switch (server.getUrl()) {
|
||||
case "pool.sks-keyservers.net": {
|
||||
// use HKPS!
|
||||
it.set(HkpKeyserverAddress.createFromUri("hkps://hkps.pool.sks-keyservers.net"));
|
||||
break;
|
||||
}
|
||||
case "pgp.mit.edu": {
|
||||
// use HKPS!
|
||||
it.set(HkpKeyserverAddress.createFromUri("hkps://pgp.mit.edu"));
|
||||
break;
|
||||
}
|
||||
case "subkeys.pgp.net": {
|
||||
// remove, because often down and no HKPS!
|
||||
it.remove();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
setKeyServers(servers);
|
||||
migrateToHkps();
|
||||
}
|
||||
// fall through
|
||||
case 4: {
|
||||
setTheme(Constants.Pref.Theme.DEFAULT);
|
||||
}
|
||||
// fall through
|
||||
case 5: {
|
||||
KeyserverSyncAdapterService.enableKeyserverSync(context);
|
||||
}
|
||||
// fall through
|
||||
case 6: {
|
||||
}
|
||||
// fall through
|
||||
case 6:
|
||||
case 7: {
|
||||
// add onion address to sks-keyservers.net
|
||||
ArrayList<HkpKeyserverAddress> servers = getKeyServers();
|
||||
ListIterator<HkpKeyserverAddress> it = servers.listIterator();
|
||||
while (it.hasNext()) {
|
||||
HkpKeyserverAddress server = it.next();
|
||||
if (server == null) {
|
||||
continue;
|
||||
}
|
||||
if ("hkps://hkps.pool.sks-keyservers.net".equals(server.getUrl())) {
|
||||
it.set(HkpKeyserverAddress.createWithOnionProxy(
|
||||
"hkps://hkps.pool.sks-keyservers.net",
|
||||
"hkp://jirk5u4osbsr34t5.onion"));
|
||||
}
|
||||
|
||||
}
|
||||
setKeyServers(servers);
|
||||
addOnionToSks();
|
||||
}
|
||||
case 8: {
|
||||
replaceDefaultKeyserverWithUbuntu();
|
||||
@@ -508,6 +459,54 @@ public class Preferences {
|
||||
}
|
||||
}
|
||||
|
||||
private void migrateToHkps() {
|
||||
ArrayList<HkpKeyserverAddress> servers = getKeyServers();
|
||||
ListIterator<HkpKeyserverAddress> it = servers.listIterator();
|
||||
while (it.hasNext()) {
|
||||
HkpKeyserverAddress server = it.next();
|
||||
if (server == null) {
|
||||
continue;
|
||||
}
|
||||
switch (server.getUrl()) {
|
||||
case "pool.sks-keyservers.net": {
|
||||
// use HKPS!
|
||||
it.set(HkpKeyserverAddress.createFromUri("hkps://hkps.pool.sks-keyservers.net"));
|
||||
break;
|
||||
}
|
||||
case "pgp.mit.edu": {
|
||||
// use HKPS!
|
||||
it.set(HkpKeyserverAddress.createFromUri("hkps://pgp.mit.edu"));
|
||||
break;
|
||||
}
|
||||
case "subkeys.pgp.net": {
|
||||
// remove, because often down and no HKPS!
|
||||
it.remove();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
setKeyServers(servers);
|
||||
}
|
||||
|
||||
private void addOnionToSks() {
|
||||
ArrayList<HkpKeyserverAddress> servers = getKeyServers();
|
||||
ListIterator<HkpKeyserverAddress> it = servers.listIterator();
|
||||
while (it.hasNext()) {
|
||||
HkpKeyserverAddress server = it.next();
|
||||
if (server == null) {
|
||||
continue;
|
||||
}
|
||||
if ("hkps://hkps.pool.sks-keyservers.net".equals(server.getUrl())) {
|
||||
it.set(HkpKeyserverAddress.createWithOnionProxy(
|
||||
"hkps://hkps.pool.sks-keyservers.net",
|
||||
"hkp://jirk5u4osbsr34t5.onion"));
|
||||
}
|
||||
|
||||
}
|
||||
setKeyServers(servers);
|
||||
}
|
||||
|
||||
private void replaceDefaultKeyserverWithUbuntu() {
|
||||
ArrayList<HkpKeyserverAddress> servers = getKeyServers();
|
||||
boolean oldDefaults = "hkps://hkps.pool.sks-keyservers.net".equalsIgnoreCase(servers.get(0).getUrl()) ||
|
||||
@@ -516,7 +515,7 @@ public class Preferences {
|
||||
HkpKeyserverAddress ubuntuKeyserver = HkpKeyserverAddress.createFromUri("hkps://keyserver.ubuntu.com");
|
||||
if (oldDefaults) {
|
||||
servers.add(0, ubuntuKeyserver);
|
||||
} else if (!servers.contains(ubuntuKeyserver)){
|
||||
} else if (!servers.contains(ubuntuKeyserver)) {
|
||||
servers.add(ubuntuKeyserver);
|
||||
}
|
||||
setKeyServers(servers);
|
||||
|
||||
Reference in New Issue
Block a user