aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/shedaniel/rei/impl/EntryRegistryImpl.java
diff options
context:
space:
mode:
authorshedaniel <daniel@shedaniel.me>2020-01-02 14:31:16 +0800
committershedaniel <daniel@shedaniel.me>2020-01-02 14:31:16 +0800
commit5e2eccadbd91171c01cdb209d1338bcfb7786b1c (patch)
tree6c7387de5baea8b335e8abe58651018f77ad2d41 /src/main/java/me/shedaniel/rei/impl/EntryRegistryImpl.java
parente8714fe8fc1dcaec7ad299c63e2b657870c8fb40 (diff)
downloadRoughlyEnoughItems-5e2eccadbd91171c01cdb209d1338bcfb7786b1c.tar.gz
RoughlyEnoughItems-5e2eccadbd91171c01cdb209d1338bcfb7786b1c.tar.bz2
RoughlyEnoughItems-5e2eccadbd91171c01cdb209d1338bcfb7786b1c.zip
3.3
Fix #58 Close #134 Close #158 Fix #227
Diffstat (limited to 'src/main/java/me/shedaniel/rei/impl/EntryRegistryImpl.java')
-rw-r--r--src/main/java/me/shedaniel/rei/impl/EntryRegistryImpl.java32
1 files changed, 18 insertions, 14 deletions
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<EntryStack> entries = Lists.newCopyOnWriteArrayList();
private final Queue<Pair<EntryStack, Collection<? extends EntryStack>>> queueRegisterEntryStackAfter = Queues.newConcurrentLinkedQueue();
private List<EntryStack> reloadList;
-
+
public void distinct() {
TreeSet<EntryStack> 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<EntryStack, Collection<? extends EntryStack>> pair = queueRegisterEntryStackAfter.poll();
- if (pair == null) break;
+ if (pair == null)
+ break;
registerEntriesAfter(pair.getLeft(), pair.getRight());
}
}
-
+
@Override
public List<EntryStack> getStacksList() {
return RecipeHelper.getInstance().arePluginsLoading() ? reloadList : entries;
}
-
+
public void reset() {
reloadList = Lists.newArrayList();
queueRegisterEntryStackAfter.clear();
entries.clear();
reloadList.clear();
}
-
+
@Override
public List<ItemStack> appendStacksForItem(Item item) {
DefaultedList<ItemStack> 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<ItemStack> 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<? extends EntryStack> 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<? extends EntryStack> 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<E> extends DefaultedList<E> {
public DefaultedLinkedList(List<E> delegate, @Nullable E initialElement) {
super(delegate, initialElement);