org.apache.cassandra.db

## Class RowIndexEntry.Serializer

- java.lang.Object
- - org.apache.cassandra.db.RowIndexEntry.Serializer

All Implemented Interfaces:
  RowIndexEntry.IndexSerializer<IndexInfo>

Enclosing class:
  RowIndexEntry<T>

    public static final class RowIndexEntry.Serializer
    extends java.lang.Object
    implements RowIndexEntry.IndexSerializer<IndexInfo>

### Constructor Summary

Constructors
Constructor and Description
`Serializer(CFMetaData metadata, Version version, SerializationHeader header)`

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`RowIndexEntry<IndexInfo>` `deserialize(DataInputPlus in, long indexFilePosition)`
`RowIndexEntry<IndexInfo>` `deserializeForCache(DataInputPlus in)`
`long` `deserializePositionAndSkip(DataInputPlus in)`
`IndexInfo.Serializer` `indexInfoSerializer()`
`static long` `readPosition(DataInputPlus in, Version version)` Reads only the data 'position' of the index entry and returns it.
`void` `serialize(RowIndexEntry<IndexInfo> rie, DataOutputPlus out, java.nio.ByteBuffer indexInfo)`
`void` `serializeForCache(RowIndexEntry<IndexInfo> rie, DataOutputPlus out)`
`static void` `serializeOffsets(DataOutputBuffer out, int[] indexOffsets, int columnIndexCount)`
`static void` `skip(DataInputPlus in, Version version)`
`static void` `skipForCache(DataInputPlus in, Version version)`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### Serializer

    public Serializer(CFMetaData metadata,
                      Version version,
                      SerializationHeader header)

### Method Detail

#### indexInfoSerializer

    public IndexInfo.Serializer indexInfoSerializer()

Specified by:
  `indexInfoSerializer` in interface `RowIndexEntry.IndexSerializer<IndexInfo>`

#### serialize

    public void serialize(RowIndexEntry<IndexInfo> rie,
                          DataOutputPlus out,
                          java.nio.ByteBuffer indexInfo)
                   throws java.io.IOException

Specified by:
  `serialize` in interface `RowIndexEntry.IndexSerializer<IndexInfo>`
Throws:
  `java.io.IOException`

#### serializeForCache

    public void serializeForCache(RowIndexEntry<IndexInfo> rie,
                                  DataOutputPlus out)
                           throws java.io.IOException

Specified by:
  `serializeForCache` in interface `RowIndexEntry.IndexSerializer<IndexInfo>`
Throws:
  `java.io.IOException`

#### deserializeForCache

    public RowIndexEntry<IndexInfo> deserializeForCache(DataInputPlus in)
                                                 throws java.io.IOException

Specified by:
  `deserializeForCache` in interface `RowIndexEntry.IndexSerializer<IndexInfo>`
Throws:
  `java.io.IOException`

#### skipForCache

    public static void skipForCache(DataInputPlus in,
                                    Version version)
                             throws java.io.IOException

Throws:
  `java.io.IOException`

#### deserialize

    public RowIndexEntry<IndexInfo> deserialize(DataInputPlus in,
                                                long indexFilePosition)
                                         throws java.io.IOException

Specified by:
  `deserialize` in interface `RowIndexEntry.IndexSerializer<IndexInfo>`
Throws:
  `java.io.IOException`

#### deserializePositionAndSkip

    public long deserializePositionAndSkip(DataInputPlus in)
                                    throws java.io.IOException

Specified by:
  `deserializePositionAndSkip` in interface `RowIndexEntry.IndexSerializer<IndexInfo>`
Throws:
  `java.io.IOException`

#### readPosition

    public static long readPosition(DataInputPlus in,
                                    Version version)
                             throws java.io.IOException

Reads only the data 'position' of the index entry and returns it. Note that this left 'in' in the middle of reading an entry, so this is only useful if you know what you are doing and in most case 'deserialize' should be used instead.

Throws:
  `java.io.IOException`

#### skip

    public static void skip(DataInputPlus in,
                            Version version)
                     throws java.io.IOException

Throws:
  `java.io.IOException`

#### serializeOffsets

    public static void serializeOffsets(DataOutputBuffer out,
                                        int[] indexOffsets,
                                        int columnIndexCount)
                                 throws java.io.IOException

Throws:
  `java.io.IOException`