Class PlotWalk

  • All Implemented Interfaces:
    java.lang.AutoCloseable, java.lang.Iterable<RevCommit>

    public class PlotWalk
    extends RevWalk
    Specialized RevWalk for visualization of a commit graph.
    • Field Detail

      • additionalRefMap

        private java.util.Map<AnyObjectId,​java.util.Set<Ref>> additionalRefMap
      • reverseRefMap

        private java.util.Map<AnyObjectId,​java.util.Set<Ref>> reverseRefMap
    • Constructor Detail

      • PlotWalk

        public PlotWalk​(Repository repo)
        Create a new revision walker for a given repository.
        Parameters:
        repo - the repository the walker will obtain data from.
    • Method Detail

      • dispose

        public void dispose()
        Dispose all internal state and invalidate all RevObject instances.

        All RevObject (and thus RevCommit, etc.) instances previously acquired from this RevWalk are invalidated by a dispose call. Applications must not retain or use RevObject instances obtained prior to the dispose call. All RevFlag instances are also invalidated, and must not be reused.

        Overrides:
        dispose in class RevWalk
      • addAdditionalRefs

        public void addAdditionalRefs​(java.lang.Iterable<Ref> refs)
                               throws java.io.IOException
        Add additional refs to the walk
        Parameters:
        refs - additional refs
        Throws:
        java.io.IOException
      • sort

        public void sort​(RevSort s,
                         boolean use)
        Add or remove a sorting strategy for the returned commits.

        Multiple strategies can be applied at once, in which case some strategies may take precedence over others. As an example, RevSort.TOPO must take precedence over RevSort.COMMIT_TIME_DESC, otherwise it cannot enforce its ordering.

        Overrides:
        sort in class RevWalk
        Parameters:
        s - a sorting strategy to enable or disable.
        use - true if this strategy should be used, false if it should be removed.
      • createCommit

        protected RevCommit createCommit​(AnyObjectId id)
        Construct a new unparsed commit for the given object.
        Overrides:
        createCommit in class RevWalk
        Parameters:
        id - the object this walker requires a commit reference for.
        Returns:
        a new unparsed reference for the object.
      • next

        public RevCommit next()
                       throws MissingObjectException,
                              IncorrectObjectTypeException,
                              java.io.IOException
        Pop the next most recent commit.
        Overrides:
        next in class RevWalk
        Returns:
        next most recent commit; null if traversal is over.
        Throws:
        MissingObjectException - one or more of the next commit's parents are not available from the object database, but were thought to be candidates for traversal. This usually indicates a broken link.
        IncorrectObjectTypeException - one or more of the next commit's parents are not actually commit objects.
        java.io.IOException - a pack file or loose object could not be read.
      • getRefs

        private Ref[] getRefs​(AnyObjectId commitId)
                       throws java.io.IOException
        Throws:
        java.io.IOException