## Uses of Interface
org.apache.cassandra.dht.RingPosition

Packages that use RingPosition
org.apache.cassandra.db
org.apache.cassandra.dht
org.apache.cassandra.locator
org.apache.cassandra.service

### Uses of RingPosition in org.apache.cassandra.db

Subinterfaces of RingPosition in org.apache.cassandra.db
`interface` `RowPosition`

Classes in org.apache.cassandra.db that implement RingPosition
`class` `BufferDecoratedKey`
`class` `CachedHashDecoratedKey`
`class` `DecoratedKey` Represents a decorated key, handy for certain operations where just working with strings gets slow.
`class` `NativeDecoratedKey`
`class` `PreHashedDecoratedKey`

### Uses of RingPosition in org.apache.cassandra.dht

Classes in org.apache.cassandra.dht with type parameters of type RingPosition
`class` `AbstractBounds<T extends RingPosition<T>>`
`static class` `AbstractBounds.AbstractBoundsSerializer<T extends RingPosition<T>>`
`static class` `AbstractBounds.Boundary<T extends RingPosition<T>>`
`class` `Bounds<T extends RingPosition<T>>` AbstractBounds containing both its endpoints: [left, right].
`class` `ExcludingBounds<T extends RingPosition<T>>` AbstractBounds containing neither of its endpoints: (left, right).
`class` `IncludingExcludingBounds<T extends RingPosition<T>>` AbstractBounds containing only its left endpoint: [left, right).
`class` `Range<T extends RingPosition<T>>` A representation of the range that a node is responsible for on the DHT ring.
`interface` `RingPosition<C extends RingPosition<C>>` Interface representing a position on the ring.

Classes in org.apache.cassandra.dht that implement RingPosition
`static class` `ByteOrderedPartitioner.BytesToken`
`class` `LocalPartitioner.LocalToken`
`static class` `Murmur3Partitioner.LongToken`
`static class` `OrderPreservingPartitioner.StringToken`
`static class` `RandomPartitioner.BigIntegerToken`
`class` `Token`
`static class` `Token.KeyBound`

Fields in org.apache.cassandra.dht declared as RingPosition
`T` AbstractBounds.Boundary.`boundary`
`T` AbstractBounds.`left`
`T` AbstractBounds.`right`

Methods in org.apache.cassandra.dht with type parameters of type RingPosition
`static <T extends RingPosition<T>> AbstractBounds<T>` AbstractBounds.`bounds(AbstractBounds.Boundary<T> min, AbstractBounds.Boundary<T> max)`
`static <T extends RingPosition<T>> AbstractBounds<T>` AbstractBounds.`bounds(T min, boolean inclusiveMin, T max, boolean inclusiveMax)`
`static <T extends RingPosition<T>> boolean` Range.`contains(T left, T right, T point)`
`static <T extends RingPosition<T>> java.util.Set<Bounds<T>>` Bounds.`getNonOverlappingBounds(java.lang.Iterable<Bounds<T>> bounds)` Retrieves non-overlapping bounds for the list of input bounds Assume we have the following bounds (brackets representing left/right bound): [ ] [ ] [ ] [ ] [ ] [ ] This method will return the following bounds: [ ] [ ]
`static <T extends RingPosition<T>> boolean` AbstractBounds.`isEmpty(AbstractBounds.Boundary<T> left, AbstractBounds.Boundary<T> right)`
`static <T extends RingPosition<T>> boolean` Bounds.`isInBounds(T token, java.lang.Iterable<Bounds<T>> bounds)`
`static <T extends RingPosition<T>> boolean` Range.`isInRanges(T token, java.lang.Iterable<Range<T>> ranges)`
`static <T extends RingPosition<T>> boolean` Range.`isWrapAround(T left, T right)` Tells if the given range is a wrap around.
`static <T extends RingPosition<T>> AbstractBounds.Boundary<T>` AbstractBounds.`maxLeft(AbstractBounds.Boundary<T> left1, AbstractBounds.Boundary<T> left2)`
`static <T extends RingPosition<T>> AbstractBounds.Boundary<T>` AbstractBounds.`maxLeft(AbstractBounds.Boundary<T> left1, T left2, boolean isInclusiveLeft2)`
`static <T extends RingPosition<T>> AbstractBounds.Boundary<T>` AbstractBounds.`minRight(AbstractBounds.Boundary<T> right1, AbstractBounds.Boundary<T> right2)`
`static <T extends RingPosition<T>> AbstractBounds.Boundary<T>` AbstractBounds.`minRight(AbstractBounds.Boundary<T> right1, T right2, boolean isInclusiveRight2)`
`static <T extends RingPosition<T>> boolean` AbstractBounds.`noneStrictlyWrapsAround(java.util.Collection<AbstractBounds<T>> bounds)`
`static <T extends RingPosition<T>> java.util.List<Range<T>>` Range.`normalize(java.util.Collection<Range<T>> ranges)`
`static <T extends RingPosition<T>> java.util.Set<Range<T>>` Range.`rangeSet(Range<T>... ranges)`
`static <T extends RingPosition<T>> java.util.Set<Range<T>>` Range.`rangeSet(Range<T> range)`
`static <T extends RingPosition<T>> boolean` AbstractBounds.`strictlyWrapsAround(T left, T right)` Whether `left` and `right` forms a wrapping interval, that is if unwrapping wouldn't be a no-op.
`<R extends RingPosition<R>> R` Token.`upperBound(java.lang.Class<R> klass)`

### Uses of RingPosition in org.apache.cassandra.locator

Methods in org.apache.cassandra.locator with parameters of type RingPosition
`java.util.ArrayList<java.net.InetAddress>` AbstractReplicationStrategy.`getNaturalEndpoints(RingPosition searchPosition)` get the (possibly cached) endpoints that should store the given Token.
`java.util.ArrayList<java.net.InetAddress>` LocalStrategy.`getNaturalEndpoints(RingPosition searchPosition)` We need to override this even if we override calculateNaturalEndpoints, because the default implementation depends on token calculations but LocalStrategy may be used before tokens are set up.

### Uses of RingPosition in org.apache.cassandra.service

Methods in org.apache.cassandra.service with parameters of type RingPosition
`java.util.List<java.net.InetAddress>` StorageService.`getLiveNaturalEndpoints(Keyspace keyspace, RingPosition pos)`
`java.util.List<java.net.InetAddress>` StorageService.`getNaturalEndpoints(java.lang.String keyspaceName, RingPosition pos)` This method returns the N endpoints that are responsible for storing the specified key i.e for replication.