Package org.spongepowered.api.registry
Interface Registry<T>
- Type Parameters:
T- The type
A store of
registry entries with a well defined type.-
Method Summary
Modifier and TypeMethodDescriptiondefault <V extends T>
Optional<RegistryEntry<V>> findEntry(RegistryKey<T> key) findEntry(ResourceKey), provided for convenience when usingRegistryKey.<V extends T>
Optional<RegistryEntry<V>> findEntry(ResourceKey key) findValue(RegistryKey<T> key) findValue(ResourceKey), provided for convenience when usingRegistryKey.findValue(ResourceKey key) findValueKey(T value) Gets thekeyfor a particular value, if found.booleanReturns if this registry supports adding additional values.<V extends T>
Optional<RegistryEntry<V>> register(ResourceKey key, V value) Registers a new value to this registry.stream()Gets aStreamof all registry values within.taggedValues(Tag<T> tag) Returns the registered types associated with given tag.tags()Gets the tags associated with this registry.type()Gets thekeyidentifying this registry.default <V extends T>
Vvalue(RegistryKey<T> key) value(ResourceKey), provided for convenience when usingRegistryKey.<V extends T>
Vvalue(ResourceKey key) Gets thekeyfor a particular value.
-
Method Details
-
type
RegistryType<T> type()Gets thekeyidentifying this registry.- Returns:
- The key
-
valueKey
Gets thekeyfor a particular value.Great care needs to be made in calling this method with any uncertainty as to if the key will exist. Should the value lack a key, a
IllegalStateExceptionwill be thrown. Therefore, it is advised to callfindValueKey(Object)instead.- Parameters:
value- The value- Returns:
- The key
-
findValueKey
Gets thekeyfor a particular value, if found.The value must be registered within to be retrieved by key.
- Parameters:
value- The value- Returns:
- The key or
Optional.empty()
-
findEntry
Gets theentryfor a particularkey, if found.The value must be registered within to be retrieved by key.
- Parameters:
key- The key- Returns:
- The entry or
Optional.empty()
-
findEntry
findEntry(ResourceKey), provided for convenience when usingRegistryKey.- Parameters:
key- The key- Returns:
- The entry or
Optional.empty()
-
findValue
- Parameters:
key- The key- Returns:
- The value or
Optional.empty()
-
findValue
findValue(ResourceKey), provided for convenience when usingRegistryKey.- Parameters:
key- The key- Returns:
- The value or
Optional.empty()
-
value
Gets thevaluefor a particularkey.Great care needs to be made in calling this method with any uncertainty as to if the key will exist. Should this key lack a value, a
ValueNotFoundExceptionwill be thrown. Therefore, it is advised to callfindValue(ResourceKey)orfindValue(RegistryKey)instead.- Parameters:
key- The key- Returns:
- The value
-
taggedValues
Returns the registered types associated with given tag.- Parameters:
tag- The tag- Returns:
- The registered types associated with given tag
-
tags
Gets the tags associated with this registry.- Returns:
- The tags associated with this registry
-
value
value(ResourceKey), provided for convenience when usingRegistryKey.- Parameters:
key- The key- Returns:
- The value
-
streamEntries
Stream<RegistryEntry<T>> streamEntries()- Returns:
- The stream
-
stream
Gets aStreamof all registry values within.- Returns:
- The stream
-
isDynamic
boolean isDynamic()Returns if this registry supports adding additional values.- Returns:
- True if the registry can add additional values
-
register
Registers a new value to this registry.If this registry is not
dynamicor the provided key is already registered,Optional.empty()is returned instead.- Parameters:
key- The keyvalue- The value- Returns:
- The newly added entry,
Optional.empty()otherwise
-