Class PackReverseIndex

java.lang.Object
org.eclipse.jgit.internal.storage.file.PackReverseIndex

public class PackReverseIndex extends Object

Reverse index for forward pack index. Provides operations based on offset instead of object id. Such offset-based reverse lookups are performed in O(log n) time.

See Also:
  • Constructor Details

    • PackReverseIndex

      public PackReverseIndex(PackIndex packIndex)
      Create reverse index from straight/forward pack index, by indexing all its entries.
      Parameters:
      packIndex - forward index - entries to (reverse) index.
  • Method Details

    • findObject

      public ObjectId findObject(long offset)
      Search for object id with the specified start offset in this pack (reverse) index.
      Parameters:
      offset - start offset of object to find.
      Returns:
      object id for this offset, or null if no object was found.
    • findNextOffset

      public long findNextOffset(long offset, long maxOffset) throws CorruptObjectException
      Search for the next offset to the specified offset in this pack (reverse) index.
      Parameters:
      offset - start offset of previous object (must be valid-existing offset).
      maxOffset - maximum offset in a pack (returned when there is no next offset).
      Returns:
      offset of the next object in a pack or maxOffset if provided offset was the last one.
      Throws:
      CorruptObjectException - when there is no object with the provided offset.