blob: 9cd475765952a4e20100d5cf506987003d432ba8 [file] [log] [blame]
package com.intellij.openapi.diff.impl.incrementalMerge;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.diff.impl.highlighting.FragmentSide;
import com.intellij.openapi.util.TextRange;
import org.jetbrains.annotations.NotNull;
public class NoConflictChange extends TwoSideChange.SideChange<MergeNoConflict> {
private static final Logger LOG = Logger.getInstance(NoConflictChange.class);
private boolean myApplied;
public NoConflictChange(@NotNull MergeNoConflict twoSideChange,
@NotNull FragmentSide mergeSide,
@NotNull TextRange baseRange,
@NotNull TextRange versionRange,
@NotNull ChangeList changeList) {
super(twoSideChange, changeList, ChangeType.fromRanges(baseRange, versionRange), mergeSide, versionRange);
}
@Override
public void onApplied() {
markApplied();
NoConflictChange otherChange = myTwoSideChange.getOtherChange(this);
LOG.assertTrue(otherChange != null, String.format("Other change is null. This change: %s Merge conflict: %s", this, myTwoSideChange));
otherChange.markApplied();
}
@Override
protected void markApplied() {
if (!myApplied) {
myApplied = true;
super.markApplied();
}
}
}