Class NotesBranchUtil

java.lang.Object
com.google.gerrit.server.git.NotesBranchUtil

public class NotesBranchUtil extends Object
A utility class for updating a notes branch with automatic merge of note trees.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static interface 
     
  • Constructor Summary

    Constructors
    Constructor
    Description
    NotesBranchUtil(org.eclipse.jgit.lib.PersonIdent gerritIdent, GitReferenceUpdated gitRefUpdated, Project.NameKey project, org.eclipse.jgit.lib.Repository db, org.eclipse.jgit.lib.ObjectInserter inserter)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    final void
    commitAllNotes(org.eclipse.jgit.notes.NoteMap notes, String notesBranch, org.eclipse.jgit.lib.PersonIdent commitAuthor, String commitMessage)
    Create a new commit in the notesBranch by updating existing or creating new notes from the notes map.
    final org.eclipse.jgit.notes.NoteMap
    commitNewNotes(org.eclipse.jgit.notes.NoteMap notes, String notesBranch, org.eclipse.jgit.lib.PersonIdent commitAuthor, String commitMessage)
    Create a new commit in the notesBranch by creating not yet existing notes from the notes map.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • NotesBranchUtil

      @Inject public NotesBranchUtil(org.eclipse.jgit.lib.PersonIdent gerritIdent, GitReferenceUpdated gitRefUpdated, Project.NameKey project, org.eclipse.jgit.lib.Repository db, org.eclipse.jgit.lib.ObjectInserter inserter)
  • Method Details

    • commitAllNotes

      public final void commitAllNotes(org.eclipse.jgit.notes.NoteMap notes, String notesBranch, org.eclipse.jgit.lib.PersonIdent commitAuthor, String commitMessage) throws IOException
      Create a new commit in the notesBranch by updating existing or creating new notes from the notes map.

      Does not retry in the case of lock failure; callers may use RetryHelper.

      Parameters:
      notes - map of notes
      notesBranch - notes branch to update
      commitAuthor - author of the commit in the notes branch
      commitMessage - for the commit in the notes branch
      Throws:
      com.google.gerrit.git.LockFailureException - if committing the notes failed due to a lock failure on the notes branch
      IOException - if committing the notes failed for any other reason
    • commitNewNotes

      public final org.eclipse.jgit.notes.NoteMap commitNewNotes(org.eclipse.jgit.notes.NoteMap notes, String notesBranch, org.eclipse.jgit.lib.PersonIdent commitAuthor, String commitMessage) throws IOException
      Create a new commit in the notesBranch by creating not yet existing notes from the notes map. The notes from the notes map which already exist in the note-tree of the tip of the notesBranch will not be updated.

      Does not retry in the case of lock failure; callers may use RetryHelper.

      Parameters:
      notes - map of notes
      notesBranch - notes branch to update
      commitAuthor - author of the commit in the notes branch
      commitMessage - for the commit in the notes branch
      Returns:
      map with those notes from the notes that were newly created
      Throws:
      com.google.gerrit.git.LockFailureException - if committing the notes failed due to a lock failure on the notes branch
      IOException - if committing the notes failed for any other reason