Class PartitionSplittingBackingMap.PartitionedIterator

  • All Implemented Interfaces:
    Enumeration, Iterator
    Enclosing class:
    PartitionSplittingBackingMap

    public class PartitionSplittingBackingMap.PartitionedIterator
    extends com.oracle.coherence.common.collections.AbstractStableIterator
    An Iterator designed to ensure that a stable copy of each partition's keys is available for the duration of the iteration over its keys.

    This is primarily intended for use with the BinaryMap, which does not provide thread-safe iterators if the BinaryMap continues to be modified while the iteration is occurring.

    • Constructor Detail

      • PartitionedIterator

        protected PartitionedIterator​(Map[] amap)
        Construct PartitionedIterator based on the specified array of maps, where each map contains data for one and only one partition.
        Parameters:
        amap - an array of underlying maps
    • Method Detail

      • advance

        protected void advance()
        Advance to the next object.

        This method must be implemented by the concrete sub-class by calling AbstractStableIterator.setNext(T) if there is a next object.

        Specified by:
        advance in class com.oracle.coherence.common.collections.AbstractStableIterator
      • remove

        protected void remove​(Object oPrev)
        Remove the specified item.

        This is an optional operation. If the Iterator supports element removal, then it should implement this method, which is delegated to by the AbstractStableIterator.remove() method.

        Overrides:
        remove in class com.oracle.coherence.common.collections.AbstractStableIterator
        Parameters:
        oPrev - the previously iterated object that should be removed