Class FSMergerBySequence
java.lang.Object
org.tmatesoft.svn.core.internal.wc.FSMergerBySequence
public class FSMergerBySequence
extends java.lang.Object
- Version:
- 1.3
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final java.lang.Stringstatic final intprivate final byte[]private final byte[]private final byte[]private final byte[]static final int -
Constructor Summary
ConstructorsConstructorDescriptionFSMergerBySequence(byte[] conflictStart, byte[] conflictSeparator, byte[] conflictEnd) FSMergerBySequence(byte[] conflictStart, byte[] conflictSeparator, byte[] conflictEnd, byte[] originalMarker) -
Method Summary
Modifier and TypeMethodDescriptionprivate intappendLines(java.io.OutputStream result, de.regnis.q.sequence.QSequenceDifferenceBlock block, de.regnis.q.sequence.line.QSequenceLineCache changedLines, int baseLineIndex, java.util.List transformedLocalLines) private voidappendTransformedLocalLines(int baseLineIndex, int to, java.util.List transformedLocalLines, java.io.OutputStream result) private booleancheckConflict(FSMergerBySequenceList localChanges, FSMergerBySequenceList latestChanges, de.regnis.q.sequence.line.QSequenceLineCache localLines, de.regnis.q.sequence.line.QSequenceLineCache latestLines, int baseLineCount) private intcreateConflict(java.io.OutputStream result, de.regnis.q.sequence.QSequenceDifferenceBlock localStart, de.regnis.q.sequence.QSequenceDifferenceBlock localEnd, de.regnis.q.sequence.QSequenceDifferenceBlock latestStart, de.regnis.q.sequence.QSequenceDifferenceBlock latestEnd, de.regnis.q.sequence.line.QSequenceLineCache localLines, de.regnis.q.sequence.line.QSequenceLineCache latestLines, int baseLineIndex, java.util.List transformedLocalLines, SVNDiffConflictChoiceStyle style) private intcreateOnlyConflictWithContext(java.io.OutputStream result, de.regnis.q.sequence.QSequenceDifferenceBlock localStart, de.regnis.q.sequence.QSequenceDifferenceBlock localEnd, de.regnis.q.sequence.QSequenceDifferenceBlock latestStart, de.regnis.q.sequence.QSequenceDifferenceBlock latestEnd, de.regnis.q.sequence.line.QSequenceLineCache localLines, de.regnis.q.sequence.line.QSequenceLineCache latestLines, de.regnis.q.sequence.line.QSequenceLineCache baseLines) private de.regnis.q.sequence.line.simplifier.QSequenceLineTeeSimplifiercreateSimplifier(SVNDiffOptions options) private booleanintersect(de.regnis.q.sequence.QSequenceDifferenceBlock block1, de.regnis.q.sequence.QSequenceDifferenceBlock block2, int baseLineCount) private booleanisBefore(de.regnis.q.sequence.QSequenceDifferenceBlock block1, de.regnis.q.sequence.QSequenceDifferenceBlock block2) private booleanisEqualChange(de.regnis.q.sequence.QSequenceDifferenceBlock localBlock, de.regnis.q.sequence.QSequenceDifferenceBlock latestBlock, de.regnis.q.sequence.line.QSequenceLineCache localLines, de.regnis.q.sequence.line.QSequenceLineCache latestLines) intmerge(de.regnis.q.sequence.line.QSequenceLineRAData baseData, de.regnis.q.sequence.line.QSequenceLineRAData localData, de.regnis.q.sequence.line.QSequenceLineRAData latestData, SVNDiffOptions options, java.io.OutputStream result, SVNDiffConflictChoiceStyle style) private java.util.ListtransformLocalLines(java.util.List blocks, de.regnis.q.sequence.line.QSequenceLineCache localLines) private voidwriteBytes(java.io.OutputStream os, byte[] bytes) private voidwriteBytesAndEol(java.io.OutputStream os, byte[] bytes) private voidwriteLine(java.io.OutputStream os, de.regnis.q.sequence.line.QSequenceLine line) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Field Details
-
DEFAULT_EOL
public static final java.lang.String DEFAULT_EOL -
NOT_MODIFIED
public static final int NOT_MODIFIED- See Also:
-
MERGED
public static final int MERGED- See Also:
-
CONFLICTED
public static final int CONFLICTED- See Also:
-
myConflictStart
private final byte[] myConflictStart -
myConflictSeparator
private final byte[] myConflictSeparator -
myConflictEnd
private final byte[] myConflictEnd -
myOriginalMarker
private final byte[] myOriginalMarker
-
-
Constructor Details
-
FSMergerBySequence
public FSMergerBySequence(byte[] conflictStart, byte[] conflictSeparator, byte[] conflictEnd) -
FSMergerBySequence
public FSMergerBySequence(byte[] conflictStart, byte[] conflictSeparator, byte[] conflictEnd, byte[] originalMarker)
-
-
Method Details
-
merge
public int merge(de.regnis.q.sequence.line.QSequenceLineRAData baseData, de.regnis.q.sequence.line.QSequenceLineRAData localData, de.regnis.q.sequence.line.QSequenceLineRAData latestData, SVNDiffOptions options, java.io.OutputStream result, SVNDiffConflictChoiceStyle style) throws java.io.IOException - Throws:
java.io.IOException
-
transformLocalLines
private java.util.List transformLocalLines(java.util.List blocks, de.regnis.q.sequence.line.QSequenceLineCache localLines) throws java.io.IOException - Throws:
java.io.IOException
-
isBefore
private boolean isBefore(de.regnis.q.sequence.QSequenceDifferenceBlock block1, de.regnis.q.sequence.QSequenceDifferenceBlock block2) -
intersect
private boolean intersect(de.regnis.q.sequence.QSequenceDifferenceBlock block1, de.regnis.q.sequence.QSequenceDifferenceBlock block2, int baseLineCount) -
appendLines
private int appendLines(java.io.OutputStream result, de.regnis.q.sequence.QSequenceDifferenceBlock block, de.regnis.q.sequence.line.QSequenceLineCache changedLines, int baseLineIndex, java.util.List transformedLocalLines) throws java.io.IOException - Throws:
java.io.IOException
-
isEqualChange
private boolean isEqualChange(de.regnis.q.sequence.QSequenceDifferenceBlock localBlock, de.regnis.q.sequence.QSequenceDifferenceBlock latestBlock, de.regnis.q.sequence.line.QSequenceLineCache localLines, de.regnis.q.sequence.line.QSequenceLineCache latestLines) throws java.io.IOException - Throws:
java.io.IOException
-
checkConflict
private boolean checkConflict(FSMergerBySequenceList localChanges, FSMergerBySequenceList latestChanges, de.regnis.q.sequence.line.QSequenceLineCache localLines, de.regnis.q.sequence.line.QSequenceLineCache latestLines, int baseLineCount) throws java.io.IOException - Throws:
java.io.IOException
-
createConflict
private int createConflict(java.io.OutputStream result, de.regnis.q.sequence.QSequenceDifferenceBlock localStart, de.regnis.q.sequence.QSequenceDifferenceBlock localEnd, de.regnis.q.sequence.QSequenceDifferenceBlock latestStart, de.regnis.q.sequence.QSequenceDifferenceBlock latestEnd, de.regnis.q.sequence.line.QSequenceLineCache localLines, de.regnis.q.sequence.line.QSequenceLineCache latestLines, int baseLineIndex, java.util.List transformedLocalLines, SVNDiffConflictChoiceStyle style) throws java.io.IOException - Throws:
java.io.IOException
-
createOnlyConflictWithContext
private int createOnlyConflictWithContext(java.io.OutputStream result, de.regnis.q.sequence.QSequenceDifferenceBlock localStart, de.regnis.q.sequence.QSequenceDifferenceBlock localEnd, de.regnis.q.sequence.QSequenceDifferenceBlock latestStart, de.regnis.q.sequence.QSequenceDifferenceBlock latestEnd, de.regnis.q.sequence.line.QSequenceLineCache localLines, de.regnis.q.sequence.line.QSequenceLineCache latestLines, de.regnis.q.sequence.line.QSequenceLineCache baseLines) throws java.io.IOException - Throws:
java.io.IOException
-
appendTransformedLocalLines
private void appendTransformedLocalLines(int baseLineIndex, int to, java.util.List transformedLocalLines, java.io.OutputStream result) throws java.io.IOException - Throws:
java.io.IOException
-
writeLine
private void writeLine(java.io.OutputStream os, de.regnis.q.sequence.line.QSequenceLine line) throws java.io.IOException - Throws:
java.io.IOException
-
writeBytesAndEol
private void writeBytesAndEol(java.io.OutputStream os, byte[] bytes) throws java.io.IOException - Throws:
java.io.IOException
-
writeBytes
private void writeBytes(java.io.OutputStream os, byte[] bytes) throws java.io.IOException - Throws:
java.io.IOException
-
createSimplifier
private de.regnis.q.sequence.line.simplifier.QSequenceLineTeeSimplifier createSimplifier(SVNDiffOptions options)
-