Interface MultiPackIndex


public interface MultiPackIndex
An index over multiple packs
  • Method Details

    • getPackNames

      String[] getPackNames()
      Obtain the array of packfiles in the MultiPackIndex.

      The pack ids correspond to positions in this list.

      Returns:
      array of packnames refered in this multipak index
    • hasObject

      boolean hasObject(AnyObjectId oid)
      Does this index contains the object
      Parameters:
      oid - object id
      Returns:
      true of the index knows this the object
    • find

      Obtain the location of the object.

      The returned object can be reused by the implementations. Callers must create a #copy() if they want to keep a reference.

      Parameters:
      objectId - objectId to read.
      Returns:
      mutable instance with the location or null if not found.
    • findPosition

      int findPosition(AnyObjectId objectId)
      Position of the object in this midx, when all covered objects are ordered by SHA1.

      As the midx removes duplicates, this position is NOT equivalent to "position in pack + total count of objects in previous packs in the stack".

      Parameters:
      objectId - an object id
      Returns:
      position of the object in this multipack index
    • getObjectCount

      int getObjectCount()
      Number of objects in this midx

      This number doesn't match with the sum of objects in each covered pack because midx removes duplicates.

      Returns:
      number of objects in this midx
    • resolve

      void resolve(Set<ObjectId> matches, AbbreviatedObjectId id, int matchLimit)
      Find objects matching the prefix abbreviation.
      Parameters:
      matches - set to add any located ObjectIds to. This is an output parameter.
      id - prefix to search for.
      matchLimit - maximum number of results to return. At most this many ObjectIds should be added to matches before returning.
    • getMemorySize

      long getMemorySize()
      Memory size of this multipack index
      Returns:
      size of this multipack index in memory, in bytes