Merge pull request #7483 from deathbeam/unify-splitters
Unify Splitter/Joiner usage (move to Text#toCSV and Text#fromCSV)
This commit is contained in:
@@ -26,8 +26,6 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.client.plugins.banktags;
|
package net.runelite.client.plugins.banktags;
|
||||||
|
|
||||||
import com.google.common.base.Joiner;
|
|
||||||
import com.google.common.base.Splitter;
|
|
||||||
import com.google.inject.Provides;
|
import com.google.inject.Provides;
|
||||||
import java.awt.event.KeyEvent;
|
import java.awt.event.KeyEvent;
|
||||||
import java.awt.event.MouseWheelEvent;
|
import java.awt.event.MouseWheelEvent;
|
||||||
@@ -74,6 +72,7 @@ import net.runelite.client.plugins.banktags.tabs.BankSearch;
|
|||||||
import net.runelite.client.plugins.banktags.tabs.TabInterface;
|
import net.runelite.client.plugins.banktags.tabs.TabInterface;
|
||||||
import net.runelite.client.plugins.banktags.tabs.TabSprites;
|
import net.runelite.client.plugins.banktags.tabs.TabSprites;
|
||||||
import net.runelite.client.plugins.cluescrolls.ClueScrollPlugin;
|
import net.runelite.client.plugins.cluescrolls.ClueScrollPlugin;
|
||||||
|
import net.runelite.client.util.Text;
|
||||||
|
|
||||||
@PluginDescriptor(
|
@PluginDescriptor(
|
||||||
name = "Bank Tags",
|
name = "Bank Tags",
|
||||||
@@ -83,8 +82,6 @@ import net.runelite.client.plugins.cluescrolls.ClueScrollPlugin;
|
|||||||
@PluginDependency(ClueScrollPlugin.class)
|
@PluginDependency(ClueScrollPlugin.class)
|
||||||
public class BankTagsPlugin extends Plugin implements MouseWheelListener, KeyListener
|
public class BankTagsPlugin extends Plugin implements MouseWheelListener, KeyListener
|
||||||
{
|
{
|
||||||
public static final Splitter SPLITTER = Splitter.on(",").omitEmptyStrings().trimResults();
|
|
||||||
public static final Joiner JOINER = Joiner.on(",").skipNulls();
|
|
||||||
public static final String CONFIG_GROUP = "banktags";
|
public static final String CONFIG_GROUP = "banktags";
|
||||||
public static final String TAG_SEARCH = "tag:";
|
public static final String TAG_SEARCH = "tag:";
|
||||||
private static final String EDIT_TAGS_MENU_OPTION = "Edit-tags";
|
private static final String EDIT_TAGS_MENU_OPTION = "Edit-tags";
|
||||||
@@ -283,7 +280,7 @@ public class BankTagsPlugin extends Plugin implements MouseWheelListener, KeyLis
|
|||||||
|
|
||||||
boolean isSearchOpen = client.getVar(VarClientInt.INPUT_TYPE) == InputType.SEARCH.getType();
|
boolean isSearchOpen = client.getVar(VarClientInt.INPUT_TYPE) == InputType.SEARCH.getType();
|
||||||
String searchText = client.getVar(VarClientStr.INPUT_TEXT);
|
String searchText = client.getVar(VarClientStr.INPUT_TEXT);
|
||||||
String initialValue = JOINER.join(tags);
|
String initialValue = Text.toCSV(tags);
|
||||||
|
|
||||||
chatboxPanelManager.openTextInput(name + " tags:<br>(append " + VAR_TAG_SUFFIX + " for variation tag)")
|
chatboxPanelManager.openTextInput(name + " tags:<br>(append " + VAR_TAG_SUFFIX + " for variation tag)")
|
||||||
.value(initialValue)
|
.value(initialValue)
|
||||||
@@ -291,7 +288,7 @@ public class BankTagsPlugin extends Plugin implements MouseWheelListener, KeyLis
|
|||||||
clientThread.invoke(() ->
|
clientThread.invoke(() ->
|
||||||
{
|
{
|
||||||
// Split inputted tags to vartags (ending with *) and regular tags
|
// Split inputted tags to vartags (ending with *) and regular tags
|
||||||
final Collection<String> newTags = new ArrayList<>(SPLITTER.splitToList(newValue.toLowerCase()));
|
final Collection<String> newTags = new ArrayList<>(Text.fromCSV(newValue.toLowerCase()));
|
||||||
final Collection<String> newVarTags = new ArrayList<>(newTags).stream().filter(s -> s.endsWith(VAR_TAG_SUFFIX)).map(s ->
|
final Collection<String> newVarTags = new ArrayList<>(newTags).stream().filter(s -> s.endsWith(VAR_TAG_SUFFIX)).map(s ->
|
||||||
{
|
{
|
||||||
newTags.remove(s);
|
newTags.remove(s);
|
||||||
@@ -299,13 +296,13 @@ public class BankTagsPlugin extends Plugin implements MouseWheelListener, KeyLis
|
|||||||
}).collect(Collectors.toList());
|
}).collect(Collectors.toList());
|
||||||
|
|
||||||
// And save them
|
// And save them
|
||||||
tagManager.setTagString(itemId, JOINER.join(newTags), false);
|
tagManager.setTagString(itemId, Text.toCSV(newTags), false);
|
||||||
tagManager.setTagString(itemId, JOINER.join(newVarTags), true);
|
tagManager.setTagString(itemId, Text.toCSV(newVarTags), true);
|
||||||
|
|
||||||
// Check both previous and current tags in case the tag got removed in new tags or in case
|
// Check both previous and current tags in case the tag got removed in new tags or in case
|
||||||
// the tag got added in new tags
|
// the tag got added in new tags
|
||||||
tabInterface.updateTabIfActive(SPLITTER.splitToList(initialValue.toLowerCase().replaceAll(Pattern.quote(VAR_TAG_SUFFIX), "")));
|
tabInterface.updateTabIfActive(Text.fromCSV(initialValue.toLowerCase().replaceAll(Pattern.quote(VAR_TAG_SUFFIX), "")));
|
||||||
tabInterface.updateTabIfActive(SPLITTER.splitToList(newValue.toLowerCase().replaceAll(Pattern.quote(VAR_TAG_SUFFIX), "")));
|
tabInterface.updateTabIfActive(Text.fromCSV(newValue.toLowerCase().replaceAll(Pattern.quote(VAR_TAG_SUFFIX), "")));
|
||||||
}))
|
}))
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
|
|||||||
@@ -37,8 +37,6 @@ import net.runelite.client.config.ConfigManager;
|
|||||||
import net.runelite.client.game.ItemManager;
|
import net.runelite.client.game.ItemManager;
|
||||||
import net.runelite.client.game.ItemVariationMapping;
|
import net.runelite.client.game.ItemVariationMapping;
|
||||||
import static net.runelite.client.plugins.banktags.BankTagsPlugin.CONFIG_GROUP;
|
import static net.runelite.client.plugins.banktags.BankTagsPlugin.CONFIG_GROUP;
|
||||||
import static net.runelite.client.plugins.banktags.BankTagsPlugin.JOINER;
|
|
||||||
import static net.runelite.client.plugins.banktags.BankTagsPlugin.SPLITTER;
|
|
||||||
import net.runelite.client.plugins.cluescrolls.ClueScrollService;
|
import net.runelite.client.plugins.cluescrolls.ClueScrollService;
|
||||||
import net.runelite.client.plugins.cluescrolls.clues.ClueScroll;
|
import net.runelite.client.plugins.cluescrolls.clues.ClueScroll;
|
||||||
import net.runelite.client.plugins.cluescrolls.clues.CoordinateClue;
|
import net.runelite.client.plugins.cluescrolls.clues.CoordinateClue;
|
||||||
@@ -83,7 +81,7 @@ public class TagManager
|
|||||||
|
|
||||||
Collection<String> getTags(int itemId, boolean variation)
|
Collection<String> getTags(int itemId, boolean variation)
|
||||||
{
|
{
|
||||||
return new LinkedHashSet<>(SPLITTER.splitToList(getTagString(itemId, variation).toLowerCase()));
|
return new LinkedHashSet<>(Text.fromCSV(getTagString(itemId, variation).toLowerCase()));
|
||||||
}
|
}
|
||||||
|
|
||||||
void setTagString(int itemId, String tags, boolean variation)
|
void setTagString(int itemId, String tags, boolean variation)
|
||||||
@@ -120,7 +118,7 @@ public class TagManager
|
|||||||
|
|
||||||
private void setTags(int itemId, Collection<String> tags, boolean variation)
|
private void setTags(int itemId, Collection<String> tags, boolean variation)
|
||||||
{
|
{
|
||||||
setTagString(itemId, JOINER.join(tags), variation);
|
setTagString(itemId, Text.toCSV(tags), variation);
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean findTag(int itemId, String search)
|
boolean findTag(int itemId, String search)
|
||||||
|
|||||||
@@ -82,7 +82,6 @@ import net.runelite.client.plugins.banktags.BankTagsConfig;
|
|||||||
import net.runelite.client.plugins.banktags.BankTagsPlugin;
|
import net.runelite.client.plugins.banktags.BankTagsPlugin;
|
||||||
import static net.runelite.client.plugins.banktags.BankTagsPlugin.CONFIG_GROUP;
|
import static net.runelite.client.plugins.banktags.BankTagsPlugin.CONFIG_GROUP;
|
||||||
import static net.runelite.client.plugins.banktags.BankTagsPlugin.ICON_SEARCH;
|
import static net.runelite.client.plugins.banktags.BankTagsPlugin.ICON_SEARCH;
|
||||||
import static net.runelite.client.plugins.banktags.BankTagsPlugin.SPLITTER;
|
|
||||||
import static net.runelite.client.plugins.banktags.BankTagsPlugin.TAG_SEARCH;
|
import static net.runelite.client.plugins.banktags.BankTagsPlugin.TAG_SEARCH;
|
||||||
import static net.runelite.client.plugins.banktags.BankTagsPlugin.VAR_TAG_SUFFIX;
|
import static net.runelite.client.plugins.banktags.BankTagsPlugin.VAR_TAG_SUFFIX;
|
||||||
import net.runelite.client.plugins.banktags.TagManager;
|
import net.runelite.client.plugins.banktags.TagManager;
|
||||||
@@ -250,7 +249,7 @@ public class TabInterface
|
|||||||
.onDone((newTags) ->
|
.onDone((newTags) ->
|
||||||
clientThread.invoke(() ->
|
clientThread.invoke(() ->
|
||||||
{
|
{
|
||||||
final List<String> tags = SPLITTER.splitToList(newTags.toLowerCase());
|
final List<String> tags = Text.fromCSV(newTags.toLowerCase());
|
||||||
|
|
||||||
for (Integer item : items)
|
for (Integer item : items)
|
||||||
{
|
{
|
||||||
@@ -290,7 +289,7 @@ public class TabInterface
|
|||||||
.toString()
|
.toString()
|
||||||
.trim();
|
.trim();
|
||||||
|
|
||||||
final Iterator<String> dataIter = BankTagsPlugin.SPLITTER.split(dataString).iterator();
|
final Iterator<String> dataIter = Text.fromCSV(dataString).iterator();
|
||||||
final String name = dataIter.next();
|
final String name = dataIter.next();
|
||||||
final String icon = dataIter.next();
|
final String icon = dataIter.next();
|
||||||
configManager.setConfiguration(CONFIG_GROUP, ICON_SEARCH + name, icon);
|
configManager.setConfiguration(CONFIG_GROUP, ICON_SEARCH + name, icon);
|
||||||
@@ -370,7 +369,7 @@ public class TabInterface
|
|||||||
data.add(String.valueOf(item));
|
data.add(String.valueOf(item));
|
||||||
}
|
}
|
||||||
|
|
||||||
final StringSelection stringSelection = new StringSelection(BankTagsPlugin.JOINER.join(data));
|
final StringSelection stringSelection = new StringSelection(Text.toCSV(data));
|
||||||
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(stringSelection, null);
|
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(stringSelection, null);
|
||||||
notifier.notify("Tag tab " + tagTab.getTag() + " has been copied to your clipboard!");
|
notifier.notify("Tag tab " + tagTab.getTag() + " has been copied to your clipboard!");
|
||||||
break;
|
break;
|
||||||
|
|||||||
@@ -38,8 +38,6 @@ import net.runelite.api.ItemID;
|
|||||||
import net.runelite.client.config.ConfigManager;
|
import net.runelite.client.config.ConfigManager;
|
||||||
import static net.runelite.client.plugins.banktags.BankTagsPlugin.CONFIG_GROUP;
|
import static net.runelite.client.plugins.banktags.BankTagsPlugin.CONFIG_GROUP;
|
||||||
import static net.runelite.client.plugins.banktags.BankTagsPlugin.ICON_SEARCH;
|
import static net.runelite.client.plugins.banktags.BankTagsPlugin.ICON_SEARCH;
|
||||||
import static net.runelite.client.plugins.banktags.BankTagsPlugin.JOINER;
|
|
||||||
import static net.runelite.client.plugins.banktags.BankTagsPlugin.SPLITTER;
|
|
||||||
import net.runelite.client.util.Text;
|
import net.runelite.client.util.Text;
|
||||||
import org.apache.commons.lang3.math.NumberUtils;
|
import org.apache.commons.lang3.math.NumberUtils;
|
||||||
|
|
||||||
@@ -80,7 +78,7 @@ class TabManager
|
|||||||
|
|
||||||
List<String> getAllTabs()
|
List<String> getAllTabs()
|
||||||
{
|
{
|
||||||
return SPLITTER.splitToList(MoreObjects.firstNonNull(configManager.getConfiguration(CONFIG_GROUP, TAG_TABS_CONFIG), ""));
|
return Text.fromCSV(MoreObjects.firstNonNull(configManager.getConfiguration(CONFIG_GROUP, TAG_TABS_CONFIG), ""));
|
||||||
}
|
}
|
||||||
|
|
||||||
TagTab load(String tag)
|
TagTab load(String tag)
|
||||||
@@ -122,7 +120,7 @@ class TabManager
|
|||||||
|
|
||||||
void save()
|
void save()
|
||||||
{
|
{
|
||||||
String tags = JOINER.join(tabs.stream().map(TagTab::getTag).collect(Collectors.toList()));
|
String tags = Text.toCSV(tabs.stream().map(TagTab::getTag).collect(Collectors.toList()));
|
||||||
configManager.setConfiguration(CONFIG_GROUP, TAG_TABS_CONFIG, tags);
|
configManager.setConfiguration(CONFIG_GROUP, TAG_TABS_CONFIG, tags);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -25,7 +25,6 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.client.plugins.chatnotifications;
|
package net.runelite.client.plugins.chatnotifications;
|
||||||
|
|
||||||
import com.google.common.base.Splitter;
|
|
||||||
import com.google.common.base.Strings;
|
import com.google.common.base.Strings;
|
||||||
import com.google.inject.Provides;
|
import com.google.inject.Provides;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@@ -57,8 +56,6 @@ import net.runelite.client.util.Text;
|
|||||||
)
|
)
|
||||||
public class ChatNotificationsPlugin extends Plugin
|
public class ChatNotificationsPlugin extends Plugin
|
||||||
{
|
{
|
||||||
private static final Splitter SPLITTER = Splitter.on(",").trimResults().omitEmptyStrings();
|
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
private Client client;
|
private Client client;
|
||||||
|
|
||||||
@@ -118,7 +115,7 @@ public class ChatNotificationsPlugin extends Plugin
|
|||||||
|
|
||||||
if (!config.highlightWordsString().trim().equals(""))
|
if (!config.highlightWordsString().trim().equals(""))
|
||||||
{
|
{
|
||||||
List<String> items = SPLITTER.splitToList(config.highlightWordsString());
|
List<String> items = Text.fromCSV(config.highlightWordsString());
|
||||||
String joined = items.stream()
|
String joined = items.stream()
|
||||||
.map(Pattern::quote)
|
.map(Pattern::quote)
|
||||||
.collect(Collectors.joining("|"));
|
.collect(Collectors.joining("|"));
|
||||||
|
|||||||
@@ -24,8 +24,6 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.client.plugins.clanchat;
|
package net.runelite.client.plugins.clanchat;
|
||||||
|
|
||||||
import com.google.common.base.Joiner;
|
|
||||||
import com.google.common.base.Splitter;
|
|
||||||
import com.google.common.base.Strings;
|
import com.google.common.base.Strings;
|
||||||
import com.google.common.collect.Lists;
|
import com.google.common.collect.Lists;
|
||||||
import com.google.inject.Provides;
|
import com.google.inject.Provides;
|
||||||
@@ -61,8 +59,6 @@ public class ClanChatPlugin extends Plugin
|
|||||||
private static final int MAX_CHATS = 10;
|
private static final int MAX_CHATS = 10;
|
||||||
private static final String CLAN_CHAT_TITLE = "Clan Chat";
|
private static final String CLAN_CHAT_TITLE = "Clan Chat";
|
||||||
private static final String RECENT_TITLE = "Recent Clan Chats";
|
private static final String RECENT_TITLE = "Recent Clan Chats";
|
||||||
private static final Joiner JOINER = Joiner.on(',').skipNulls();
|
|
||||||
private static final Splitter SPLITTER = Splitter.on(',').trimResults().omitEmptyStrings();
|
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
private Client client;
|
private Client client;
|
||||||
@@ -84,7 +80,7 @@ public class ClanChatPlugin extends Plugin
|
|||||||
@Override
|
@Override
|
||||||
public void startUp()
|
public void startUp()
|
||||||
{
|
{
|
||||||
chats = new ArrayList<>(SPLITTER.splitToList(config.chatsData()));
|
chats = new ArrayList<>(Text.fromCSV(config.chatsData()));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -225,6 +221,6 @@ public class ClanChatPlugin extends Plugin
|
|||||||
chats.remove(0);
|
chats.remove(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
config.chatsData(JOINER.join(chats));
|
config.chatsData(Text.toCSV(chats));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,7 +24,6 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.client.plugins.config;
|
package net.runelite.client.plugins.config;
|
||||||
|
|
||||||
import com.google.common.base.Splitter;
|
|
||||||
import com.google.common.base.Strings;
|
import com.google.common.base.Strings;
|
||||||
import com.google.common.primitives.Ints;
|
import com.google.common.primitives.Ints;
|
||||||
import java.awt.BorderLayout;
|
import java.awt.BorderLayout;
|
||||||
@@ -92,6 +91,7 @@ import net.runelite.client.ui.components.ComboBoxListRenderer;
|
|||||||
import net.runelite.client.ui.components.IconButton;
|
import net.runelite.client.ui.components.IconButton;
|
||||||
import net.runelite.client.ui.components.IconTextField;
|
import net.runelite.client.ui.components.IconTextField;
|
||||||
import net.runelite.client.util.ImageUtil;
|
import net.runelite.client.util.ImageUtil;
|
||||||
|
import net.runelite.client.util.Text;
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
public class ConfigPanel extends PluginPanel
|
public class ConfigPanel extends PluginPanel
|
||||||
@@ -106,7 +106,6 @@ public class ConfigPanel extends PluginPanel
|
|||||||
private static final String PINNED_PLUGINS_CONFIG_KEY = "pinnedPlugins";
|
private static final String PINNED_PLUGINS_CONFIG_KEY = "pinnedPlugins";
|
||||||
private static final String RUNELITE_PLUGIN = "RuneLite";
|
private static final String RUNELITE_PLUGIN = "RuneLite";
|
||||||
private static final String CHAT_COLOR_PLUGIN = "Chat Color";
|
private static final String CHAT_COLOR_PLUGIN = "Chat Color";
|
||||||
private static final Splitter COMMA_SPLITTER = Splitter.on(',');
|
|
||||||
|
|
||||||
private final PluginManager pluginManager;
|
private final PluginManager pluginManager;
|
||||||
private final ConfigManager configManager;
|
private final ConfigManager configManager;
|
||||||
@@ -653,7 +652,7 @@ public class ConfigPanel extends PluginPanel
|
|||||||
return Collections.emptyList();
|
return Collections.emptyList();
|
||||||
}
|
}
|
||||||
|
|
||||||
return COMMA_SPLITTER.splitToList(config);
|
return Text.fromCSV(config);
|
||||||
}
|
}
|
||||||
|
|
||||||
void savePinnedPlugins()
|
void savePinnedPlugins()
|
||||||
|
|||||||
@@ -25,8 +25,6 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.client.plugins.grounditems;
|
package net.runelite.client.plugins.grounditems;
|
||||||
|
|
||||||
import com.google.common.base.Joiner;
|
|
||||||
import com.google.common.base.Splitter;
|
|
||||||
import com.google.common.cache.CacheBuilder;
|
import com.google.common.cache.CacheBuilder;
|
||||||
import com.google.common.cache.LoadingCache;
|
import com.google.common.cache.LoadingCache;
|
||||||
import com.google.inject.Provides;
|
import com.google.inject.Provides;
|
||||||
@@ -87,6 +85,7 @@ import static net.runelite.client.plugins.grounditems.config.MenuHighlightMode.O
|
|||||||
import net.runelite.client.ui.overlay.OverlayManager;
|
import net.runelite.client.ui.overlay.OverlayManager;
|
||||||
import net.runelite.client.util.ColorUtil;
|
import net.runelite.client.util.ColorUtil;
|
||||||
import net.runelite.client.util.StackFormatter;
|
import net.runelite.client.util.StackFormatter;
|
||||||
|
import net.runelite.client.util.Text;
|
||||||
|
|
||||||
@PluginDescriptor(
|
@PluginDescriptor(
|
||||||
name = "Ground Items",
|
name = "Ground Items",
|
||||||
@@ -95,12 +94,6 @@ import net.runelite.client.util.StackFormatter;
|
|||||||
)
|
)
|
||||||
public class GroundItemsPlugin extends Plugin
|
public class GroundItemsPlugin extends Plugin
|
||||||
{
|
{
|
||||||
private static final Splitter COMMA_SPLITTER = Splitter
|
|
||||||
.on(",")
|
|
||||||
.omitEmptyStrings()
|
|
||||||
.trimResults();
|
|
||||||
|
|
||||||
private static final Joiner COMMA_JOINER = Joiner.on(",").skipNulls();
|
|
||||||
// Used when getting High Alchemy value - multiplied by general store price.
|
// Used when getting High Alchemy value - multiplied by general store price.
|
||||||
private static final float HIGH_ALCHEMY_CONSTANT = 0.6f;
|
private static final float HIGH_ALCHEMY_CONSTANT = 0.6f;
|
||||||
// ItemID for coins
|
// ItemID for coins
|
||||||
@@ -406,10 +399,10 @@ public class GroundItemsPlugin extends Plugin
|
|||||||
private void reset()
|
private void reset()
|
||||||
{
|
{
|
||||||
// gets the hidden items from the text box in the config
|
// gets the hidden items from the text box in the config
|
||||||
hiddenItemList = COMMA_SPLITTER.splitToList(config.getHiddenItems());
|
hiddenItemList = Text.fromCSV(config.getHiddenItems());
|
||||||
|
|
||||||
// gets the highlighted items from the text box in the config
|
// gets the highlighted items from the text box in the config
|
||||||
highlightedItemsList = COMMA_SPLITTER.splitToList(config.getHighlightItems());
|
highlightedItemsList = Text.fromCSV(config.getHighlightItems());
|
||||||
|
|
||||||
highlightedItems = CacheBuilder.newBuilder()
|
highlightedItems = CacheBuilder.newBuilder()
|
||||||
.maximumSize(512L)
|
.maximumSize(512L)
|
||||||
@@ -540,8 +533,8 @@ public class GroundItemsPlugin extends Plugin
|
|||||||
items.add(item);
|
items.add(item);
|
||||||
}
|
}
|
||||||
|
|
||||||
config.setHiddenItems(COMMA_JOINER.join(hiddenItemSet));
|
config.setHiddenItems(Text.toCSV(hiddenItemSet));
|
||||||
config.setHighlightedItem(COMMA_JOINER.join(highlightedItemSet));
|
config.setHighlightedItem(Text.toCSV(highlightedItemSet));
|
||||||
}
|
}
|
||||||
|
|
||||||
Color getHighlighted(String item, int gePrice, int haPrice)
|
Color getHighlighted(String item, int gePrice, int haPrice)
|
||||||
|
|||||||
@@ -25,8 +25,6 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.client.plugins.loottracker;
|
package net.runelite.client.plugins.loottracker;
|
||||||
|
|
||||||
import com.google.common.base.Joiner;
|
|
||||||
import com.google.common.base.Splitter;
|
|
||||||
import com.google.inject.Provides;
|
import com.google.inject.Provides;
|
||||||
import java.awt.image.BufferedImage;
|
import java.awt.image.BufferedImage;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
@@ -94,13 +92,6 @@ public class LootTrackerPlugin extends Plugin
|
|||||||
private static final Pattern CLUE_SCROLL_PATTERN = Pattern.compile("You have completed [0-9]+ ([a-z]+) Treasure Trails.");
|
private static final Pattern CLUE_SCROLL_PATTERN = Pattern.compile("You have completed [0-9]+ ([a-z]+) Treasure Trails.");
|
||||||
private static final int THEATRE_OF_BLOOD_REGION = 12867;
|
private static final int THEATRE_OF_BLOOD_REGION = 12867;
|
||||||
|
|
||||||
private static final Splitter COMMA_SPLITTER = Splitter
|
|
||||||
.on(",")
|
|
||||||
.omitEmptyStrings()
|
|
||||||
.trimResults();
|
|
||||||
|
|
||||||
private static final Joiner COMMA_JOINER = Joiner.on(",").skipNulls();
|
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
private ClientToolbar clientToolbar;
|
private ClientToolbar clientToolbar;
|
||||||
|
|
||||||
@@ -194,7 +185,7 @@ public class LootTrackerPlugin extends Plugin
|
|||||||
{
|
{
|
||||||
if (event.getGroup().equals("loottracker"))
|
if (event.getGroup().equals("loottracker"))
|
||||||
{
|
{
|
||||||
ignoredItems = COMMA_SPLITTER.splitToList(config.getIgnoredItems());
|
ignoredItems = Text.fromCSV(config.getIgnoredItems());
|
||||||
panel.updateIgnoredRecords();
|
panel.updateIgnoredRecords();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -202,7 +193,7 @@ public class LootTrackerPlugin extends Plugin
|
|||||||
@Override
|
@Override
|
||||||
protected void startUp() throws Exception
|
protected void startUp() throws Exception
|
||||||
{
|
{
|
||||||
ignoredItems = COMMA_SPLITTER.splitToList(config.getIgnoredItems());
|
ignoredItems = Text.fromCSV(config.getIgnoredItems());
|
||||||
panel = new LootTrackerPanel(this, itemManager);
|
panel = new LootTrackerPanel(this, itemManager);
|
||||||
spriteManager.getSpriteAsync(SpriteID.TAB_INVENTORY, 0, panel::loadHeaderIcon);
|
spriteManager.getSpriteAsync(SpriteID.TAB_INVENTORY, 0, panel::loadHeaderIcon);
|
||||||
|
|
||||||
@@ -411,7 +402,7 @@ public class LootTrackerPlugin extends Plugin
|
|||||||
ignoredItemSet.remove(name);
|
ignoredItemSet.remove(name);
|
||||||
}
|
}
|
||||||
|
|
||||||
config.setIgnoredItems(COMMA_JOINER.join(ignoredItemSet));
|
config.setIgnoredItems(Text.toCSV(ignoredItemSet));
|
||||||
panel.updateIgnoredRecords();
|
panel.updateIgnoredRecords();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -26,7 +26,6 @@
|
|||||||
package net.runelite.client.plugins.npchighlight;
|
package net.runelite.client.plugins.npchighlight;
|
||||||
|
|
||||||
import com.google.common.annotations.VisibleForTesting;
|
import com.google.common.annotations.VisibleForTesting;
|
||||||
import com.google.common.base.Splitter;
|
|
||||||
import com.google.common.collect.ImmutableList;
|
import com.google.common.collect.ImmutableList;
|
||||||
import com.google.inject.Provides;
|
import com.google.inject.Provides;
|
||||||
import java.time.Instant;
|
import java.time.Instant;
|
||||||
@@ -64,6 +63,7 @@ import net.runelite.client.menus.MenuManager;
|
|||||||
import net.runelite.client.plugins.Plugin;
|
import net.runelite.client.plugins.Plugin;
|
||||||
import net.runelite.client.plugins.PluginDescriptor;
|
import net.runelite.client.plugins.PluginDescriptor;
|
||||||
import net.runelite.client.ui.overlay.OverlayManager;
|
import net.runelite.client.ui.overlay.OverlayManager;
|
||||||
|
import net.runelite.client.util.Text;
|
||||||
import net.runelite.client.util.WildcardMatcher;
|
import net.runelite.client.util.WildcardMatcher;
|
||||||
|
|
||||||
@PluginDescriptor(
|
@PluginDescriptor(
|
||||||
@@ -82,9 +82,6 @@ public class NpcIndicatorsPlugin extends Plugin
|
|||||||
private static final List<MenuAction> NPC_MENU_ACTIONS = ImmutableList.of(MenuAction.NPC_FIRST_OPTION, MenuAction.NPC_SECOND_OPTION,
|
private static final List<MenuAction> NPC_MENU_ACTIONS = ImmutableList.of(MenuAction.NPC_FIRST_OPTION, MenuAction.NPC_SECOND_OPTION,
|
||||||
MenuAction.NPC_THIRD_OPTION, MenuAction.NPC_FOURTH_OPTION, MenuAction.NPC_FIFTH_OPTION);
|
MenuAction.NPC_THIRD_OPTION, MenuAction.NPC_FOURTH_OPTION, MenuAction.NPC_FIFTH_OPTION);
|
||||||
|
|
||||||
// Regex for splitting the hidden items in the config.
|
|
||||||
private static final Splitter COMMA_SPLITTER = Splitter.on(",").omitEmptyStrings().trimResults();
|
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
private Client client;
|
private Client client;
|
||||||
|
|
||||||
@@ -431,7 +428,7 @@ public class NpcIndicatorsPlugin extends Plugin
|
|||||||
return Collections.emptyList();
|
return Collections.emptyList();
|
||||||
}
|
}
|
||||||
|
|
||||||
return COMMA_SPLITTER.splitToList(configNpcs);
|
return Text.fromCSV(configNpcs);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void rebuildAllNpcs()
|
private void rebuildAllNpcs()
|
||||||
|
|||||||
@@ -26,6 +26,10 @@
|
|||||||
package net.runelite.client.util;
|
package net.runelite.client.util;
|
||||||
|
|
||||||
import com.google.common.base.CharMatcher;
|
import com.google.common.base.CharMatcher;
|
||||||
|
import com.google.common.base.Joiner;
|
||||||
|
import com.google.common.base.Splitter;
|
||||||
|
import java.util.Collection;
|
||||||
|
import java.util.List;
|
||||||
import java.util.regex.Pattern;
|
import java.util.regex.Pattern;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -34,6 +38,34 @@ import java.util.regex.Pattern;
|
|||||||
public class Text
|
public class Text
|
||||||
{
|
{
|
||||||
private static final Pattern TAG_REGEXP = Pattern.compile("<[^>]*>");
|
private static final Pattern TAG_REGEXP = Pattern.compile("<[^>]*>");
|
||||||
|
private static final Splitter COMMA_SPLITTER = Splitter
|
||||||
|
.on(",")
|
||||||
|
.omitEmptyStrings()
|
||||||
|
.trimResults();
|
||||||
|
|
||||||
|
private static final Joiner COMMA_JOINER = Joiner.on(",").skipNulls();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Splits comma separated values to list of strings
|
||||||
|
*
|
||||||
|
* @param input input
|
||||||
|
* @return list of values
|
||||||
|
*/
|
||||||
|
public static List<String> fromCSV(final String input)
|
||||||
|
{
|
||||||
|
return COMMA_SPLITTER.splitToList(input);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Joins collection of strings as comma separated values
|
||||||
|
*
|
||||||
|
* @param input collection
|
||||||
|
* @return comma separated value string
|
||||||
|
*/
|
||||||
|
public static String toCSV(final Collection<String> input)
|
||||||
|
{
|
||||||
|
return COMMA_JOINER.join(input);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Removes all tags from the given string.
|
* Removes all tags from the given string.
|
||||||
|
|||||||
@@ -24,7 +24,6 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.client.plugins.chatnotifications;
|
package net.runelite.client.plugins.chatnotifications;
|
||||||
|
|
||||||
import com.google.common.base.Splitter;
|
|
||||||
import com.google.inject.Guice;
|
import com.google.inject.Guice;
|
||||||
import com.google.inject.testing.fieldbinder.Bind;
|
import com.google.inject.testing.fieldbinder.Bind;
|
||||||
import com.google.inject.testing.fieldbinder.BoundFieldModule;
|
import com.google.inject.testing.fieldbinder.BoundFieldModule;
|
||||||
@@ -37,6 +36,7 @@ import net.runelite.api.MessageNode;
|
|||||||
import net.runelite.api.events.SetMessage;
|
import net.runelite.api.events.SetMessage;
|
||||||
import net.runelite.client.Notifier;
|
import net.runelite.client.Notifier;
|
||||||
import net.runelite.client.chat.ChatMessageManager;
|
import net.runelite.client.chat.ChatMessageManager;
|
||||||
|
import net.runelite.client.util.Text;
|
||||||
import static org.junit.Assert.assertEquals;
|
import static org.junit.Assert.assertEquals;
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
@@ -97,8 +97,7 @@ public class ChatNotificationsPluginTest
|
|||||||
public void highlightListTest()
|
public void highlightListTest()
|
||||||
{
|
{
|
||||||
when(config.highlightWordsString()).thenReturn("this,is, a , test, ");
|
when(config.highlightWordsString()).thenReturn("this,is, a , test, ");
|
||||||
final Splitter splitter = Splitter.on(",").trimResults().omitEmptyStrings();
|
final List<String> higlights = Text.fromCSV(config.highlightWordsString());
|
||||||
final List<String> higlights = splitter.splitToList(config.highlightWordsString());
|
|
||||||
assertEquals(4, higlights.size());
|
assertEquals(4, higlights.size());
|
||||||
|
|
||||||
final Iterator<String> iterator = higlights.iterator();
|
final Iterator<String> iterator = higlights.iterator();
|
||||||
|
|||||||
Reference in New Issue
Block a user