org.eclipse.jgit.revplot

## Class PlotCommit<L extends PlotLane>

- java.lang.Object
- - org.eclipse.jgit.lib.AnyObjectId
  - - org.eclipse.jgit.lib.ObjectId
    - - org.eclipse.jgit.lib.ObjectIdOwnerMap.Entry
      - - org.eclipse.jgit.revwalk.RevObject
        - - org.eclipse.jgit.revwalk.RevCommit
          - - org.eclipse.jgit.revplot.PlotCommit<L>

Type Parameters:
  `L` - type of lane being used by the plotter.

All Implemented Interfaces:
  Serializable, Comparable<AnyObjectId>

    public class PlotCommit<L extends PlotLane>
    extends RevCommit

A commit reference to a commit in the DAG.

See Also:
  `PlotCommitList`, Serialized Form

### Constructor Summary

Constructors
`protected` `PlotCommit(AnyObjectId id)` Create a new commit.

### Method Summary

Methods
`PlotCommit` `getChild(int nth)` Get the nth child from this commit's child list.
`int` `getChildCount()` Get the number of child commits listed in this commit.
`L` `getLane()` Obtain the lane this commit has been plotted into.
`Ref` `getRef(int nth)` Get the nth Ref from this commit's ref list.
`int` `getRefCount()` Get the number of refs for this commit.
`boolean` `isChild(PlotCommit c)` Determine if the given commit is a child (descendant) of this commit.
`void` `reset()` Reset this commit to allow another RevWalk with the same instances.

### Methods inherited from class org.eclipse.jgit.revwalk.RevCommit

`carry, getAuthorIdent, getCommitterIdent, getCommitTime, getEncoding, getFooterLines, getFooterLines, getFooterLines, getFullMessage, getParent, getParentCount, getParents, getRawBuffer, getShortMessage, getTree, getType, parse, parse, toString`

### Methods inherited from class org.eclipse.jgit.revwalk.RevObject

`add, add, appendCoreFlags, getId, has, hasAll, hasAny, remove, remove`

### Methods inherited from class org.eclipse.jgit.lib.ObjectId

`equals, fromRaw, fromRaw, fromRaw, fromRaw, fromString, fromString, isId, toObjectId, toString, zeroId`

### Methods inherited from class org.eclipse.jgit.lib.AnyObjectId

`abbreviate, compareTo, compareTo, compareTo, copy, copyRawTo, copyRawTo, copyRawTo, copyRawTo, copyTo, copyTo, copyTo, copyTo, copyTo, copyTo, equals, equals, equals, getByte, getFirstByte, getName, hashCode, name, startsWith`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### PlotCommit

    protected PlotCommit(AnyObjectId id)

Create a new commit.

Parameters:
  `id` - the identity of this commit.

### Method Detail

#### getChildCount

    public final int getChildCount()

Get the number of child commits listed in this commit.

Returns:
  number of children; always a positive value but can be 0.

#### getChild

    public final PlotCommit getChild(int nth)

Get the nth child from this commit's child list.

Parameters:
  `nth` - child index to obtain. Must be in the range 0 through `getChildCount()`-1.
Returns:
  the specified child.
Throws:
  `ArrayIndexOutOfBoundsException` - an invalid child index was specified.

#### isChild

    public final boolean isChild(PlotCommit c)

Determine if the given commit is a child (descendant) of this commit.

Parameters:
  `c` - the commit to test.
Returns:
  true if the given commit built on top of this commit.

#### getRefCount

    public final int getRefCount()

Get the number of refs for this commit.

Returns:
  number of refs; always a positive value but can be 0.

#### getRef

    public final Ref getRef(int nth)

Get the nth Ref from this commit's ref list.

Parameters:
  `nth` - ref index to obtain. Must be in the range 0 through `getRefCount()`-1.
Returns:
  the specified ref.
Throws:
  `ArrayIndexOutOfBoundsException` - an invalid ref index was specified.

#### getLane

    public final L getLane()

Obtain the lane this commit has been plotted into.

Returns:
  the assigned lane for this commit.

#### reset

    public void reset()

Description copied from class: `RevCommit`
Reset this commit to allow another RevWalk with the same instances.

Subclasses must call `super.reset()` to ensure the basic information can be correctly cleared out.

Overrides:
  `reset` in class `RevCommit`