org.eclipse.jgit.lib
Class CommitBuilder

java.lang.Object
  extended by org.eclipse.jgit.lib.CommitBuilder

public class CommitBuilder
extends Object

Mutable builder to construct a commit recording the state of a project. Applications should use this object when they need to manually construct a commit and want precise control over its fields. For a higher level interface see CommitCommand. To read a commit object, construct a RevWalk and obtain a RevCommit instance by calling RevWalk.parseCommit(AnyObjectId).


Constructor Summary
CommitBuilder()
          Initialize an empty commit.
 
Method Summary
 void addParentId(AnyObjectId additionalParent)
          Add a parent onto the end of the parent list.
 byte[] build()
          Format this builder's state as a commit object.
 PersonIdent getAuthor()
           
 PersonIdent getCommitter()
           
 Charset getEncoding()
           
 String getMessage()
           
 ObjectId[] getParentIds()
           
 ObjectId getTreeId()
           
 void setAuthor(PersonIdent newAuthor)
          Set the author (name, email address, and date) of who wrote the commit.
 void setCommitter(PersonIdent newCommitter)
          Set the committer and commit time for this object
 void setEncoding(Charset enc)
          Set the encoding for the commit information
 void setEncoding(String encodingName)
          Set the encoding for the commit information
 void setMessage(String newMessage)
          Set the commit message.
 void setParentId(AnyObjectId newParent)
          Set the parent of this commit.
 void setParentIds(AnyObjectId parent1, AnyObjectId parent2)
          Set the parents of this commit.
 void setParentIds(List<? extends AnyObjectId> newParents)
          Set the parents of this commit.
 void setParentIds(ObjectId... newParents)
          Set the parents of this commit.
 void setTreeId(AnyObjectId id)
          Set the tree id for this commit object
 byte[] toByteArray()
          Format this builder's state as a commit object.
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

CommitBuilder

public CommitBuilder()
Initialize an empty commit.

Method Detail

getTreeId

public ObjectId getTreeId()
Returns:
id of the root tree listing this commit's snapshot.

setTreeId

public void setTreeId(AnyObjectId id)
Set the tree id for this commit object

Parameters:
id - the tree identity.

getAuthor

public PersonIdent getAuthor()
Returns:
the author of this commit (who wrote it).

setAuthor

public void setAuthor(PersonIdent newAuthor)
Set the author (name, email address, and date) of who wrote the commit.

Parameters:
newAuthor - the new author. Should not be null.

getCommitter

public PersonIdent getCommitter()
Returns:
the committer and commit time for this object.

setCommitter

public void setCommitter(PersonIdent newCommitter)
Set the committer and commit time for this object

Parameters:
newCommitter - the committer information. Should not be null.

getParentIds

public ObjectId[] getParentIds()
Returns:
the ancestors of this commit. Never null.

setParentId

public void setParentId(AnyObjectId newParent)
Set the parent of this commit.

Parameters:
newParent - the single parent for the commit.

setParentIds

public void setParentIds(AnyObjectId parent1,
                         AnyObjectId parent2)
Set the parents of this commit.

Parameters:
parent1 - the first parent of this commit. Typically this is the current value of the HEAD reference and is thus the current branch's position in history.
parent2 - the second parent of this merge commit. Usually this is the branch being merged into the current branch.

setParentIds

public void setParentIds(ObjectId... newParents)
Set the parents of this commit.

Parameters:
newParents - the entire list of parents for this commit.

setParentIds

public void setParentIds(List<? extends AnyObjectId> newParents)
Set the parents of this commit.

Parameters:
newParents - the entire list of parents for this commit.

addParentId

public void addParentId(AnyObjectId additionalParent)
Add a parent onto the end of the parent list.

Parameters:
additionalParent - new parent to add onto the end of the current parent list.

getMessage

public String getMessage()
Returns:
the complete commit message.

setMessage

public void setMessage(String newMessage)
Set the commit message.

Parameters:
newMessage - the commit message. Should not be null.

setEncoding

public void setEncoding(String encodingName)
Set the encoding for the commit information

Parameters:
encodingName - the encoding name. See Charset.forName(String).

setEncoding

public void setEncoding(Charset enc)
Set the encoding for the commit information

Parameters:
enc - the encoding to use.

getEncoding

public Charset getEncoding()
Returns:
the encoding that should be used for the commit message text.

build

public byte[] build()
             throws UnsupportedEncodingException
Format this builder's state as a commit object.

Returns:
this object in the canonical commit format, suitable for storage in a repository.
Throws:
UnsupportedEncodingException - the encoding specified by getEncoding() is not supported by this Java runtime.

toByteArray

public byte[] toByteArray()
                   throws UnsupportedEncodingException
Format this builder's state as a commit object.

Returns:
this object in the canonical commit format, suitable for storage in a repository.
Throws:
UnsupportedEncodingException - the encoding specified by getEncoding() is not supported by this Java runtime.

toString

public String toString()
Overrides:
toString in class Object


Copyright © 2012. All Rights Reserved.