stonedloottracker: Use interface instead of type

This commit is contained in:
sdburns1998
2019-07-07 21:21:57 +02:00
parent 17e24250a7
commit 0fea9c08ed
7 changed files with 26 additions and 22 deletions

View File

@@ -41,6 +41,7 @@ import java.util.Collections;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set;
import java.util.TreeSet; import java.util.TreeSet;
import java.util.regex.Matcher; import java.util.regex.Matcher;
import java.util.regex.Pattern; import java.util.regex.Pattern;
@@ -572,7 +573,7 @@ public class StonedLootTrackerPlugin extends Plugin
writer.deleteLootTrackerRecords(name); writer.deleteLootTrackerRecords(name);
} }
public TreeSet<String> getNames() public Set<String> getNames()
{ {
return new TreeSet<>(lootRecordMultimap.keySet()); return new TreeSet<>(lootRecordMultimap.keySet());
} }

View File

@@ -26,6 +26,7 @@ package net.runelite.client.plugins.stonedloottracker.data;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
import java.util.TreeSet; import java.util.TreeSet;
@@ -120,14 +121,14 @@ public enum BossTab
} }
// By Category Name // By Category Name
private static final Map<String, ArrayList<BossTab>> byCategoryName = buildCategoryMap(); private static final Map<String, List<BossTab>> byCategoryName = buildCategoryMap();
public static ArrayList<BossTab> getByCategoryName(String name) public static List<BossTab> getByCategoryName(String name)
{ {
return byCategoryName.get(name.toUpperCase()); return byCategoryName.get(name.toUpperCase());
} }
private static Map<String, ArrayList<BossTab>> buildCategoryMap() private static Map<String, List<BossTab>> buildCategoryMap()
{ {
Map<String, ArrayList<BossTab>> map = new HashMap<>(); Map<String, List<BossTab>> map = new HashMap<>();
for (BossTab tab : values()) for (BossTab tab : values())
{ {
map.computeIfAbsent(tab.getCategory().toUpperCase(), e -> new ArrayList<>()).add(tab); map.computeIfAbsent(tab.getCategory().toUpperCase(), e -> new ArrayList<>()).add(tab);

View File

@@ -28,6 +28,7 @@ import java.util.ArrayList;
import java.util.Collection; import java.util.Collection;
import java.util.HashMap; import java.util.HashMap;
import java.util.LinkedHashMap; import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import lombok.AccessLevel; import lombok.AccessLevel;
@@ -874,14 +875,14 @@ public enum UniqueItem
} }
// Returns an array of UniqueItems by an individual `activities` name // Returns an array of UniqueItems by an individual `activities` name
private static final Map<String, ArrayList<UniqueItem>> byActivityName = buildActivityMap(); private static final Map<String, List<UniqueItem>> byActivityName = buildActivityMap();
public static ArrayList<UniqueItem> getByActivityName(String name) public static List<UniqueItem> getByActivityName(String name)
{ {
return byActivityName.get(name.toUpperCase()); return byActivityName.get(name.toUpperCase());
} }
private static Map<String, ArrayList<UniqueItem>> buildActivityMap() private static Map<String, List<UniqueItem>> buildActivityMap()
{ {
Map<String, ArrayList<UniqueItem>> byName = new HashMap<>(); Map<String, List<UniqueItem>> byName = new HashMap<>();
for (UniqueItem item : values()) for (UniqueItem item : values())
{ {
String[] activities = item.getActivities(); String[] activities = item.getActivities();
@@ -897,14 +898,14 @@ public enum UniqueItem
// Return an array of UniqueItems by `setName` // Return an array of UniqueItems by `setName`
// Unused ATM // Unused ATM
private static final Map<String, ArrayList<UniqueItem>> bySetName = buildSetMap(); private static final Map<String, List<UniqueItem>> bySetName = buildSetMap();
public static ArrayList<UniqueItem> getBySetName(String name) public static List<UniqueItem> getBySetName(String name)
{ {
return bySetName.get(name.toUpperCase()); return bySetName.get(name.toUpperCase());
} }
private static Map<String, ArrayList<UniqueItem>> buildSetMap() private static Map<String, List<UniqueItem>> buildSetMap()
{ {
Map<String, ArrayList<UniqueItem>> byName = new HashMap<>(); Map<String, List<UniqueItem>> byName = new HashMap<>();
for (UniqueItem item : values()) for (UniqueItem item : values())
{ {
byName.computeIfAbsent(item.getSetName().toUpperCase(), e -> new ArrayList<>()).add(item); byName.computeIfAbsent(item.getSetName().toUpperCase(), e -> new ArrayList<>()).add(item);

View File

@@ -26,8 +26,8 @@ package net.runelite.client.plugins.stonedloottracker.ui;
import java.awt.Dimension; import java.awt.Dimension;
import java.awt.GridLayout; import java.awt.GridLayout;
import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.List;
import javax.inject.Singleton; import javax.inject.Singleton;
import javax.swing.JLabel; import javax.swing.JLabel;
import javax.swing.JPanel; import javax.swing.JPanel;
@@ -62,7 +62,7 @@ class LootGrid extends JPanel
*/ */
private void buildItems() private void buildItems()
{ {
ArrayList<LootTrackerItemEntry> items = LootTrackerBox.dedupeClues(Arrays.asList(itemsToDisplay)); List<LootTrackerItemEntry> items = LootTrackerBox.dedupeClues(Arrays.asList(itemsToDisplay));
// Calculates how many rows need to be display to fit all items // Calculates how many rows need to be display to fit all items
final int rowSize = LootTrackerBox.rowSize(items.size()); final int rowSize = LootTrackerBox.rowSize(items.size());

View File

@@ -32,6 +32,7 @@ import java.util.Collection;
import java.util.HashMap; import java.util.HashMap;
import java.util.HashSet; import java.util.HashSet;
import java.util.LinkedHashMap; import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -187,7 +188,7 @@ class LootPanel extends JPanel
Collection<LootTrackerItemEntry> itemsToDisplay = new ArrayList<>(); Collection<LootTrackerItemEntry> itemsToDisplay = new ArrayList<>();
ArrayList<LootTrackerItemEntry> items = LootTrackerBox.dedupeClues(new ArrayList<>(consolidated.values())); List<LootTrackerItemEntry> items = LootTrackerBox.dedupeClues(new ArrayList<>(consolidated.values()));
for (LootTrackerItemEntry item : items) for (LootTrackerItemEntry item : items)
{ {
totalValue += item.getTotal(); totalValue += item.getTotal();

View File

@@ -184,9 +184,9 @@ class LootTrackerBox extends JPanel
repaint(); repaint();
} }
static ArrayList<LootTrackerItemEntry> dedupeClues(List<LootTrackerItemEntry> items) static List<LootTrackerItemEntry> dedupeClues(List<LootTrackerItemEntry> items)
{ {
final ArrayList<LootTrackerItemEntry> newItems = new ArrayList<>(); final List<LootTrackerItemEntry> newItems = new ArrayList<>();
int eliteClues = 0; int eliteClues = 0;
int hardClues = 0; int hardClues = 0;

View File

@@ -33,7 +33,7 @@ import java.awt.Image;
import java.awt.Insets; import java.awt.Insets;
import java.awt.event.MouseAdapter; import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent; import java.awt.event.MouseEvent;
import java.util.ArrayList; import java.util.List;
import java.util.Set; import java.util.Set;
import java.util.TreeSet; import java.util.TreeSet;
import javax.inject.Singleton; import javax.inject.Singleton;
@@ -53,7 +53,7 @@ import net.runelite.client.ui.components.materialtabs.MaterialTabGroup;
@Singleton @Singleton
class SelectionPanel extends JPanel class SelectionPanel extends JPanel
{ {
private final TreeSet<String> names; private final Set<String> names;
private final LootTrackerPanel parent; private final LootTrackerPanel parent;
private final ItemManager itemManager; private final ItemManager itemManager;
@@ -63,7 +63,7 @@ class SelectionPanel extends JPanel
private final boolean configToggle; private final boolean configToggle;
SelectionPanel(final boolean configToggle, final TreeSet<String> names, final LootTrackerPanel parent, final ItemManager itemManager) SelectionPanel(final boolean configToggle, final Set<String> names, final LootTrackerPanel parent, final ItemManager itemManager)
{ {
this.names = names == null ? new TreeSet<>() : names; this.names = names == null ? new TreeSet<>() : names;
this.parent = parent; this.parent = parent;
@@ -168,7 +168,7 @@ class SelectionPanel extends JPanel
name.setForeground(Color.WHITE); name.setForeground(Color.WHITE);
name.setVerticalAlignment(SwingConstants.CENTER); name.setVerticalAlignment(SwingConstants.CENTER);
ArrayList<BossTab> categoryTabs = BossTab.getByCategoryName(categoryName); List<BossTab> categoryTabs = BossTab.getByCategoryName(categoryName);
for (BossTab tab : categoryTabs) for (BossTab tab : categoryTabs)
{ {
// Create tab (with hover effects/text) // Create tab (with hover effects/text)