public interface DataRegistration<T extends DataManipulator<T,I>,I extends ImmutableDataManipulator<I,T>> extends CatalogType
Modifier and Type | Interface and Description |
---|---|
static interface |
DataRegistration.Builder<T extends DataManipulator<T,I>,I extends ImmutableDataManipulator<I,T>> |
Modifier and Type | Method and Description |
---|---|
static DataRegistration.Builder<?,?> |
builder()
Creates a new
DataRegistration.Builder to build a DataRegistration . |
DataManipulatorBuilder<T,I> |
getDataManipulatorBuilder()
Gets the
DataManipulatorBuilder registered for this registration. |
String |
getId()
Gets the unique identifier of this
CatalogType . |
Class<? extends I> |
getImmutableImplementationClass()
Gets the implementing class of the
ImmutableDataManipulator for
this registration. |
Class<I> |
getImmutableManipulatorClass()
Gets the
ImmutableDataManipulator class for this registration. |
Class<? extends T> |
getImplementationClass()
Gets the implementing class of the
DataManipulator for this
registration. |
Class<T> |
getManipulatorClass()
Gets the
DataManipulator class for this registration. |
String |
getName()
Gets the human-readable name of this individual
CatalogType . |
PluginContainer |
getPluginContainer()
Gets the owning
PluginContainer . |
static DataRegistration.Builder<?,?> builder()
DataRegistration.Builder
to build a DataRegistration
.
Through the use of generics, this can be duck-typed to the generics of
the desired DataManipulator
type to be registered.Class<T> getManipulatorClass()
DataManipulator
class for this registration.Class<? extends T> getImplementationClass()
DataManipulator
for this
registration.Class<I> getImmutableManipulatorClass()
ImmutableDataManipulator
class for this registration.Class<? extends I> getImmutableImplementationClass()
ImmutableDataManipulator
for
this registration.DataManipulatorBuilder<T,I> getDataManipulatorBuilder()
DataManipulatorBuilder
registered for this registration.PluginContainer getPluginContainer()
PluginContainer
.String getId()
CatalogType
CatalogType
. The identifier is
case insensitive, thus there cannot be another instance with a different
character case. The id of this instance must remain the same for the
entire duration of its existence. The identifier can be formatted however
needed.
A typical id format follows the pattern of `modId:name`
or `minecraft:name`
. However the prefix may be omitted for
default/vanilla minecraft types.
getId
in interface CatalogType
String getName()
CatalogType
CatalogType
. This
name is not guaranteed to be unique. This value should not be used for
serialization.getName
in interface CatalogType