ENH: Replaces transport config with namespaced settings

This commit is contained in:
Santiago Torres
2016-01-17 15:42:45 -05:00
parent 2b02db3023
commit 190bb12964
27 changed files with 206 additions and 238 deletions

View File

@@ -0,0 +1,44 @@
package org.briarproject.settings;
import com.google.inject.Inject;
import org.briarproject.api.settings.SettingsManager;
import org.briarproject.api.Settings;
import org.briarproject.api.db.DatabaseComponent;
import org.briarproject.api.db.DbException;
import java.util.logging.Logger;
import java.util.Collection;
class SettingsManagerImpl implements SettingsManager {
private final DatabaseComponent db;
private static final Logger LOG =
Logger.getLogger("SettingsManagerImpl");
@Inject
SettingsManagerImpl(DatabaseComponent db) {
this.db = db;
}
/**
* Returns the settings object identified by the provided namespace
* string
*/
@Override
public Settings getSettings(String namespace) throws DbException {
return db.getSettings(namespace);
}
/**
* Merges (read syncs) the provided settings identified by the provided namespace
* string
*/
@Override
public void mergeSettings(Settings s, String namespace) throws DbException {
db.mergeSettings(s, namespace);
}
}

View File

@@ -0,0 +1,13 @@
package org.briarproject.settings;
import com.google.inject.AbstractModule;
import org.briarproject.api.settings.SettingsManager;
public class SettingsModule extends AbstractModule {
@Override
protected void configure() {
bind(SettingsManager.class).to(SettingsManagerImpl.class);
}
}