Class BazaarDiffConsumer

  • All Implemented Interfaces:
    org.codehaus.plexus.util.cli.StreamConsumer

    public class BazaarDiffConsumer
    extends BazaarConsumer
    • Field Detail

      • MODIFIED_FILE_TOKEN

        private static final java.lang.String MODIFIED_FILE_TOKEN
        See Also:
        Constant Field Values
      • ADDED_FILE_TOKEN

        private static final java.lang.String ADDED_FILE_TOKEN
        See Also:
        Constant Field Values
      • DELETED_FILE_TOKEN

        private static final java.lang.String DELETED_FILE_TOKEN
        See Also:
        Constant Field Values
      • NO_NEWLINE_TOKEN

        private static final java.lang.String NO_NEWLINE_TOKEN
        See Also:
        Constant Field Values
      • ADDED_LINE_TOKEN

        private static final java.lang.String ADDED_LINE_TOKEN
        See Also:
        Constant Field Values
      • REMOVED_LINE_TOKEN

        private static final java.lang.String REMOVED_LINE_TOKEN
        See Also:
        Constant Field Values
      • UNCHANGED_LINE_TOKEN

        private static final java.lang.String UNCHANGED_LINE_TOKEN
        See Also:
        Constant Field Values
      • workingDirectory

        private java.io.File workingDirectory
      • currentFile

        private java.lang.String currentFile
      • currentDifference

        private java.lang.StringBuilder currentDifference
      • changedFiles

        private java.util.List<ScmFile> changedFiles
      • differences

        private java.util.Map<java.lang.String,​java.lang.CharSequence> differences
      • patch

        private java.lang.StringBuilder patch
    • Constructor Detail

      • BazaarDiffConsumer

        public BazaarDiffConsumer​(ScmLogger logger,
                                  java.io.File workingDirectory)
    • Method Detail

      • addChangedFile

        private void addChangedFile​(ScmFileStatus status,
                                    java.lang.String line,
                                    java.lang.String tmpLine)
        This method takes into account two types of diff output.
        - Bazaar 0.7 format: dir/dir/myfile
        - Bazaar 0.8 format: a/dir/dir/myfile
        Parameters:
        status - Eg. modified or added
        line - The original bazaar output to process (for logging)
        tmpLine - The bazaar output to process
      • addChangedFile

        private boolean addChangedFile​(ScmFileStatus status,
                                       java.lang.String tmpLine)
        Parameters:
        status -
        tmpLine -
        Returns:
        True if tmpLine was a valid file and thus added to the changeset
      • getChangedFiles

        public java.util.List<ScmFile> getChangedFiles()
      • getDifferences

        public java.util.Map<java.lang.String,​java.lang.CharSequence> getDifferences()
      • getPatch

        public java.lang.String getPatch()