Class FileHeader

  • Direct Known Subclasses:
    CombinedFileHeader

    public class FileHeader
    extends DiffEntry
    Patch header describing an action for a single file path.
    • Constructor Detail

      • FileHeader

        public FileHeader​(byte[] headerLines,
                          EditList edits,
                          FileHeader.PatchType type)
        Constructs a new FileHeader
        Parameters:
        headerLines - buffer holding the diff header for this file
        edits - the edits for this file
        type - the type of patch used to modify this file
    • Method Detail

      • getBuffer

        public byte[] getBuffer()
        Get the byte array holding this file's patch script.
        Returns:
        the byte array holding this file's patch script.
      • getStartOffset

        public int getStartOffset()
        Get offset of the start of this file's script in getBuffer().
        Returns:
        offset of the start of this file's script in getBuffer().
      • getEndOffset

        public int getEndOffset()
        Get offset one past the end of the file script.
        Returns:
        offset one past the end of the file script.
      • getScriptText

        public String getScriptText()
        Convert the patch script for this file into a string.

        The default character encoding (StandardCharsets.UTF_8) is assumed for both the old and new files.

        Returns:
        the patch script, as a Unicode string.
      • getScriptText

        public String getScriptText​(Charset oldCharset,
                                    Charset newCharset)
        Convert the patch script for this file into a string.
        Parameters:
        oldCharset - hint character set to decode the old lines with.
        newCharset - hint character set to decode the new lines with.
        Returns:
        the patch script, as a Unicode string.
      • getPatchType

        public FileHeader.PatchType getPatchType()
        Get style of patch used to modify this file.
        Returns:
        style of patch used to modify this file.
      • hasMetaDataChanges

        public boolean hasMetaDataChanges()
        Whether this patch modifies metadata about a file
        Returns:
        true if this patch modifies metadata about a file .
      • getHunks

        public List<? extends HunkHeader> getHunks()
        Get hunks altering this file; in order of appearance in patch
        Returns:
        hunks altering this file; in order of appearance in patch.
      • toEditList

        public EditList toEditList()
        Convert to a list describing the content edits performed on this file.
        Returns:
        a list describing the content edits performed on this file.