From 91c39258675c6ae2bb4aae19e3564802b4189c70 Mon Sep 17 00:00:00 2001 From: Adam Date: Thu, 22 Mar 2018 21:06:13 -0400 Subject: [PATCH] config manager: add get and set configuration methods for objects --- .../runelite/client/config/ConfigManager.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/runelite-client/src/main/java/net/runelite/client/config/ConfigManager.java b/runelite-client/src/main/java/net/runelite/client/config/ConfigManager.java index 0078d8e470..f9ec3b978b 100644 --- a/runelite-client/src/main/java/net/runelite/client/config/ConfigManager.java +++ b/runelite-client/src/main/java/net/runelite/client/config/ConfigManager.java @@ -24,6 +24,7 @@ */ package net.runelite.client.config; +import com.google.common.base.Strings; import com.google.common.collect.ImmutableMap; import com.google.common.eventbus.EventBus; import java.awt.Color; @@ -245,6 +246,16 @@ public class ConfigManager return properties.getProperty(groupName + "." + key); } + public T getConfiguration(String groupName, String key, Class clazz) + { + String value = getConfiguration(groupName, key); + if (!Strings.isNullOrEmpty(value)) + { + return (T) stringToObject(value, clazz); + } + return null; + } + public void setConfiguration(String groupName, String key, String value) { log.debug("Setting configuration value for {}.{} to {}", groupName, key, value); @@ -290,6 +301,11 @@ public class ConfigManager eventBus.post(configChanged); } + public void setConfiguration(String groupName, String key, Object value) + { + setConfiguration(groupName, key, objectToString(value)); + } + public void unsetConfiguration(String groupName, String key) { log.debug("Unsetting configuration value for {}.{}", groupName, key);