org.apache.cassandra.io.sstable.metadata

## Interface IMetadataSerializer

- All Known Implementing Classes:
    LegacyMetadataSerializer, MetadataSerializer

      public interface IMetadataSerializer

  Interface for SSTable metadata serializer

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.util.Map<MetadataType,MetadataComponent>` | `deserialize(Descriptor descriptor, java.util.EnumSet<MetadataType> types)` Deserialize specified metadata components from given descriptor.
    `MetadataComponent` | `deserialize(Descriptor descriptor, MetadataType type)` Deserialized only metadata component specified from given descriptor.
    `void` | `mutateLevel(Descriptor descriptor, int newLevel)` Mutate SSTable level
    `void` | `mutateRepairedAt(Descriptor descriptor, long newRepairedAt)` Mutate repairedAt time
    `void` | `serialize(java.util.Map<MetadataType,MetadataComponent> components, DataOutputPlus out, Version version)` Serialize given metadata components

- - ### Method Detail

    - #### serialize

          void serialize(java.util.Map<MetadataType,MetadataComponent> components,
                         DataOutputPlus out,
                         Version version)
                  throws java.io.IOException

      Serialize given metadata components
      Parameters:
        `components` - Metadata components to serialize
        `out` -
        `version` -
      Throws:
        `java.io.IOException`

    - #### deserialize

          java.util.Map<MetadataType,MetadataComponent> deserialize(Descriptor descriptor,
                                                                    java.util.EnumSet<MetadataType> types)
                                                             throws java.io.IOException

      Deserialize specified metadata components from given descriptor.
      Parameters:
        `descriptor` - SSTable descriptor
      Returns:
        Deserialized metadata components, in deserialized order.
      Throws:
        `java.io.IOException`

    - #### deserialize

          MetadataComponent deserialize(Descriptor descriptor,
                                        MetadataType type)
                                 throws java.io.IOException

      Deserialized only metadata component specified from given descriptor.
      Parameters:
        `descriptor` - SSTable descriptor
        `type` - Metadata component type to deserialize
      Returns:
        Deserialized metadata component. Can be null if specified type does not exist.
      Throws:
        `java.io.IOException`

    - #### mutateLevel

          void mutateLevel(Descriptor descriptor,
                           int newLevel)
                    throws java.io.IOException

      Mutate SSTable level
      Parameters:
        `descriptor` - SSTable descriptor
        `newLevel` - new SSTable level
      Throws:
        `java.io.IOException`

    - #### mutateRepairedAt

          void mutateRepairedAt(Descriptor descriptor,
                                long newRepairedAt)
                         throws java.io.IOException

      Mutate repairedAt time
      Throws:
        `java.io.IOException`

Copyright © 2018 The Apache Software Foundation