From 5e2eccadbd91171c01cdb209d1338bcfb7786b1c Mon Sep 17 00:00:00 2001 From: shedaniel Date: Thu, 2 Jan 2020 14:31:16 +0800 Subject: 3.3 Fix #58 Close #134 Close #158 Fix #227 --- .../me/shedaniel/rei/impl/EntryRegistryImpl.java | 32 ++++++++++++---------- 1 file changed, 18 insertions(+), 14 deletions(-) (limited to 'src/main/java/me/shedaniel/rei/impl/EntryRegistryImpl.java') diff --git a/src/main/java/me/shedaniel/rei/impl/EntryRegistryImpl.java b/src/main/java/me/shedaniel/rei/impl/EntryRegistryImpl.java index d1eb48144..f466447e6 100644 --- a/src/main/java/me/shedaniel/rei/impl/EntryRegistryImpl.java +++ b/src/main/java/me/shedaniel/rei/impl/EntryRegistryImpl.java @@ -23,11 +23,11 @@ import java.util.concurrent.CopyOnWriteArrayList; @Deprecated @Internal public class EntryRegistryImpl implements EntryRegistry { - + private final CopyOnWriteArrayList entries = Lists.newCopyOnWriteArrayList(); private final Queue>> queueRegisterEntryStackAfter = Queues.newConcurrentLinkedQueue(); private List reloadList; - + public void distinct() { TreeSet set = new TreeSet<>((i, j) -> i.equalsAll(j) ? 0 : 1); set.addAll(reloadList); @@ -37,31 +37,33 @@ public class EntryRegistryImpl implements EntryRegistry { reloadList.clear(); while (true) { Pair> pair = queueRegisterEntryStackAfter.poll(); - if (pair == null) break; + if (pair == null) + break; registerEntriesAfter(pair.getLeft(), pair.getRight()); } } - + @Override public List getStacksList() { return RecipeHelper.getInstance().arePluginsLoading() ? reloadList : entries; } - + public void reset() { reloadList = Lists.newArrayList(); queueRegisterEntryStackAfter.clear(); entries.clear(); reloadList.clear(); } - + @Override public List appendStacksForItem(Item item) { DefaultedList list = new DefaultedLinkedList(Lists.newLinkedList(), null); item.appendStacks(item.getGroup(), list); - if (list.isEmpty()) list.add(item.getStackForRender()); + if (list.isEmpty()) + list.add(item.getStackForRender()); return list; } - + @Override public ItemStack[] getAllStacksFromItem(Item item) { List list = appendStacksForItem(item); @@ -69,11 +71,12 @@ public class EntryRegistryImpl implements EntryRegistry { Arrays.sort(array, (a, b) -> ItemStack.areEqualIgnoreDamage(a, b) ? 0 : 1); return array; } - + @Override @Deprecated public void registerEntryAfter(EntryStack afterEntry, EntryStack stack, boolean checkAlreadyContains) { - if (stack.isEmpty()) return; + if (stack.isEmpty()) + return; if (afterEntry == null) { getStacksList().add(stack); } else { @@ -86,7 +89,7 @@ public class EntryRegistryImpl implements EntryRegistry { getStacksList().add(last, stack); } } - + @Override public void queueRegisterEntryAfter(EntryStack afterEntry, Collection stacks) { if (RecipeHelper.getInstance().arePluginsLoading()) { @@ -94,7 +97,7 @@ public class EntryRegistryImpl implements EntryRegistry { } else registerEntriesAfter(afterEntry, stacks); } - + @Override public void registerEntriesAfter(EntryStack afterStack, Collection stacks) { if (afterStack != null) { @@ -106,9 +109,10 @@ public class EntryRegistryImpl implements EntryRegistry { } } getStacksList().addAll(index, stacks); - } else getStacksList().addAll(stacks); + } else + getStacksList().addAll(stacks); } - + private class DefaultedLinkedList extends DefaultedList { public DefaultedLinkedList(List delegate, @Nullable E initialElement) { super(delegate, initialElement); -- cgit