org.eclipse.jgit.revplot
Class PlotCommitList<L extends PlotLane>

java.lang.Object
  extended by java.util.AbstractCollection<E>
      extended by java.util.AbstractList<E>
          extended by org.eclipse.jgit.revwalk.RevObjectList<E>
              extended by org.eclipse.jgit.revwalk.RevCommitList<PlotCommit<L>>
                  extended by org.eclipse.jgit.revplot.PlotCommitList<L>
Type Parameters:
L - type of lane used by the application.
All Implemented Interfaces:
Iterable<PlotCommit<L>>, Collection<PlotCommit<L>>, List<PlotCommit<L>>

public class PlotCommitList<L extends PlotLane>
extends RevCommitList<PlotCommit<L>>

An ordered list of PlotCommit subclasses.

Commits are allocated into lanes as they enter the list, based upon their connections between descendant (child) commits and ancestor (parent) commits.

The source of the list must be a PlotWalk and RevCommitList.fillTo(int) must be used to populate the list.


Nested Class Summary
 
Nested classes/interfaces inherited from class org.eclipse.jgit.revwalk.RevObjectList
RevObjectList.Block
 
Field Summary
 
Fields inherited from class org.eclipse.jgit.revwalk.RevObjectList
contents, size
 
Fields inherited from class java.util.AbstractList
modCount
 
Constructor Summary
PlotCommitList()
           
 
Method Summary
 void clear()
           
protected  L createLane()
           
protected  void enter(int index, PlotCommit<L> currCommit)
          Optional callback invoked when commits enter the list by fillTo.
 void findPassingThrough(PlotCommit<L> currCommit, Collection<L> result)
          Find the set of lanes passing through a commit's row.
protected  void recycleLane(L lane)
          Return colors and other reusable information to the plotter when a lane is no longer needed.
 void source(RevWalk w)
          Set the revision walker this list populates itself from.
 
Methods inherited from class org.eclipse.jgit.revwalk.RevCommitList
applyFlag, applyFlag, clearFlag, clearFlag, fillTo, fillTo, indexOf, isPending, lastIndexOf
 
Methods inherited from class org.eclipse.jgit.revwalk.RevObjectList
add, get, set, size
 
Methods inherited from class java.util.AbstractList
add, addAll, equals, hashCode, indexOf, iterator, lastIndexOf, listIterator, listIterator, remove, removeRange, subList
 
Methods inherited from class java.util.AbstractCollection
addAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.List
addAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray
 

Constructor Detail

PlotCommitList

public PlotCommitList()
Method Detail

clear

public void clear()
Specified by:
clear in interface Collection<PlotCommit<L extends PlotLane>>
Specified by:
clear in interface List<PlotCommit<L extends PlotLane>>
Overrides:
clear in class RevCommitList<PlotCommit<L extends PlotLane>>

source

public void source(RevWalk w)
Description copied from class: RevCommitList
Set the revision walker this list populates itself from.

Overrides:
source in class RevCommitList<PlotCommit<L extends PlotLane>>
Parameters:
w - the walker to populate from.
See Also:
RevCommitList.fillTo(int)

findPassingThrough

public void findPassingThrough(PlotCommit<L> currCommit,
                               Collection<L> result)
Find the set of lanes passing through a commit's row.

Lanes passing through a commit are lanes that the commit is not directly on, but that need to travel through this commit to connect a descendant (child) commit to an ancestor (parent) commit. Typically these lanes will be drawn as lines in the passed commit's box, and the passed commit won't appear to be connected to those lines.

This method modifies the passed collection by adding the lanes in any order.

Parameters:
currCommit - the commit the caller needs to get the lanes from.
result - collection to add the passing lanes into.

enter

protected void enter(int index,
                     PlotCommit<L> currCommit)
Description copied from class: RevCommitList
Optional callback invoked when commits enter the list by fillTo.

This method is only called during RevCommitList.fillTo(int).

Overrides:
enter in class RevCommitList<PlotCommit<L extends PlotLane>>
Parameters:
index - the list position this object will appear at.
currCommit - the object being added (or set) into the list.

createLane

protected L createLane()
Returns:
a new Lane appropriate for this particular PlotList.

recycleLane

protected void recycleLane(L lane)
Return colors and other reusable information to the plotter when a lane is no longer needed.

Parameters:
lane -


Copyright © 2012. All Rights Reserved.