Enum Class DfsObjDatabase.PackSource

java.lang.Object
java.lang.Enum<DfsObjDatabase.PackSource>
org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase.PackSource
All Implemented Interfaces:
Serializable, Comparable<DfsObjDatabase.PackSource>, Constable
Enclosing class:
DfsObjDatabase

public static enum DfsObjDatabase.PackSource extends Enum<DfsObjDatabase.PackSource>
Sources for a pack file.

Note: When sorting packs by source, do not use the default comparator based on Enum.compareTo(E). Prefer DEFAULT_COMPARATOR or your own DfsObjDatabase.PackSource.ComparatorBuilder.

  • Enum Constant Details

    • INSERT

      public static final DfsObjDatabase.PackSource INSERT
      The pack is created by ObjectInserter due to local activity.
    • RECEIVE

      public static final DfsObjDatabase.PackSource RECEIVE
      The pack is created by PackParser due to a network event.

      A received pack can be from either a push into the repository, or a fetch into the repository, the direction doesn't matter. A received pack was built by the remote Git implementation and may not match the storage layout preferred by this version. Received packs are likely to be either compacted or garbage collected in the future.

    • COMPACT

      public static final DfsObjDatabase.PackSource COMPACT
      The pack was created by compacting multiple packs together.

      Packs created by compacting multiple packs together aren't nearly as efficient as a fully garbage collected repository, but may save disk space by reducing redundant copies of base objects.

      See Also:
    • GC

      public static final DfsObjDatabase.PackSource GC
      Pack was created by Git garbage collection by this implementation.

      This source is only used by the DfsGarbageCollector when it builds a pack file by traversing the object graph and copying all reachable objects into a new pack stream.

      See Also:
    • GC_REST

      public static final DfsObjDatabase.PackSource GC_REST
      Created from non-heads by DfsGarbageCollector.
    • UNREACHABLE_GARBAGE

      public static final DfsObjDatabase.PackSource UNREACHABLE_GARBAGE
      Pack was created by Git garbage collection.

      This pack contains only unreachable garbage that was found during the last GC pass. It is retained in a new pack until it is safe to prune these objects from the repository.

  • Field Details

    • DEFAULT_COMPARATOR

      public static final Comparator<DfsObjDatabase.PackSource> DEFAULT_COMPARATOR
      Default comparator for sources.

      Sorts generally newer, smaller types such as INSERT and RECEIVE earlier; older, larger types such as GC later; and UNREACHABLE_GARBAGE at the end.

  • Constructor Details

    • PackSource

      private PackSource()
  • Method Details

    • values

      public static DfsObjDatabase.PackSource[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static DfsObjDatabase.PackSource valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null