new version
This commit is contained in:
@@ -0,0 +1,210 @@
|
||||
diff --git a/.gitignore b/.gitignore
|
||||
index 24cae48..27c7ba3 100644
|
||||
--- a/.gitignore
|
||||
+++ b/.gitignore
|
||||
@@ -14,6 +14,7 @@ GumTreeInput/
|
||||
GumTreeInput1/
|
||||
GumTreeOutput1/
|
||||
GumTreeResults/
|
||||
+.idea/*
|
||||
|
||||
*/Test.java
|
||||
*TestParser.java
|
||||
diff --git a/src/main/java/edu/lu/uni/serval/FixPatternParser/violations/FixedViolationHunkParser.java b/src/main/java/edu/lu/uni/serval/FixPatternParser/violations/FixedViolationHunkParser.java
|
||||
index 4d885ea..eb1eca1 100644
|
||||
--- a/src/main/java/edu/lu/uni/serval/FixPatternParser/violations/FixedViolationHunkParser.java
|
||||
+++ b/src/main/java/edu/lu/uni/serval/FixPatternParser/violations/FixedViolationHunkParser.java
|
||||
@@ -1,5 +1,9 @@
|
||||
package edu.lu.uni.serval.FixPatternParser.violations;
|
||||
|
||||
+import com.github.gumtreediff.actions.model.Delete;
|
||||
+import com.github.gumtreediff.actions.model.Insert;
|
||||
+import com.github.gumtreediff.actions.model.Move;
|
||||
+import com.github.gumtreediff.actions.model.Update;
|
||||
import edu.lu.uni.serval.gumtree.regroup.HierarchicalActionSet;
|
||||
|
||||
import java.io.*;
|
||||
@@ -30,27 +34,29 @@ public class FixedViolationHunkParser extends FixedViolationParser {
|
||||
public void parseFixPatterns(File prevFile, File revFile, File diffentryFile,String project) {
|
||||
List<HierarchicalActionSet> actionSets = parseChangedSourceCodeWithGumTree2(prevFile, revFile);
|
||||
if (actionSets.size() != 0) {
|
||||
-// boolean isUpdate =
|
||||
-// actionSets.stream().allMatch(p -> p.getAction() instanceof Update);
|
||||
-// boolean isInsert =
|
||||
-// actionSets.stream().allMatch(p -> p.getAction() instanceof Insert);
|
||||
-// boolean isDelete =
|
||||
-// actionSets.stream().allMatch(p -> p.getAction() instanceof Delete);
|
||||
-// boolean isMove =
|
||||
-// actionSets.stream().allMatch(p -> p.getAction() instanceof Move);
|
||||
int hunkSet = 0;
|
||||
// if (isUpdate || isInsert || isDelete || isMove) {
|
||||
for (HierarchicalActionSet actionSet : actionSets) {
|
||||
- String folder = "/ALL/";
|
||||
-// if (isUpdate) {
|
||||
-// folder = "/UPD/";
|
||||
-// } else if (isDelete) {
|
||||
-// folder = "/DEL/";
|
||||
-// } else if (isInsert) {
|
||||
-// folder = "/INS/";
|
||||
-// } else if (isMove) {
|
||||
-// folder = "/MOV/";
|
||||
-// }
|
||||
+ boolean isUpdate =
|
||||
+ actionSets.stream().allMatch(p -> p.getAction() instanceof Update);
|
||||
+ boolean isInsert =
|
||||
+ actionSets.stream().allMatch(p -> p.getAction() instanceof Insert);
|
||||
+ boolean isDelete =
|
||||
+ actionSets.stream().allMatch(p -> p.getAction() instanceof Delete);
|
||||
+ boolean isMove =
|
||||
+ actionSets.stream().allMatch(p -> p.getAction() instanceof Move);
|
||||
+ String folder = "/MIX/";
|
||||
+ if (isUpdate) {
|
||||
+ folder = "/UPD/";
|
||||
+ } else if (isDelete) {
|
||||
+ folder = "/DEL/";
|
||||
+ } else if (isInsert) {
|
||||
+ folder = "/INS/";
|
||||
+ } else if (isMove) {
|
||||
+ folder = "/MOV/";
|
||||
+ } else{
|
||||
+ folder = "/MIX/";
|
||||
+ }
|
||||
|
||||
|
||||
FileOutputStream f = null;
|
||||
diff --git a/src/main/java/edu/lu/uni/serval/MultipleThreadsParser/ParseFixPatternWorker.java b/src/main/java/edu/lu/uni/serval/MultipleThreadsParser/ParseFixPatternWorker.java
|
||||
index 3084dbe..ffe1b01 100644
|
||||
--- a/src/main/java/edu/lu/uni/serval/MultipleThreadsParser/ParseFixPatternWorker.java
|
||||
+++ b/src/main/java/edu/lu/uni/serval/MultipleThreadsParser/ParseFixPatternWorker.java
|
||||
@@ -61,7 +61,7 @@ public class ParseFixPatternWorker extends UntypedActor {
|
||||
int testInfos = 0;
|
||||
int timeouts = 0;
|
||||
StringBuilder builder = new StringBuilder();
|
||||
-
|
||||
+// log.info("Work queue size " + files.size());
|
||||
for (MessageFile msgFile : files) {
|
||||
File revFile = msgFile.getRevFile();
|
||||
File prevFile = msgFile.getPrevFile();
|
||||
diff --git a/src/main/java/edu/lu/uni/serval/config/Configuration.java b/src/main/java/edu/lu/uni/serval/config/Configuration.java
|
||||
index 4421c72..7162180 100644
|
||||
--- a/src/main/java/edu/lu/uni/serval/config/Configuration.java
|
||||
+++ b/src/main/java/edu/lu/uni/serval/config/Configuration.java
|
||||
@@ -2,6 +2,6 @@ package edu.lu.uni.serval.config;
|
||||
|
||||
public class Configuration {
|
||||
|
||||
- public static final long SECONDS_TO_WAIT = 900L;
|
||||
+ public static final long SECONDS_TO_WAIT = 90000L;
|
||||
|
||||
}
|
||||
diff --git a/src/main/java/edu/lu/uni/serval/fixminer/EnhancedASTDiff.java b/src/main/java/edu/lu/uni/serval/fixminer/EnhancedASTDiff.java
|
||||
index 43895e0..066b07d 100644
|
||||
--- a/src/main/java/edu/lu/uni/serval/fixminer/EnhancedASTDiff.java
|
||||
+++ b/src/main/java/edu/lu/uni/serval/fixminer/EnhancedASTDiff.java
|
||||
@@ -5,7 +5,7 @@ import akka.actor.ActorSystem;
|
||||
import edu.lu.uni.serval.MultipleThreadsParser.MessageFile;
|
||||
import edu.lu.uni.serval.MultipleThreadsParser.ParseFixPatternActor;
|
||||
import edu.lu.uni.serval.MultipleThreadsParser.WorkMessage;
|
||||
-import edu.lu.uni.serval.utils.FileHelper;
|
||||
+import edu.lu.uni.serval.FixPattern.utils.FileHelper;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
@@ -13,6 +13,7 @@ import java.io.File;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
+import java.util.Locale;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
@@ -31,6 +32,7 @@ public class EnhancedASTDiff {
|
||||
Stream<File> stream = Arrays.stream(listOfFiles);
|
||||
List<File> folders = stream
|
||||
.filter(x -> !x.getName().startsWith("."))
|
||||
+// .filter(x -> x.getName().startsWith("JDT"))
|
||||
.collect(Collectors.toList());
|
||||
|
||||
|
||||
@@ -49,11 +51,11 @@ public class EnhancedASTDiff {
|
||||
FileHelper.createDirectory(GUM_TREE_OUTPUT + "/INS");
|
||||
FileHelper.createDirectory(GUM_TREE_OUTPUT + "/DEL");
|
||||
FileHelper.createDirectory(GUM_TREE_OUTPUT + "/MOV");
|
||||
- FileHelper.createDirectory(GUM_TREE_OUTPUT + "/ALL");
|
||||
+ FileHelper.createDirectory(GUM_TREE_OUTPUT + "/MIX");
|
||||
|
||||
|
||||
int a = 0;
|
||||
-
|
||||
+ log.info("Work queue size " + msgFiles.size());
|
||||
ActorSystem system = null;
|
||||
ActorRef parsingActor = null;
|
||||
final WorkMessage msg = new WorkMessage(0, msgFiles);
|
||||
@@ -80,6 +82,11 @@ public class EnhancedASTDiff {
|
||||
if (revFiles.length >= 0) {
|
||||
for (File revFile : revFiles) {
|
||||
String fileName = revFile.getName();
|
||||
+ if(fileName.toLowerCase(Locale.ENGLISH).contains("test")){
|
||||
+ log.info(fileName);
|
||||
+ continue;
|
||||
+ }
|
||||
+
|
||||
File prevFile = new File(gumTreeInput + "prevFiles/prev_" + fileName);// previous file
|
||||
fileName = fileName.replace(".java", ".txt");
|
||||
File diffentryFile = new File(gumTreeInput + "DiffEntries/" + fileName); // DiffEntry file
|
||||
diff --git a/src/main/java/edu/lu/uni/serval/fixminer/TestHunkParserSingleFile.java b/src/main/java/edu/lu/uni/serval/fixminer/TestHunkParserSingleFile.java
|
||||
index 44575a7..88f36c6 100644
|
||||
--- a/src/main/java/edu/lu/uni/serval/fixminer/TestHunkParserSingleFile.java
|
||||
+++ b/src/main/java/edu/lu/uni/serval/fixminer/TestHunkParserSingleFile.java
|
||||
@@ -5,7 +5,7 @@ import akka.actor.ActorSystem;
|
||||
import edu.lu.uni.serval.MultipleThreadsParser.MessageFile;
|
||||
import edu.lu.uni.serval.MultipleThreadsParser.ParseFixPatternActor;
|
||||
import edu.lu.uni.serval.MultipleThreadsParser.WorkMessage;
|
||||
-import edu.lu.uni.serval.utils.FileHelper;
|
||||
+import edu.lu.uni.serval.FixPattern.utils.FileHelper;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
diff --git a/src/main/java/edu/lu/uni/serval/fixminer/cluster/CallShell.java b/src/main/java/edu/lu/uni/serval/fixminer/cluster/CallShell.java
|
||||
index 9c1d05d..3dceda0 100644
|
||||
--- a/src/main/java/edu/lu/uni/serval/fixminer/cluster/CallShell.java
|
||||
+++ b/src/main/java/edu/lu/uni/serval/fixminer/cluster/CallShell.java
|
||||
@@ -37,7 +37,7 @@ public class CallShell {
|
||||
}
|
||||
// Thread.sleep(Integer.valueOf(serverWait));
|
||||
|
||||
- String cmd = "redis-cli -p %s ping";
|
||||
+ String cmd = "bash source activate redisEnv && redis-cli -p %s ping";
|
||||
String cmd1 = String.format(cmd,Integer.valueOf(port));
|
||||
runPing(cmd1);
|
||||
|
||||
diff --git a/src/main/java/edu/lu/uni/serval/fixminer/cluster/StoreEDiffInCache.java b/src/main/java/edu/lu/uni/serval/fixminer/cluster/StoreEDiffInCache.java
|
||||
index 39bba51..8657dce 100644
|
||||
--- a/src/main/java/edu/lu/uni/serval/fixminer/cluster/StoreEDiffInCache.java
|
||||
+++ b/src/main/java/edu/lu/uni/serval/fixminer/cluster/StoreEDiffInCache.java
|
||||
@@ -52,13 +52,15 @@ public class StoreEDiffInCache {
|
||||
.filter(x -> x.getName().startsWith("UPD") ||
|
||||
x.getName().startsWith("INS") ||
|
||||
x.getName().startsWith("DEL") ||
|
||||
+ x.getName().startsWith("MIX") ||
|
||||
x.getName().startsWith("MOV"))
|
||||
.collect(Collectors.toList());
|
||||
File[] files1 = fs.get(0).listFiles();
|
||||
File[] files2 = fs.get(1).listFiles();
|
||||
File[] files3 = fs.get(2).listFiles();
|
||||
File[] files4 = fs.get(3).listFiles();
|
||||
- dumps = Stream.of(files1, files2, files3,files4).flatMap(Stream::of).toArray(File[]::new);
|
||||
+ File[] files5 = fs.get(4).listFiles();
|
||||
+ dumps = Stream.of(files1, files2, files3,files4,files5).flatMap(Stream::of).toArray(File[]::new);
|
||||
}else{
|
||||
fs = fileStream
|
||||
.filter(x -> x.getName().startsWith(operation))
|
||||
@@ -70,7 +72,7 @@ public class StoreEDiffInCache {
|
||||
for (File f : dumps) {
|
||||
String name = f.getName();
|
||||
|
||||
- String key = pjName + "/"+ operation+"/" + name;
|
||||
+ String key = pjName + f.getPath().replace(pj.getPath(),"");
|
||||
String result = key +","+f.getPath();
|
||||
workList.add(result);
|
||||
}
|
||||
Reference in New Issue
Block a user