Interface SliceMetaData

All Superinterfaces:
Cloneable

public interface SliceMetaData extends Cloneable
Metadata for slices of data. Holds information about
  • the min/max number of known items
  • loaded data ranges
  • failed data ranges
Author:
raven
  • Method Details

    • getLoadedRanges

      com.google.common.collect.RangeSet<Long> getLoadedRanges()
    • getFailedRanges

      com.google.common.collect.RangeMap<Long, List<Throwable>> getFailedRanges()
    • getMinimumKnownSize

      long getMinimumKnownSize()
    • getMaximumKnownSize

      long getMaximumKnownSize()
    • setMinimumKnownSize

      SliceMetaData setMinimumKnownSize(long size)
    • setMaximumKnownSize

      SliceMetaData setMaximumKnownSize(long size)
    • getReadWriteLock

      ReadWriteLock getReadWriteLock()
      A lock to control concurrent access to this object
    • getHasDataCondition

      Condition getHasDataCondition()
    • getPageSize

      int getPageSize()
    • updateMaximumKnownSize

      default SliceMetaData updateMaximumKnownSize(long size)
      Updates the maximum known size iff the argument is less than the current known maximum
    • updateMinimumKnownSize

      default SliceMetaData updateMinimumKnownSize(long size)
      Updates the minimum known size iff the argument is graeter than the current known minimum
    • setKnownSize

      default SliceMetaData setKnownSize(long size)
    • getKnownSize

      default long getKnownSize()
      -1 If not exactly known
    • getGaps

      default com.google.common.collect.RangeSet<Long> getGaps(com.google.common.collect.Range<Long> requestRange)
    • isExactSizeKnown

      default boolean isExactSizeKnown()
    • isComplete

      default boolean isComplete()
      Whether all data has been loaded. This is the case if the exact size is known and there is only a single range covering [0, maxSize)
      Returns: