#1245: Add a stream method to Registry to make it easier to use and to avoid unnecessary wrapping
This commit is contained in:
parent
de421cf56b
commit
caee2311a4
@ -25,6 +25,7 @@ import org.bukkit.generator.structure.Structure;
|
|||||||
import org.bukkit.generator.structure.StructureType;
|
import org.bukkit.generator.structure.StructureType;
|
||||||
import org.bukkit.inventory.meta.trim.TrimMaterial;
|
import org.bukkit.inventory.meta.trim.TrimMaterial;
|
||||||
import org.bukkit.inventory.meta.trim.TrimPattern;
|
import org.bukkit.inventory.meta.trim.TrimPattern;
|
||||||
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
public class CraftRegistry<B extends Keyed, M> implements Registry<B> {
|
public class CraftRegistry<B extends Keyed, M> implements Registry<B> {
|
||||||
|
|
||||||
@ -92,9 +93,15 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> {
|
|||||||
return bukkit;
|
return bukkit;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@NotNull
|
||||||
|
@Override
|
||||||
|
public Stream<B> stream() {
|
||||||
|
return minecraftRegistry.keySet().stream().map(minecraftKey -> get(CraftNamespacedKey.fromMinecraft(minecraftKey)));
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Iterator<B> iterator() {
|
public Iterator<B> iterator() {
|
||||||
return values().iterator();
|
return stream().iterator();
|
||||||
}
|
}
|
||||||
|
|
||||||
public B createBukkit(NamespacedKey namespacedKey, M minecraft) {
|
public B createBukkit(NamespacedKey namespacedKey, M minecraft) {
|
||||||
@ -104,8 +111,4 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> {
|
|||||||
|
|
||||||
return minecraftToBukkit.apply(namespacedKey, minecraft);
|
return minecraftToBukkit.apply(namespacedKey, minecraft);
|
||||||
}
|
}
|
||||||
|
|
||||||
public Stream<B> values() {
|
|
||||||
return minecraftRegistry.keySet().stream().map(minecraftKey -> get(CraftNamespacedKey.fromMinecraft(minecraftKey)));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user