diff --git a/bin/main/hgu/csee/isel/alinew/szz/AGSZZ.class b/bin/main/hgu/csee/isel/alinew/szz/AGSZZ.class index 87c0dae..7a14799 100644 Binary files a/bin/main/hgu/csee/isel/alinew/szz/AGSZZ.class and b/bin/main/hgu/csee/isel/alinew/szz/AGSZZ.class differ diff --git a/bin/main/hgu/csee/isel/alinew/szz/AGSZZRunner.class b/bin/main/hgu/csee/isel/alinew/szz/AGSZZRunner.class index 7eb6759..83a6436 100644 Binary files a/bin/main/hgu/csee/isel/alinew/szz/AGSZZRunner.class and b/bin/main/hgu/csee/isel/alinew/szz/AGSZZRunner.class differ diff --git a/bin/main/hgu/csee/isel/alinew/szz/graph/AnnotationGraphBuilderThread.class b/bin/main/hgu/csee/isel/alinew/szz/graph/AnnotationGraphBuilderThread.class index 124886d..2d58ded 100644 Binary files a/bin/main/hgu/csee/isel/alinew/szz/graph/AnnotationGraphBuilderThread.class and b/bin/main/hgu/csee/isel/alinew/szz/graph/AnnotationGraphBuilderThread.class differ diff --git a/bin/main/hgu/csee/isel/alinew/szz/model/Line.class b/bin/main/hgu/csee/isel/alinew/szz/model/Line.class index 5a45421..9c40c6b 100644 Binary files a/bin/main/hgu/csee/isel/alinew/szz/model/Line.class and b/bin/main/hgu/csee/isel/alinew/szz/model/Line.class differ diff --git a/bin/main/hgu/csee/isel/alinew/szz/trace/Tracer.class b/bin/main/hgu/csee/isel/alinew/szz/trace/Tracer.class index 1a78263..0ea22fb 100644 Binary files a/bin/main/hgu/csee/isel/alinew/szz/trace/Tracer.class and b/bin/main/hgu/csee/isel/alinew/szz/trace/Tracer.class differ diff --git a/bin/main/hgu/csee/isel/alinew/szz/util/GitUtils.class b/bin/main/hgu/csee/isel/alinew/szz/util/GitUtils.class index 8ffbeb7..5686518 100644 Binary files a/bin/main/hgu/csee/isel/alinew/szz/util/GitUtils.class and b/bin/main/hgu/csee/isel/alinew/szz/util/GitUtils.class differ diff --git a/src/main/java/hgu/csee/isel/alinew/szz/graph/AnnotationGraphBuilderThread.java b/src/main/java/hgu/csee/isel/alinew/szz/graph/AnnotationGraphBuilderThread.java index 3602ea5..cddcaa1 100644 --- a/src/main/java/hgu/csee/isel/alinew/szz/graph/AnnotationGraphBuilderThread.java +++ b/src/main/java/hgu/csee/isel/alinew/szz/graph/AnnotationGraphBuilderThread.java @@ -91,7 +91,7 @@ private AnnotationGraphModel buildPartitionedAnnotationGraph(Repository repo, Re break; RevCommit parentRev = revs.get(revs.indexOf(childRev) + 1); - + String parentContent = Utils.removeComments(GitUtils.fetchBlob(repo, parentRev, path)).trim(); String childContent = Utils.removeComments(GitUtils.fetchBlob(repo, childRev, path)).trim(); @@ -100,6 +100,7 @@ private AnnotationGraphModel buildPartitionedAnnotationGraph(Repository repo, Re System.out.println("\tparent rev : " + parentRev.getName()); System.out.println("\tchild rev : " + childRev.getName()); } + // get the parent line list from content configureLineList(parentLineList, path, parentRev, parentContent); diff --git a/src/main/java/hgu/csee/isel/alinew/szz/model/Line.java b/src/main/java/hgu/csee/isel/alinew/szz/model/Line.java index 2e83c20..4c23349 100644 --- a/src/main/java/hgu/csee/isel/alinew/szz/model/Line.java +++ b/src/main/java/hgu/csee/isel/alinew/szz/model/Line.java @@ -10,13 +10,14 @@ public class Line { private LineType lineType; private List ancestors; private boolean isFormatChange; + private boolean isInitialCommit; private boolean isWithinHunk; private String commiter; private String author; private String commitDate; public Line(String path, String rev, String content, int idx, LineType lineType, List ancestors, - boolean isFormatChange, boolean isWithinHunk, String commiter, String author, String commitDate) { + boolean isFormatChange,boolean isWithinHunk, String commiter, String author, String commitDate) { super(); this.path = path; this.rev = rev; diff --git a/src/main/java/hgu/csee/isel/alinew/szz/trace/Tracer.java b/src/main/java/hgu/csee/isel/alinew/szz/trace/Tracer.java index ef98e2f..7288394 100644 --- a/src/main/java/hgu/csee/isel/alinew/szz/trace/Tracer.java +++ b/src/main/java/hgu/csee/isel/alinew/szz/trace/Tracer.java @@ -159,7 +159,10 @@ public List collectBILines(Repository repo, List BFCList, An if (0 <= begin && 0 <= end) { for (int i = begin; i < end; i++) { Line line = linesToTrace.get(i); - +// if(line.getAncestors().size() == 0) { +// BILines.add(line); +// continue; +// } if(analysis) { traceWithAnalysis(line, BFC.getName()); } else { @@ -184,6 +187,13 @@ public List collectBILines(Repository repo, List BFCList, An return bicList; } public void trace(Line line) { + + if(line.getAncestors().size() == 0) { + if (!Utils.isWhitespace(line.getContent()) && line.isWithinHunk()) { + BILines.add(line); + } + } + for (Line ancestor : line.getAncestors()) { // Lines that are not white space, not format change, and within hunk are BI Lines. if (!Utils.isWhitespace(ancestor.getContent())) { @@ -194,8 +204,11 @@ public void trace(Line line) { } } } + } + + public void traceWithAnalysis(Line line, String BFC) { for (Line ancestor : line.getAncestors()) { // Lines that are not white space, not format change, and within hunk are BI Lines.