org.eclipse.jgit.lib

## Class TagBuilder

- java.lang.Object
- - org.eclipse.jgit.lib.TagBuilder

    public class TagBuilder
    extends Object

Mutable builder to construct an annotated tag recording a project state. Applications should use this object when they need to manually construct a tag and want precise control over its fields. To read a tag object, construct a `RevWalk` and obtain a `RevTag` instance by calling `RevWalk.parseTag(AnyObjectId)`.

### Constructor Summary

Constructors
Constructor and Description
`TagBuilder()`

### Method Summary

All Methods Instance Methods Concrete Methods
`byte[]` `build()` Format this builder's state as an annotated tag object.
`String` `getMessage()`
`ObjectId` `getObjectId()`
`int` `getObjectType()`
`String` `getTag()`
`PersonIdent` `getTagger()`
`void` `setMessage(String newMessage)` Set the tag's message.
`void` `setObjectId(AnyObjectId obj, int objType)` Set the object this tag refers to, and its type.
`void` `setObjectId(RevObject obj)` Set the object this tag refers to, and infer its type.
`void` `setTag(String shortName)` Set the name of this tag.
`void` `setTagger(PersonIdent taggerIdent)` Set the creator of this tag.
`byte[]` `toByteArray()` Format this builder's state as an annotated tag object.
`String` `toString()`

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

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

### Constructor Detail

#### TagBuilder

    public TagBuilder()

### Method Detail

#### getObjectType

    public int getObjectType()

Returns:
  the type of object this tag refers to.

#### getObjectId

    public ObjectId getObjectId()

Returns:
  the object this tag refers to.

#### setObjectId

    public void setObjectId(AnyObjectId obj,
                            int objType)

Set the object this tag refers to, and its type.

Parameters:
  `obj` - the object.
  `objType` - the type of `obj`. Must be a valid type code.

#### setObjectId

    public void setObjectId(RevObject obj)

Set the object this tag refers to, and infer its type.

Parameters:
  `obj` - the object the tag will refer to.

#### getTag

    public String getTag()

Returns:
  short name of the tag (no `refs/tags/` prefix).

#### setTag

    public void setTag(String shortName)

Set the name of this tag.

Parameters:
  `shortName` - new short name of the tag. This short name should not start with `refs/` as typically a tag is stored under the reference derived from `"refs/tags/" + getTag()`.

#### getTagger

    public PersonIdent getTagger()

Returns:
  creator of this tag. May be null.

#### setTagger

    public void setTagger(PersonIdent taggerIdent)

Set the creator of this tag.

Parameters:
  `taggerIdent` - the creator. May be null.

#### getMessage

    public String getMessage()

Returns:
  the complete commit message.

#### setMessage

    public void setMessage(String newMessage)

Set the tag's message.

Parameters:
  `newMessage` - the tag's message.

#### build

    public byte[] build()

Format this builder's state as an annotated tag object.

Returns:
  this object in the canonical annotated tag format, suitable for storage in a repository.

#### toByteArray

    public byte[] toByteArray()

Format this builder's state as an annotated tag object.

Returns:
  this object in the canonical annotated tag format, suitable for storage in a repository.

#### toString

    public String toString()

Overrides:
  `toString` in class `Object`