Class LocalPartitioner

  • All Implemented Interfaces:
    IPartitioner

    public class LocalPartitioner
    extends java.lang.Object
    implements IPartitioner
    • Constructor Detail

      • LocalPartitioner

        public LocalPartitioner​(AbstractType<?> comparator)
    • 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.
        Specified by:
        decorateKey in interface IPartitioner
        Parameters:
        key - the raw, client-facing key
        Returns:
        decorated version of key
      • midpoint

        public Token midpoint​(Token left,
                              Token right)
        Description copied from interface: IPartitioner
        Calculate a Token representing the approximate "middle" of the given range.
        Specified by:
        midpoint in interface IPartitioner
        Returns:
        The approximate midpoint between left and right.
      • split

        public Token split​(Token left,
                           Token right,
                           double ratioToLeft)
        Description copied from interface: IPartitioner
        Calculate a Token which take approximate 0 <= ratioToLeft <= 1 ownership of the given range.
        Specified by:
        split in interface IPartitioner
      • getMinimumToken

        public LocalPartitioner.LocalToken getMinimumToken()
        Specified by:
        getMinimumToken in interface IPartitioner
        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.)
      • getToken

        public LocalPartitioner.LocalToken getToken​(java.nio.ByteBuffer key)
        Specified by:
        getToken in interface IPartitioner
        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.)
      • preservesOrder

        public boolean preservesOrder()
        Specified by:
        preservesOrder in interface IPartitioner
        Returns:
        True if the implementing class preserves key order in the Tokens it generates.
      • 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.
        Specified by:
        describeOwnership in interface IPartitioner
        Parameters:
        sortedTokens - a sorted List of Tokens
        Returns:
        the mapping from 'token' to 'percentage of the ring owned by that token'.