MCPcopy Create free account
hub / github.com/DeNA/PacketProxy / diffPerLine

Method diffPerLine

src/main/java/core/packetproxy/model/Diff.java:99–133  ·  view source on GitHub ↗
(DiffSet set, DiffEventListener original_event, DiffEventListener target_event)

Source from the content-addressed store, hash-verified

97 }
98
99 public static void diffPerLine(DiffSet set, DiffEventListener original_event, DiffEventListener target_event)
100 throws Exception {
101 try {
102
103 List<String> listOrig = Arrays.asList(new String(set.getOriginal()).split("\n"));
104 List<String> listTarg = Arrays.asList(new String(set.getTarget()).split("\n"));
105
106 Patch diff = DiffUtils.diff(listOrig, listTarg);
107
108 List<Delta> deltas = diff.getDeltas();
109 for (Delta delta : deltas) {
110
111 Chunk chunkOrig = delta.getOriginal();
112 Chunk chunkTarg = delta.getRevised();
113 if (delta.getType() == Delta.TYPE.CHANGE) {
114
115 original_event.foundChgDelta(chunkPositionPerLine(listOrig, chunkOrig),
116 chunkLengthPerLine(chunkOrig));
117 target_event.foundChgDelta(chunkPositionPerLine(listTarg, chunkTarg),
118 chunkLengthPerLine(chunkTarg));
119 } else if (delta.getType() == Delta.TYPE.INSERT) {
120
121 target_event.foundInsDelta(chunkPositionPerLine(listTarg, chunkTarg),
122 chunkLengthPerLine(chunkTarg));
123 } else if (delta.getType() == Delta.TYPE.DELETE) {
124
125 original_event.foundDelDelta(chunkPositionPerLine(listOrig, chunkOrig),
126 chunkLengthPerLine(chunkOrig));
127 }
128 }
129 } catch (Exception e) {
130
131 errWithStackTrace(e);
132 }
133 }
134}

Callers 1

updateMethod · 0.95

Calls 9

getOriginalMethod · 0.80
chunkPositionPerLineMethod · 0.80
chunkLengthPerLineMethod · 0.80
errWithStackTraceMethod · 0.80
getTypeMethod · 0.65
foundChgDeltaMethod · 0.65
foundInsDeltaMethod · 0.65
foundDelDeltaMethod · 0.65
getTargetMethod · 0.45

Tested by

no test coverage detected