## org.apache.cassandra.dht
Class OrderPreservingPartitioner

    java.lang.Object
      org.apache.cassandra.dht.AbstractPartitioner<StringToken>
          org.apache.cassandra.dht.OrderPreservingPartitioner

All Implemented Interfaces:
  IPartitioner<StringToken>

    public class OrderPreservingPartitioner

extends AbstractPartitioner<StringToken>

Field Summary
`static java.math.BigInteger` `CHAR_MASK`
`static StringToken` `MINIMUM`

Constructor Summary
`OrderPreservingPartitioner()`

Method Summary
`DecoratedKey<StringToken>` `convertFromDiskFormat(java.nio.ByteBuffer key)`
`DecoratedKey<StringToken>` `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.
`StringToken` `getMinimumToken()`
`StringToken` `getRandomToken()`
`StringToken` `getToken(java.nio.ByteBuffer key)`
`Token.TokenFactory<java.lang.String>` `getTokenFactory()`
`StringToken` `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 StringToken MINIMUM

### CHAR_MASK

    public static final java.math.BigInteger CHAR_MASK

Constructor Detail

### OrderPreservingPartitioner

    public OrderPreservingPartitioner()

Method Detail

### decorateKey

    public DecoratedKey<StringToken> 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

### convertFromDiskFormat

    public DecoratedKey<StringToken> convertFromDiskFormat(java.nio.ByteBuffer key)

  Parameters:
    `key` - On disk representation
  Returns:
    DecoratedKey object

### midpoint

    public StringToken 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 StringToken getMinimumToken()

  Returns:
    The minimum possible Token in the range that is being partitioned.

### getRandomToken

    public StringToken getRandomToken()

  Returns:
    a randomly generated token

### getTokenFactory

    public Token.TokenFactory<java.lang.String> getTokenFactory()

### preservesOrder

    public boolean preservesOrder()

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

### getToken

    public StringToken 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'.

Copyright © 2013 The Apache Software Foundation