java.lang.Object
dev.scsupercraft.mc.libraries.corelib.api.serialization.CodecHelper

@AvailableSince("1.0.0") public final class CodecHelper extends Object
A utility class for resolving codecs.

You can register your own codec resolvers using SerializationEvent.RegisterCodecResolverEvent.
  • Method Details

    • getCodec

      @AvailableSince("1.0.0") public static <T, U extends T> CodecHolder<U> getCodec(Class<T> tClass, Type... types)
      Gets a codec for the provided class.
      Type Parameters:
      T - The type of class.
      U - The type of the resulting codec.
      Parameters:
      tClass - The class to resolve a codec for.
      types - An array of types for the class's type parameters.
      Returns:
      The resolved codec.
    • getCodec

      @AvailableSince("1.0.0") public static <T, U extends T> CodecHolder<U> getCodec(GenericClass<T> genericClass)
      A more advanced version of getCodec(Class, Type...)

      Use with caution.

      Type Parameters:
      T - The type of class held in the generic class.
      U - The type of the resulting codec.
      Parameters:
      genericClass - The generic class to resolve a codec for.
      Returns:
      The resolved codec.
    • getResolvers

      @AvailableSince("1.0.0") public static Set<CodecResolver> getResolvers()
      Gets all codec resolvers registered with the SerializationEvent.RegisterCodecResolverEvent.
      Returns:
      The codec resolvers.
    • refreshCodecResolvers

      @AvailableSince("1.0.0") public static void refreshCodecResolvers()