From: David ‘Bombe’ Roden
Date: Fri, 7 Sep 2012 07:26:34 +0000 (+0200)
Subject: Update trust values in a dedicated background thread.
X-Git-Tag: 0.8.3^2~54
X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=commitdiff_plain;h=b95f0d80fa0ac4f9f6f8b51b2fecf796a1f72801;hp=649cd5e0d7ccb7a46d5ffbbb165e3da785ec2b85
Update trust values in a dedicated background thread.
This will decouple Sone’s web interface from WoT’s excessive (b)locking.
---
diff --git a/src/main/java/net/pterodactylus/sone/core/Core.java b/src/main/java/net/pterodactylus/sone/core/Core.java
index d496c35..9a40e5c 100644
--- a/src/main/java/net/pterodactylus/sone/core/Core.java
+++ b/src/main/java/net/pterodactylus/sone/core/Core.java
@@ -2173,9 +2173,6 @@ public class Core extends AbstractService implements IdentityListener, UpdateLis
configuration.getStringValue("Option/TrustComment").setValue(options.getStringOption("TrustComment").getReal());
configuration.getBooleanValue("Option/ActivateFcpInterface").setValue(options.getBooleanOption("ActivateFcpInterface").getReal());
configuration.getIntValue("Option/FcpFullAccessRequired").setValue(options.getIntegerOption("FcpFullAccessRequired").getReal());
- configuration.getBooleanValue("Option/SoneRescueMode").setValue(options.getBooleanOption("SoneRescueMode").getReal());
- configuration.getBooleanValue("Option/ClearOnNextRestart").setValue(options.getBooleanOption("ClearOnNextRestart").getReal());
- configuration.getBooleanValue("Option/ReallyClearOnNextRestart").setValue(options.getBooleanOption("ReallyClearOnNextRestart").getReal());
/* save known Sones. */
int soneCounter = 0;
@@ -2275,20 +2272,6 @@ public class Core extends AbstractService implements IdentityListener, UpdateLis
}
}));
- options.addBooleanOption("SoneRescueMode", new DefaultOption(false));
- options.addBooleanOption("ClearOnNextRestart", new DefaultOption(false));
- options.addBooleanOption("ReallyClearOnNextRestart", new DefaultOption(false));
-
- /* read options from configuration. */
- options.getBooleanOption("ClearOnNextRestart").set(configuration.getBooleanValue("Option/ClearOnNextRestart").getValue(null));
- options.getBooleanOption("ReallyClearOnNextRestart").set(configuration.getBooleanValue("Option/ReallyClearOnNextRestart").getValue(null));
- boolean clearConfiguration = options.getBooleanOption("ClearOnNextRestart").get() && options.getBooleanOption("ReallyClearOnNextRestart").get();
- options.getBooleanOption("ClearOnNextRestart").set(null);
- options.getBooleanOption("ReallyClearOnNextRestart").set(null);
- if (clearConfiguration) {
- /* stop loading the configuration. */
- return;
- }
loadConfigurationValue("InsertionDelay");
loadConfigurationValue("PostsPerPage");
@@ -2301,7 +2284,6 @@ public class Core extends AbstractService implements IdentityListener, UpdateLis
options.getStringOption("TrustComment").set(configuration.getStringValue("Option/TrustComment").getValue(null));
options.getBooleanOption("ActivateFcpInterface").set(configuration.getBooleanValue("Option/ActivateFcpInterface").getValue(null));
options.getIntegerOption("FcpFullAccessRequired").set(configuration.getIntValue("Option/FcpFullAccessRequired").getValue(null));
- options.getBooleanOption("SoneRescueMode").set(configuration.getBooleanValue("Option/SoneRescueMode").getValue(null));
/* load known Sones. */
int soneCounter = 0;
@@ -2939,58 +2921,6 @@ public class Core extends AbstractService implements IdentityListener, UpdateLis
return this;
}
- /**
- * Returns whether Sone should clear its settings on the next restart.
- * In order to be effective, {@link #isReallyClearOnNextRestart()} needs
- * to return {@code true} as well!
- *
- * @return {@code true} if Sone should clear its settings on the next
- * restart, {@code false} otherwise
- */
- public boolean isClearOnNextRestart() {
- return options.getBooleanOption("ClearOnNextRestart").get();
- }
-
- /**
- * Sets whether Sone will clear its settings on the next restart.
- *
- * @param clearOnNextRestart
- * {@code true} if Sone should clear its settings on the next
- * restart, {@code false} otherwise
- * @return This preferences
- */
- public Preferences setClearOnNextRestart(Boolean clearOnNextRestart) {
- options.getBooleanOption("ClearOnNextRestart").set(clearOnNextRestart);
- return this;
- }
-
- /**
- * Returns whether Sone should really clear its settings on next
- * restart. This is a confirmation option that needs to be set in
- * addition to {@link #isClearOnNextRestart()} in order to clear Soneâs
- * settings on the next restart.
- *
- * @return {@code true} if Sone should really clear its settings on the
- * next restart, {@code false} otherwise
- */
- public boolean isReallyClearOnNextRestart() {
- return options.getBooleanOption("ReallyClearOnNextRestart").get();
- }
-
- /**
- * Sets whether Sone should really clear its settings on the next
- * restart.
- *
- * @param reallyClearOnNextRestart
- * {@code true} if Sone should really clear its settings on
- * the next restart, {@code false} otherwise
- * @return This preferences
- */
- public Preferences setReallyClearOnNextRestart(Boolean reallyClearOnNextRestart) {
- options.getBooleanOption("ReallyClearOnNextRestart").set(reallyClearOnNextRestart);
- return this;
- }
-
}
}
diff --git a/src/main/java/net/pterodactylus/sone/web/OptionsPage.java b/src/main/java/net/pterodactylus/sone/web/OptionsPage.java
index ab962d8..c770da3 100644
--- a/src/main/java/net/pterodactylus/sone/web/OptionsPage.java
+++ b/src/main/java/net/pterodactylus/sone/web/OptionsPage.java
@@ -132,10 +132,6 @@ public class OptionsPage extends SoneTemplatePage {
Integer fcpFullAccessRequiredInteger = Numbers.safeParseInteger(request.getHttpRequest().getPartAsStringFailsafe("fcp-full-access-required", 1), preferences.getFcpFullAccessRequired().ordinal());
FullAccessRequired fcpFullAccessRequired = FullAccessRequired.values()[fcpFullAccessRequiredInteger];
preferences.setFcpFullAccessRequired(fcpFullAccessRequired);
- boolean clearOnNextRestart = Boolean.parseBoolean(request.getHttpRequest().getPartAsStringFailsafe("clear-on-next-restart", 5));
- preferences.setClearOnNextRestart(clearOnNextRestart);
- boolean reallyClearOnNextRestart = Boolean.parseBoolean(request.getHttpRequest().getPartAsStringFailsafe("really-clear-on-next-restart", 5));
- preferences.setReallyClearOnNextRestart(reallyClearOnNextRestart);
webInterface.getCore().touchConfiguration();
if (fieldErrors.isEmpty()) {
throw new RedirectException(getPath());
@@ -161,8 +157,6 @@ public class OptionsPage extends SoneTemplatePage {
templateContext.set("trust-comment", preferences.getTrustComment());
templateContext.set("fcp-interface-active", preferences.isFcpInterfaceActive());
templateContext.set("fcp-full-access-required", preferences.getFcpFullAccessRequired().ordinal());
- templateContext.set("clear-on-next-restart", preferences.isClearOnNextRestart());
- templateContext.set("really-clear-on-next-restart", preferences.isReallyClearOnNextRestart());
}
}
diff --git a/src/main/resources/templates/options.html b/src/main/resources/templates/options.html
index 119c8a1..4ec88cb 100644
--- a/src/main/resources/templates/options.html
+++ b/src/main/resources/templates/options.html
@@ -163,14 +163,6 @@
- <%= Page.Options.Section.Cleaning.Title|l10n|html>
-
- <%= Page.Options.Option.ClearOnNextRestart.Description|l10n|html|replace needle=="{strong}" replacement==""|replace needle=="{/strong}" replacement=="">
-
-
-
<%= Page.Options.Option.ReallyClearOnNextRestart.Description|l10n|html|replace needle=="{strong}" replacement==""|replace needle=="{/strong}" replacement=="">
-
-