X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Ffreenet%2FPluginStoreConfigurationBackend.java;h=0ed6dd59cd33b6c95c39fb3edc7e037380aa376f;hb=43740d6a1dfc686ab54d0aebd4a5b1bce75b9ed6;hp=eebfe3ec46d844be8a5c3df4f0da04669a826e98;hpb=763715116898c7def5cf72e2c560af3b89450839;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/freenet/PluginStoreConfigurationBackend.java b/src/main/java/net/pterodactylus/sone/freenet/PluginStoreConfigurationBackend.java index eebfe3e..0ed6dd5 100644 --- a/src/main/java/net/pterodactylus/sone/freenet/PluginStoreConfigurationBackend.java +++ b/src/main/java/net/pterodactylus/sone/freenet/PluginStoreConfigurationBackend.java @@ -1,5 +1,5 @@ /* - * FreenetSone - PluginStoreConfigurationBackend.java - Copyright © 2010 David Roden + * Sone - PluginStoreConfigurationBackend.java - Copyright © 2010–2013 David Roden * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -17,14 +17,14 @@ package net.pterodactylus.sone.freenet; -import java.util.logging.Level; +import static java.util.logging.Logger.getLogger; + import java.util.logging.Logger; import net.pterodactylus.util.config.AttributeNotFoundException; import net.pterodactylus.util.config.Configuration; import net.pterodactylus.util.config.ConfigurationException; import net.pterodactylus.util.config.ExtendedConfigurationBackend; -import net.pterodactylus.util.logging.Logging; import freenet.client.async.DatabaseDisabledException; import freenet.pluginmanager.PluginRespirator; import freenet.pluginmanager.PluginStore; @@ -37,7 +37,8 @@ import freenet.pluginmanager.PluginStore; public class PluginStoreConfigurationBackend implements ExtendedConfigurationBackend { /** The logger. */ - private static final Logger logger = Logging.getLogger(PluginStoreConfigurationBackend.class); + @SuppressWarnings("unused") + private static final Logger logger = getLogger("Sone.Fred"); /** The plugin respirator. */ private final PluginRespirator pluginRespirator; @@ -56,6 +57,9 @@ public class PluginStoreConfigurationBackend implements ExtendedConfigurationBac public PluginStoreConfigurationBackend(PluginRespirator pluginRespirator) throws DatabaseDisabledException { this.pluginRespirator = pluginRespirator; this.pluginStore = pluginRespirator.getStore(); + if (this.pluginStore == null) { + throw new DatabaseDisabledException(); + } } /** @@ -166,18 +170,15 @@ public class PluginStoreConfigurationBackend implements ExtendedConfigurationBac save(); } - // - // PRIVATE METHODS - // - /** - * Saves the configuration to the plugin store. + * {@inheritDoc} */ - private void save() { + @Override + public void save() throws ConfigurationException { try { pluginRespirator.putStore(pluginStore); } catch (DatabaseDisabledException dde1) { - logger.log(Level.WARNING, "Could not store plugin store, database is disabled.", dde1); + throw new ConfigurationException("Could not store plugin store, database is disabled.", dde1); } }