mirror of
https://github.com/nosqlbench/nosqlbench.git
synced 2025-02-25 18:55:28 -06:00
gson
This commit is contained in:
parent
68b7f758f5
commit
179bc7cb9d
@ -42,10 +42,9 @@
|
|||||||
<scope>compile</scope>
|
<scope>compile</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.fasterxml.jackson.core</groupId>
|
<groupId>com.google.code.gson</groupId>
|
||||||
<artifactId>jackson-core</artifactId>
|
<artifactId>gson</artifactId>
|
||||||
<version>2.15.2</version>
|
<version>2.10.1</version>
|
||||||
<scope>compile</scope>
|
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
@ -16,15 +16,16 @@
|
|||||||
|
|
||||||
package io.nosqlbench.adapter.http.core;
|
package io.nosqlbench.adapter.http.core;
|
||||||
|
|
||||||
import com.fasterxml.jackson.core.JsonParser;
|
|
||||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
|
||||||
import com.fasterxml.jackson.databind.JsonNode;
|
|
||||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
|
||||||
import io.nosqlbench.adapter.http.errors.InvalidResponseBodyException;
|
import io.nosqlbench.adapter.http.errors.InvalidResponseBodyException;
|
||||||
import io.nosqlbench.adapter.http.errors.InvalidStatusCodeException;
|
import io.nosqlbench.adapter.http.errors.InvalidStatusCodeException;
|
||||||
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.CycleOp;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.CycleOp;
|
||||||
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.RunnableOp;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.RunnableOp;
|
||||||
import org.apache.logging.log4j.core.tools.picocli.CommandLine;
|
import org.apache.logging.log4j.core.tools.picocli.CommandLine;
|
||||||
|
import com.google.gson.JsonArray;
|
||||||
|
import com.google.gson.JsonElement;
|
||||||
|
import com.google.gson.JsonObject;
|
||||||
|
import com.google.gson.JsonParser;
|
||||||
|
|
||||||
|
|
||||||
import java.net.http.HttpClient;
|
import java.net.http.HttpClient;
|
||||||
import java.net.http.HttpRequest;
|
import java.net.http.HttpRequest;
|
||||||
@ -95,25 +96,24 @@ public class HttpOp implements CycleOp {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
ObjectMapper mapper = new ObjectMapper();
|
JsonParser parser = new JsonParser();
|
||||||
JsonNode json = mapper.readTree(response.body());
|
JsonObject json = parser.parse(response.body()).getAsJsonObject();
|
||||||
|
|
||||||
if (json.get("hits") == null) {
|
if (!json.has("hits") || !json.getAsJsonObject("hits").has("hits")) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
Iterable<JsonNode> hits = json.get("hits").get("hits");
|
JsonArray hits = json.getAsJsonObject("hits").getAsJsonArray("hits");
|
||||||
|
|
||||||
// get length from hits iterator
|
|
||||||
int count = (int)StreamSupport.stream(Spliterators.spliteratorUnknownSize(hits.iterator(), 0), false).count();
|
|
||||||
|
|
||||||
|
int count = hits.size();
|
||||||
int[] keys = new int[count];
|
int[] keys = new int[count];
|
||||||
int i=0;
|
int i = 0;
|
||||||
for (JsonNode hit : hits) {
|
for (JsonElement element : hits) {
|
||||||
keys[i]= hit.get("_source").get("key").asInt();
|
JsonObject hit = element.getAsJsonObject();
|
||||||
|
keys[i] = hit.getAsJsonObject("_source").get("key").getAsInt();
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
return keys;
|
return keys;
|
||||||
} catch (JsonProcessingException e) {
|
} catch (Exception e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user