diff --git a/server/src/main/java/org/web1/Main.java b/server/src/main/java/org/web1/Main.java index d5488be..a5181cc 100644 --- a/server/src/main/java/org/web1/Main.java +++ b/server/src/main/java/org/web1/Main.java @@ -9,6 +9,7 @@ import org.web1.utils.JsonBuilder; import org.web1.utils.QueryStringToHashmap; import org.web1.utils.ResponseController; +import org.web1.utils.Timer; public class Main { private static final Function> parseQuery = new QueryStringToHashmap(); @@ -16,8 +17,11 @@ public class Main { public static void main(String[] args) { FCGIInterface fastCGI = new FCGIInterface(); + Timer timer = new Timer(); while (fastCGI.FCGIaccept() >= 0) { + timer.start(); + HashMap queryParams = parseQuery.apply( FCGIInterface.request.params.getProperty("QUERY_STRING") ); @@ -26,7 +30,7 @@ public static void main(String[] args) { String result = ResponseController.create( new JsonBuilder() .add("result", checkResult) - .add("elapsedTime", 100) + .add("elapsedTimeNs", timer.stop()) ); System.out.println(result); diff --git a/server/src/main/java/org/web1/checkers/utils/GraphQuarters.java b/server/src/main/java/org/web1/checkers/utils/GraphQuarters.java index b522194..9e7c49c 100644 --- a/server/src/main/java/org/web1/checkers/utils/GraphQuarters.java +++ b/server/src/main/java/org/web1/checkers/utils/GraphQuarters.java @@ -4,5 +4,5 @@ public enum GraphQuarters { FIRST_QUADRANT, SECOND_QUADRANT, THIRD_QUADRANT, - FORTH_QUADRANT, FOURTH_QUADRANT + FOURTH_QUADRANT } diff --git a/server/src/main/java/org/web1/utils/JsonBuilder.java b/server/src/main/java/org/web1/utils/JsonBuilder.java index 44c805f..c87b3a2 100644 --- a/server/src/main/java/org/web1/utils/JsonBuilder.java +++ b/server/src/main/java/org/web1/utils/JsonBuilder.java @@ -11,11 +11,13 @@ public JsonBuilder add(String key, T value) { } public String build() { + if (data.isEmpty()) return "{}"; + StringBuilder jsonString = new StringBuilder("{\n"); for (String key : data.keySet()) - jsonString.append(String.format("\t%s: %s,\n", key, data.get(key))); + jsonString.append(String.format("\t\"%s\": %s,\n", key, data.get(key))); - return jsonString + "}"; + return jsonString.substring(0, jsonString.length() - 2) + "\n}"; } } diff --git a/server/src/main/java/org/web1/utils/ResponseController.java b/server/src/main/java/org/web1/utils/ResponseController.java index 00f314c..8032608 100644 --- a/server/src/main/java/org/web1/utils/ResponseController.java +++ b/server/src/main/java/org/web1/utils/ResponseController.java @@ -6,9 +6,8 @@ public class ResponseController { Connection: keep-alive Content-Type: application/json Content-Length: %d - \s - %s - \s"""; + + %s"""; public static String create(JsonBuilder jsonBuilder) { String response = jsonBuilder.build(); return String.format(BASE_RESPONSE, response.length(), response); diff --git a/server/src/main/java/org/web1/utils/Timer.java b/server/src/main/java/org/web1/utils/Timer.java new file mode 100644 index 0000000..48adcff --- /dev/null +++ b/server/src/main/java/org/web1/utils/Timer.java @@ -0,0 +1,11 @@ +package org.web1.utils; + +public class Timer { + long startTime; + public void start() { + this.startTime = System.nanoTime(); + } + public long stop() { + return System.nanoTime() - this.startTime; + } +}