Interface NoteMerger

All Known Implementing Classes:
DefaultNoteMerger

public interface NoteMerger
Three-way note merge operation.

This operation takes three versions of a note: base, ours and theirs, performs the three-way merge and returns the merge result.

  • Method Details

    • merge

      Note merge(Note base, Note ours, Note their, ObjectReader reader, ObjectInserter inserter) throws NotesMergeConflictException, IOException
      Merges the conflicting note changes.

      base, ours and their are all notes on the same object.

      Parameters:
      base - version of the Note
      ours - version of the Note
      their - version of the Note
      reader - the object reader that must be used to read Git objects
      inserter - the object inserter that must be used to insert Git objects
      Returns:
      the merge result
      Throws:
      NotesMergeConflictException - in case there was a merge conflict which this note merger couldn't resolve
      IOException - in case the reader or the inserter would throw an java.io.IOException the implementor will most likely want to propagate it as it can't do much to recover from it