diff --git a/src/main/java/br/ufrgs/inf/prosoft/trace/reader/TraceReader.java b/src/main/java/br/ufrgs/inf/prosoft/trace/reader/TraceReader.java
index 8830306..689e32a 100644
--- a/src/main/java/br/ufrgs/inf/prosoft/trace/reader/TraceReader.java
+++ b/src/main/java/br/ufrgs/inf/prosoft/trace/reader/TraceReader.java
@@ -33,7 +33,8 @@ import java.util.stream.Stream;
*/
public class TraceReader {
- private static final Logger logger = Logger.getLogger(TraceReader.class.getName());
+ private static final boolean TRACER_VERBOSE = System.getenv("TRACER_VERBOSE") != null && System.getenv("TRACER_VERBOSE").equals("true");
+ private static final Logger LOGGER = Logger.getLogger(TraceReader.class.getName());
public static List<Trace> partiallyParseFile(String path) {
Traces.PATH = path;
@@ -74,7 +75,7 @@ public class TraceReader {
private static List<Trace> parseFile(String path, Mode mode) {
List<Trace> traces = new ArrayList<>();
try {
- logger.log(Level.INFO, "Parsing {0} traces", getLineCount(path));
+ LOGGER.log(Level.INFO, "Parsing {0} traces", getLineCount(path));
try (Stream<String> lines = Files.lines(Paths.get(path))) {
Gson gson = new GsonBuilder().setLenient().create();
lines.forEach(new Consumer<String>() {
@@ -116,11 +117,7 @@ public class TraceReader {
break;
}
traces.add(trace);
- String verbose = System.getenv("TRACER_VERBOSE");
- if (verbose == null) {
- verbose = "false";
- }
- if (verbose.equals("true")) {
+ if (TRACER_VERBOSE) {
System.out.print(".");
System.out.flush();
if (index != 0 && index % 100 == 0) {
@@ -131,7 +128,7 @@ public class TraceReader {
if (line.length() > 200) {
line = line.substring(0, 200);
}
- logger.log(Level.INFO, "Malformed Trace {0}: {1}", new java.lang.Object[]{index, line});
+ LOGGER.log(Level.INFO, "Malformed Trace {0}: {1}", new java.lang.Object[]{index, line});
} finally {
index++;
}
@@ -140,9 +137,8 @@ public class TraceReader {
System.out.println();
}
} catch (IOException ex) {
- logger.log(Level.SEVERE, null, ex);
+ LOGGER.log(Level.SEVERE, null, ex);
}
return traces;
}
-
}
diff --git a/src/main/java/br/ufrgs/inf/prosoft/trace/tools/DiffTraces.java b/src/main/java/br/ufrgs/inf/prosoft/trace/tools/DiffTraces.java
index ae14eac..6815f4b 100644
--- a/src/main/java/br/ufrgs/inf/prosoft/trace/tools/DiffTraces.java
+++ b/src/main/java/br/ufrgs/inf/prosoft/trace/tools/DiffTraces.java
@@ -33,28 +33,25 @@ public class DiffTraces {
Iterator<String> iteratorSecond = linesSecond.iterator();
int index = 0;
Gson gson = new Gson();
- while (true) {
+ while (iteratorFirst.hasNext() && iteratorSecond.hasNext()) {
String lineFirst = iteratorFirst.next();
String lineSecond = iteratorSecond.next();
- if (lineFirst == null || lineSecond == null) {
- break;
- }
try {
Trace traceFirst = gson.fromJson(lineFirst, TraceConcrete.class);
Trace traceSecond = gson.fromJson(lineSecond, TraceConcrete.class);
if (!traceFirst.getName().equals(traceSecond.getName())) {
- System.out.println(index + " < " + traceFirst.getName());
- System.out.println(index + " > " + traceSecond.getName());
+ System.out.println(index + " n < " + traceFirst.getName());
+ System.out.println(index + " n > " + traceSecond.getName());
continue;
}
if (!traceFirst.getParameters().toString().equals(traceSecond.getParameters().toString())) {
- System.out.println(index + " < " + traceFirst.getParameters().toString());
- System.out.println(index + " > " + traceSecond.getParameters().toString());
+ System.out.println(index + " p < " + truncate(traceFirst.getParameters().toString()));
+ System.out.println(index + " p > " + truncate(traceSecond.getParameters().toString()));
continue;
}
if (!traceFirst.getReturn().toString().equals(traceSecond.getReturn().toString())) {
- System.out.println(index + " < " + traceFirst.getReturn().toString());
- System.out.println(index + " > " + traceSecond.getReturn().toString());
+ System.out.println(index + " r < " + truncate(traceFirst.getReturn().toString()));
+ System.out.println(index + " r > " + truncate(traceSecond.getReturn().toString()));
continue;
}
System.out.print(".");
@@ -63,9 +60,7 @@ public class DiffTraces {
System.out.println();
}
} catch (JsonSyntaxException e) {
- if (lineFirst.length() > 2000) {
- lineFirst = lineFirst.substring(0, 2000);
- }
+ truncate(lineFirst);
logger.log(Level.INFO, "Malformed Trace {0}: {1}", new java.lang.Object[]{index, lineFirst});
} finally {
index++;
@@ -75,4 +70,8 @@ public class DiffTraces {
logger.log(Level.SEVERE, null, ex);
}
}
+
+ private static String truncate(String string) {
+ return string.length() > 2000 ? string.substring(0, 2000) : string;
+ }
}
diff --git a/src/main/java/br/ufrgs/inf/prosoft/trace/tools/Main.java b/src/main/java/br/ufrgs/inf/prosoft/trace/tools/Main.java
index 2616ed0..337257d 100644
--- a/src/main/java/br/ufrgs/inf/prosoft/trace/tools/Main.java
+++ b/src/main/java/br/ufrgs/inf/prosoft/trace/tools/Main.java
@@ -27,8 +27,8 @@ public class Main {
System.exit(1);
}
tool = args[0];
+ firstPath = args[1];
if (tool.equals("check")) {
- firstPath = args[1];
CheckTraces.check(firstPath);
} else {
if (args.length < 3) {