org.apache.cassandra.dht

## Class AbstractBounds.AbstractBoundsSerializer<T extends RingPosition<T>>

- java.lang.Object
- - org.apache.cassandra.dht.AbstractBounds.AbstractBoundsSerializer<T>

All Implemented Interfaces:
  IPartitionerDependentSerializer<AbstractBounds<T>>

Enclosing class:
  AbstractBounds<T extends RingPosition<T>>

    public static class AbstractBounds.AbstractBoundsSerializer<T extends RingPosition<T>>
    extends java.lang.Object
    implements IPartitionerDependentSerializer<AbstractBounds<T>>

### Constructor Summary

Constructors
Constructor and Description
`AbstractBoundsSerializer(IPartitionerDependentSerializer<T> serializer)`

### Method Summary

All Methods Instance Methods Concrete Methods
`AbstractBounds<T>` `deserialize(java.io.DataInput in, IPartitioner p, int version)` Deserialize into the specified DataInputStream instance.
`void` `serialize(AbstractBounds<T> range, DataOutputPlus out, int version)` Serialize the specified type into the specified DataOutputStream instance.
`long` `serializedSize(AbstractBounds<T> ab, int version)` Calculate serialized size of object without actually serializing.

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

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

### Constructor Detail

#### AbstractBoundsSerializer

    public AbstractBoundsSerializer(IPartitionerDependentSerializer<T> serializer)

### Method Detail

#### serialize

    public void serialize(AbstractBounds<T> range,
                          DataOutputPlus out,
                          int version)
                   throws java.io.IOException

Description copied from interface: `IPartitionerDependentSerializer`
Serialize the specified type into the specified DataOutputStream instance.

Specified by:
  `serialize` in interface `IPartitionerDependentSerializer<AbstractBounds<T extends RingPosition<T>>>`
Parameters:
  `range` - type that needs to be serialized
  `out` - DataOutput into which serialization needs to happen.
  `version` - protocol version
Throws:
  `java.io.IOException` - if serialization fails

#### deserialize

    public AbstractBounds<T> deserialize(java.io.DataInput in,
                                         IPartitioner p,
                                         int version)
                                  throws java.io.IOException

Description copied from interface: `IPartitionerDependentSerializer`
Deserialize into the specified DataInputStream instance.

Specified by:
  `deserialize` in interface `IPartitionerDependentSerializer<AbstractBounds<T extends RingPosition<T>>>`
Parameters:
  `in` - DataInput from which deserialization needs to happen.
  `p` - Partitioner that will be used to construct tokens. Needs to match the partitioner that was used to serialize the token.
  `version` - protocol version
Returns:
  the type that was deserialized
Throws:
  `java.io.IOException` - if deserialization fails

#### serializedSize

    public long serializedSize(AbstractBounds<T> ab,
                               int version)

Description copied from interface: `IPartitionerDependentSerializer`
Calculate serialized size of object without actually serializing.

Specified by:
  `serializedSize` in interface `IPartitionerDependentSerializer<AbstractBounds<T extends RingPosition<T>>>`
Parameters:
  `ab` - object to calculate serialized size
  `version` - protocol version
Returns:
  serialized size of object t