Class RocksDBCachingPriorityQueueSet<E extends HeapPriorityQueueElement>

    • Method Detail

      • peek

        @Nullable
        public E peek()
        Description copied from interface: InternalPriorityQueue
        Retrieves, but does not remove, the element (w.r.t. order) of this set, or returns null if this set is empty.
        Specified by:
        peek in interface InternalPriorityQueue<E extends HeapPriorityQueueElement>
        Returns:
        the first element (w.r.t. order) of this ordered set, or null if this set is empty.
      • poll

        @Nullable
        public E poll()
        Description copied from interface: InternalPriorityQueue
        Retrieves and removes the first element (w.r.t. the order) of this set, or returns null if this set is empty.

        NOTE: Correct key (i.e. the key of the polled element) must be set on KeyContext before calling this method.

        Specified by:
        poll in interface InternalPriorityQueue<E extends HeapPriorityQueueElement>
        Returns:
        the first element of this ordered set, or null if this set is empty.
      • add

        public boolean add​(@Nonnull
                           E toAdd)
        Description copied from interface: InternalPriorityQueue
        Adds the given element to the set, if it is not already contained.
        Specified by:
        add in interface InternalPriorityQueue<E extends HeapPriorityQueueElement>
        Parameters:
        toAdd - the element to add to the set.
        Returns:
        true if the operation changed the head element or if it is unclear if the head element changed. Only returns false if the head element was not changed by this operation.
      • remove

        public boolean remove​(@Nonnull
                              E toRemove)
        Description copied from interface: InternalPriorityQueue
        Removes the given element from the set, if is contained in the set.

        NOTE: Correct key (i.e. the key of the polled element) must be set on KeyContext before calling this method.

        Specified by:
        remove in interface InternalPriorityQueue<E extends HeapPriorityQueueElement>
        Parameters:
        toRemove - the element to remove.
        Returns:
        true if the operation changed the head element or if it is unclear if the head element changed. Only returns false if the head element was not changed by this operation.
      • size

        public int size()
        This implementation comes at a relatively high cost per invocation. It should not be called repeatedly when it is clear that the value did not change. Currently this is only truly used to realize certain higher-level tests.
        Specified by:
        size in interface InternalPriorityQueue<E extends HeapPriorityQueueElement>
        Returns:
        the number of elements in this set.