Klasse GenericRegistry<K,V>

java.lang.Object
de.luckymcdev.foundryengine.common.registry.GenericRegistry<K,V>
Typparameter:
K - Key Type.
V - Value Type.
Alle implementierten Schnittstellen:
Registry<K,V>

public class GenericRegistry<K,V> extends Object implements Registry<K,V>
A Registry for registering things.
  • Konstruktorübersicht

    Konstruktoren
    Konstruktor
    Beschreibung
     
  • Methodenübersicht

    Modifikator und Typ
    Methode
    Beschreibung
    void
    Clear the registry (only if not frozen).
    boolean
    contains(K key)
    Check if the registry contains a key.
    void
    forEach(BiConsumer<K,V> kvConsumer)
    Iterate over all key-value pairs.
    void
    forEach(Consumer<V> action)
    Iterate over all values.
    void
    Freeze the registry, making it immutable.
    get(K key)
    Get the value directly (legacy method, prefer getRef()).
    getKey(V value)
    Get the key for a given value (reverse lookup).
    getRandom(net.minecraft.util.RandomSource random)
    Get a random value from the registry.
    getRef(K key)
    Get a reference to the registry entry.
    boolean
    Check if the registry is empty.
    boolean
    Check if the registry is frozen (immutable).
    Get all keys in the registry.
    boolean
    onFreeze(Runnable callback)
    Register a callback to run when the registry is frozen.
    void
    register(K key, V value)
    Register a key-value pair in this registry.
    void
    remove(K key)
    Remove a key from this registry.
    void
    setDefaultValue(V defaultValue)
    Sets the default value returned when a key is not found.
    int
    Get the number of entries in the registry.
    Stream all values.
    tryGet(K key)
    Try to get a value, returning Optional.
    void
    Unfreeze the registry, allowing modifications again.
    Get all values in the registry.

    Von Klasse geerbte Methoden Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Konstruktordetails

    • GenericRegistry

      public GenericRegistry()
  • Methodendetails

    • register

      public void register(K key, V value)
      Beschreibung aus Schnittstelle kopiert: Registry
      Register a key-value pair in this registry.
      Angegeben von:
      register in Schnittstelle Registry<K,V>
    • remove

      public void remove(K key)
      Beschreibung aus Schnittstelle kopiert: Registry
      Remove a key from this registry.
      Angegeben von:
      remove in Schnittstelle Registry<K,V>
    • get

      public V get(K key)
      Beschreibung aus Schnittstelle kopiert: Registry
      Get the value directly (legacy method, prefer getRef()). Returns null or default value if not found.
      Angegeben von:
      get in Schnittstelle Registry<K,V>
    • getRef

      public RegistryRef<K,V> getRef(K key)
      Beschreibung aus Schnittstelle kopiert: Registry
      Get a reference to the registry entry. This is the preferred way to access registry entries.
      Angegeben von:
      getRef in Schnittstelle Registry<K,V>
      Gibt zurück:
      RegistryRef that can be cached and provides lazy loading
    • getKey

      public K getKey(V value)
      Beschreibung aus Schnittstelle kopiert: Registry
      Get the key for a given value (reverse lookup).
      Angegeben von:
      getKey in Schnittstelle Registry<K,V>
    • getRandom

      public V getRandom(net.minecraft.util.RandomSource random)
      Beschreibung aus Schnittstelle kopiert: Registry
      Get a random value from the registry.
      Angegeben von:
      getRandom in Schnittstelle Registry<K,V>
    • tryGet

      public Optional<V> tryGet(K key)
      Beschreibung aus Schnittstelle kopiert: Registry
      Try to get a value, returning Optional.
      Angegeben von:
      tryGet in Schnittstelle Registry<K,V>
    • contains

      public boolean contains(K key)
      Beschreibung aus Schnittstelle kopiert: Registry
      Check if the registry contains a key.
      Angegeben von:
      contains in Schnittstelle Registry<K,V>
    • values

      public Collection<V> values()
      Beschreibung aus Schnittstelle kopiert: Registry
      Get all values in the registry.
      Angegeben von:
      values in Schnittstelle Registry<K,V>
    • keys

      public Collection<K> keys()
      Beschreibung aus Schnittstelle kopiert: Registry
      Get all keys in the registry.
      Angegeben von:
      keys in Schnittstelle Registry<K,V>
    • isFrozen

      public boolean isFrozen()
      Beschreibung aus Schnittstelle kopiert: Registry
      Check if the registry is frozen (immutable).
      Angegeben von:
      isFrozen in Schnittstelle Registry<K,V>
    • isEmpty

      public boolean isEmpty()
      Beschreibung aus Schnittstelle kopiert: Registry
      Check if the registry is empty.
      Angegeben von:
      isEmpty in Schnittstelle Registry<K,V>
    • freeze

      public void freeze()
      Beschreibung aus Schnittstelle kopiert: Registry
      Freeze the registry, making it immutable.
      Angegeben von:
      freeze in Schnittstelle Registry<K,V>
    • unfreeze

      public void unfreeze()
      Beschreibung aus Schnittstelle kopiert: Registry
      Unfreeze the registry, allowing modifications again.
      Angegeben von:
      unfreeze in Schnittstelle Registry<K,V>
    • onFreeze

      public boolean onFreeze(Runnable callback)
      Beschreibung aus Schnittstelle kopiert: Registry
      Register a callback to run when the registry is frozen.
      Angegeben von:
      onFreeze in Schnittstelle Registry<K,V>
      Gibt zurück:
      true if callback was added, false if already frozen (callback ran immediately)
    • forEach

      public void forEach(BiConsumer<K,V> kvConsumer)
      Beschreibung aus Schnittstelle kopiert: Registry
      Iterate over all key-value pairs.
      Angegeben von:
      forEach in Schnittstelle Registry<K,V>
    • forEach

      public void forEach(Consumer<V> action)
      Beschreibung aus Schnittstelle kopiert: Registry
      Iterate over all values.
      Angegeben von:
      forEach in Schnittstelle Registry<K,V>
    • stream

      public Stream<V> stream()
      Beschreibung aus Schnittstelle kopiert: Registry
      Stream all values.
      Angegeben von:
      stream in Schnittstelle Registry<K,V>
    • clear

      public void clear()
      Beschreibung aus Schnittstelle kopiert: Registry
      Clear the registry (only if not frozen).
      Angegeben von:
      clear in Schnittstelle Registry<K,V>
    • size

      public int size()
      Beschreibung aus Schnittstelle kopiert: Registry
      Get the number of entries in the registry.
      Angegeben von:
      size in Schnittstelle Registry<K,V>
    • setDefaultValue

      public void setDefaultValue(V defaultValue)
      Sets the default value returned when a key is not found.