org.apache.cassandra.dht

## Class AbstractByteOrderedPartitioner

- java.lang.Object
- - org.apache.cassandra.dht.AbstractPartitioner<BytesToken>
  - - org.apache.cassandra.dht.AbstractByteOrderedPartitioner

All Implemented Interfaces:
  IPartitioner<BytesToken>

Direct Known Subclasses:
  ByteOrderedPartitioner

    public abstract class AbstractByteOrderedPartitioner
    extends AbstractPartitioner<BytesToken>

### Field Summary

Fields
`static java.math.BigInteger` `BYTE_MASK`
`static BytesToken` `MINIMUM`

### Constructor Summary

Constructors
Constructor and Description
`AbstractByteOrderedPartitioner()`

### Method Summary

Methods
`DecoratedKey` `decorateKey(java.nio.ByteBuffer key)` Transform key to object representation of the on-disk format.
`java.util.Map<Token,java.lang.Float>` `describeOwnership(java.util.List<Token> sortedTokens)` Calculate the deltas between tokens in the ring in order to compare relative sizes.
`BytesToken` `getMinimumToken()`
`BytesToken` `getRandomToken()`
`abstract BytesToken` `getToken(java.nio.ByteBuffer key)`
`Token.TokenFactory<byte[]>` `getTokenFactory()`
`AbstractType<?>` `getTokenValidator()`
`BytesToken` `midpoint(Token ltoken, Token rtoken)` Calculate a Token representing the approximate "middle" of the given range.
`boolean` `preservesOrder()`

### Methods inherited from class org.apache.cassandra.dht.AbstractPartitioner

`minValue`

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

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

### Field Detail

#### MINIMUM

    public static final BytesToken MINIMUM

#### BYTE_MASK

    public static final java.math.BigInteger BYTE_MASK

### Constructor Detail

#### AbstractByteOrderedPartitioner

    public AbstractByteOrderedPartitioner()

### Method Detail

#### decorateKey

    public DecoratedKey decorateKey(java.nio.ByteBuffer key)

Description copied from interface: `IPartitioner`
Transform key to object representation of the on-disk format.

Parameters:
  `key` - the raw, client-facing key
Returns:
  decorated version of key

#### midpoint

    public BytesToken midpoint(Token ltoken,
                      Token rtoken)

Description copied from interface: `IPartitioner`
Calculate a Token representing the approximate "middle" of the given range.

Returns:
  The approximate midpoint between left and right.

#### getMinimumToken

    public BytesToken getMinimumToken()

Returns:
  A Token smaller than all others in the range that is being partitioned. Not legal to assign to a node or key. (But legal to use in range scans.)

#### getRandomToken

    public BytesToken getRandomToken()

Returns:
  a randomly generated token

#### getTokenFactory

    public Token.TokenFactory<byte[]> getTokenFactory()

#### preservesOrder

    public boolean preservesOrder()

Returns:
  True if the implementing class preserves key order in the Tokens it generates.

#### getToken

    public abstract BytesToken getToken(java.nio.ByteBuffer key)

Returns:
  a Token that can be used to route a given key (This is NOT a method to create a Token from its string representation; for that, use TokenFactory.fromString.)

#### describeOwnership

    public java.util.Map<Token,java.lang.Float> describeOwnership(java.util.List<Token> sortedTokens)

Description copied from interface: `IPartitioner`
Calculate the deltas between tokens in the ring in order to compare relative sizes.

Parameters:
  `sortedTokens` - a sorted List of Tokens
Returns:
  the mapping from 'token' to 'percentage of the ring owned by that token'.

#### getTokenValidator

    public AbstractType<?> getTokenValidator()