Skip to content

Commit d196b30

Browse files
committed
Merge remote-tracking branch 'origin/master' into develop
2 parents e3192a4 + db8e821 commit d196b30

File tree

12 files changed

+322
-206
lines changed

12 files changed

+322
-206
lines changed

client.diff/src/main/java/com/github/gumtreediff/client/diff/ui/web/views/ScriptView.java

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
import com.github.gumtreediff.actions.model.Action;
2525
import com.github.gumtreediff.gen.Generators;
2626
import com.github.gumtreediff.io.ActionsIoUtils;
27+
import com.github.gumtreediff.matchers.MappingStore;
2728
import com.github.gumtreediff.matchers.Matcher;
2829
import com.github.gumtreediff.matchers.Matchers;
2930
import com.github.gumtreediff.tree.TreeContext;
@@ -40,6 +41,12 @@
4041

4142
public class ScriptView implements Renderable {
4243

44+
private final MappingStore mappings;
45+
46+
private final TreeContext src;
47+
48+
private final TreeContext dst;
49+
4350
private File fSrc;
4451

4552
private File fDst;
@@ -49,11 +56,12 @@ public class ScriptView implements Renderable {
4956
public ScriptView(File fSrc, File fDst) throws IOException {
5057
this.fSrc = fSrc;
5158
this.fDst = fDst;
52-
TreeContext src = Generators.getInstance().getTree(fSrc.getAbsolutePath());
53-
TreeContext dst = Generators.getInstance().getTree(fDst.getAbsolutePath());
59+
src = Generators.getInstance().getTree(fSrc.getAbsolutePath());
60+
dst = Generators.getInstance().getTree(fDst.getAbsolutePath());
5461
Matcher matcher = Matchers.getInstance().getMatcher(src.getRoot(), dst.getRoot());
5562
matcher.match();
56-
ActionGenerator g = new ActionGenerator(src.getRoot(), dst.getRoot(), matcher.getMappings());
63+
mappings = matcher.getMappings();
64+
ActionGenerator g = new ActionGenerator(src.getRoot(), dst.getRoot(), mappings);
5765
g.generate();
5866
this.script = g.getActions();
5967
}
@@ -72,7 +80,7 @@ public void renderOn(HtmlCanvas html) throws IOException {
7280
.write("Script ")
7381
.small().content(String.format("%s -> %s", fSrc.getName(), fDst.getName()))
7482
._h3()
75-
.pre().content(ActionsIoUtils.toText(this.script))
83+
.pre().content(ActionsIoUtils.toText(src, this.script, mappings).toString())
7684
._div()
7785
._div()
7886
._div()

core/src/main/java/com/github/gumtreediff/actions/ActionGenerator.java

Lines changed: 8 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -20,19 +20,7 @@
2020

2121
package com.github.gumtreediff.actions;
2222

23-
import java.util.ArrayList;
24-
import java.util.HashSet;
25-
import java.util.List;
26-
import java.util.Set;
27-
28-
import com.github.gumtreediff.actions.model.Delete;
29-
import com.github.gumtreediff.actions.model.Update;
30-
import com.github.gumtreediff.tree.AbstractTree;
31-
import com.github.gumtreediff.actions.model.Action;
32-
import com.github.gumtreediff.actions.model.Delete;
33-
import com.github.gumtreediff.actions.model.Insert;
34-
import com.github.gumtreediff.actions.model.Move;
35-
import com.github.gumtreediff.actions.model.Update;
23+
import com.github.gumtreediff.actions.model.*;
3624
import com.github.gumtreediff.matchers.Mapping;
3725
import com.github.gumtreediff.matchers.MappingStore;
3826
import com.github.gumtreediff.tree.AbstractTree;
@@ -41,6 +29,11 @@
4129
import gnu.trove.map.TIntObjectMap;
4230
import gnu.trove.map.hash.TIntObjectHashMap;
4331

32+
import java.util.ArrayList;
33+
import java.util.HashSet;
34+
import java.util.List;
35+
import java.util.Set;
36+
4437
public class ActionGenerator {
4538

4639
private ITree origSrc;
@@ -87,7 +80,7 @@ public List<Action> getActions() {
8780
return actions;
8881
}
8982

90-
public void generate() {
83+
public List<Action> generate() {
9184
ITree srcFakeRoot = new AbstractTree.FakeTree(newSrc);
9285
ITree dstFakeRoot = new AbstractTree.FakeTree(origDst);
9386
newSrc.setParent(srcFakeRoot);
@@ -156,8 +149,8 @@ public void generate() {
156149
}
157150
}
158151

159-
160152
//FIXME should ensure isomorphism.
153+
return actions;
161154
}
162155

163156
private void alignChildren(ITree w, ITree x) {

0 commit comments

Comments
 (0)