Interface IMetadataComponentSerializer<T extends MetadataComponent>

All Known Implementing Classes:
CompactionMetadata.CompactionMetadataSerializer, SerializationHeader.Serializer, StatsMetadata.StatsMetadataSerializer, ValidationMetadata.ValidationMetadataSerializer

public interface IMetadataComponentSerializer<T extends MetadataComponent>
Metadata component serializer
  • Method Details

    • serializedSize

      int serializedSize(Version version, T component) throws IOException
      Calculate and return serialized size.
      Parameters:
      version -
      component - MetadataComponent to calculate serialized size
      Returns:
      serialized size of this component
      Throws:
      IOException
    • serialize

      void serialize(Version version, T component, DataOutputPlus out) throws IOException
      Serialize metadata component to given output.
      Parameters:
      version -
      component - MetadataComponent to serialize
      out - serialize destination
      Throws:
      IOException
    • deserialize

      T deserialize(Version version, DataInputPlus in) throws IOException
      Deserialize metadata component from given input.
      Parameters:
      version - serialize version
      in - deserialize source
      Returns:
      Deserialized component
      Throws:
      IOException