public final class UnifiedDiffReader
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
(package private) class |
UnifiedDiffReader.UnifiedDiffLine |
Constructor and Description |
---|
UnifiedDiffReader(java.io.Reader reader) |
Modifier and Type | Method and Description |
---|---|
private java.lang.String |
checkForNoNewLineAtTheEndOfTheFile(java.lang.String line) |
private java.lang.String |
extractFileName(java.lang.String _line) |
private java.lang.String |
extractTimestamp(java.lang.String line) |
private void |
finalizeChunk() |
private void |
initFileIfNecessary() |
private UnifiedDiff |
parse() |
(package private) static java.lang.String[] |
parseFileNames(java.lang.String line) |
static UnifiedDiff |
parseUnifiedDiff(java.io.InputStream stream)
To parse a diff file use this method.
|
private void |
processAddLine(java.util.regex.MatchResult match,
java.lang.String line) |
private void |
processChunk(java.util.regex.MatchResult match,
java.lang.String chunkStart) |
private void |
processDeletedFileMode(java.util.regex.MatchResult match,
java.lang.String line) |
private void |
processDelLine(java.util.regex.MatchResult match,
java.lang.String line) |
private void |
processDiff(java.util.regex.MatchResult match,
java.lang.String line) |
private void |
processFromFile(java.util.regex.MatchResult match,
java.lang.String line) |
private void |
processIndex(java.util.regex.MatchResult match,
java.lang.String line) |
private boolean |
processLine(java.lang.String line,
UnifiedDiffReader.UnifiedDiffLine... rules) |
private void |
processNewFileMode(java.util.regex.MatchResult match,
java.lang.String line) |
private void |
processNormalLine(java.util.regex.MatchResult match,
java.lang.String line) |
private void |
processRenameFrom(java.util.regex.MatchResult match,
java.lang.String line) |
private void |
processRenameTo(java.util.regex.MatchResult match,
java.lang.String line) |
private void |
processSimilarityIndex(java.util.regex.MatchResult match,
java.lang.String line) |
private void |
processToFile(java.util.regex.MatchResult match,
java.lang.String line) |
private static java.lang.Integer |
toInteger(java.util.regex.MatchResult match,
int group,
int defValue) |
private boolean |
validLine(java.lang.String line,
UnifiedDiffReader.UnifiedDiffLine... rules) |
static final java.util.regex.Pattern UNIFIED_DIFF_CHUNK_REGEXP
static final java.util.regex.Pattern TIMESTAMP_REGEXP
private final InternalUnifiedDiffReader READER
private final UnifiedDiff data
private final UnifiedDiffReader.UnifiedDiffLine DIFF_COMMAND
private final UnifiedDiffReader.UnifiedDiffLine SIMILARITY_INDEX
private final UnifiedDiffReader.UnifiedDiffLine INDEX
private final UnifiedDiffReader.UnifiedDiffLine FROM_FILE
private final UnifiedDiffReader.UnifiedDiffLine TO_FILE
private final UnifiedDiffReader.UnifiedDiffLine RENAME_FROM
private final UnifiedDiffReader.UnifiedDiffLine RENAME_TO
private final UnifiedDiffReader.UnifiedDiffLine NEW_FILE_MODE
private final UnifiedDiffReader.UnifiedDiffLine DELETED_FILE_MODE
private final UnifiedDiffReader.UnifiedDiffLine CHUNK
private final UnifiedDiffReader.UnifiedDiffLine LINE_NORMAL
private final UnifiedDiffReader.UnifiedDiffLine LINE_DEL
private final UnifiedDiffReader.UnifiedDiffLine LINE_ADD
private UnifiedDiffFile actualFile
private static final java.util.logging.Logger LOG
private java.util.List<java.lang.String> originalTxt
private java.util.List<java.lang.String> revisedTxt
private java.util.List<java.lang.Integer> addLineIdxList
private java.util.List<java.lang.Integer> delLineIdxList
private int old_ln
private int old_size
private int new_ln
private int new_size
private int delLineIdx
private int addLineIdx
private UnifiedDiff parse() throws java.io.IOException, UnifiedDiffParserException
java.io.IOException
UnifiedDiffParserException
private java.lang.String checkForNoNewLineAtTheEndOfTheFile(java.lang.String line) throws java.io.IOException
java.io.IOException
static java.lang.String[] parseFileNames(java.lang.String line)
public static UnifiedDiff parseUnifiedDiff(java.io.InputStream stream) throws java.io.IOException, UnifiedDiffParserException
stream
- This is the diff file data.java.io.IOException
UnifiedDiffParserException
private boolean processLine(java.lang.String line, UnifiedDiffReader.UnifiedDiffLine... rules) throws UnifiedDiffParserException
UnifiedDiffParserException
private boolean validLine(java.lang.String line, UnifiedDiffReader.UnifiedDiffLine... rules)
private void initFileIfNecessary()
private void processDiff(java.util.regex.MatchResult match, java.lang.String line)
private void processSimilarityIndex(java.util.regex.MatchResult match, java.lang.String line)
private void finalizeChunk()
private void processNormalLine(java.util.regex.MatchResult match, java.lang.String line)
private void processAddLine(java.util.regex.MatchResult match, java.lang.String line)
private void processDelLine(java.util.regex.MatchResult match, java.lang.String line)
private void processChunk(java.util.regex.MatchResult match, java.lang.String chunkStart)
private static java.lang.Integer toInteger(java.util.regex.MatchResult match, int group, int defValue) throws java.lang.NumberFormatException
java.lang.NumberFormatException
private void processIndex(java.util.regex.MatchResult match, java.lang.String line)
private void processFromFile(java.util.regex.MatchResult match, java.lang.String line)
private void processToFile(java.util.regex.MatchResult match, java.lang.String line)
private void processRenameFrom(java.util.regex.MatchResult match, java.lang.String line)
private void processRenameTo(java.util.regex.MatchResult match, java.lang.String line)
private void processNewFileMode(java.util.regex.MatchResult match, java.lang.String line)
private void processDeletedFileMode(java.util.regex.MatchResult match, java.lang.String line)
private java.lang.String extractFileName(java.lang.String _line)
private java.lang.String extractTimestamp(java.lang.String line)