use of com.facebook.airlift.json.JsonObjectMapperProvider in project presto by prestodb.
the class TestAllOrNoneValueSet method testJsonSerialization.
@Test
public void testJsonSerialization() throws Exception {
TestingTypeManager typeManager = new TestingTypeManager();
ObjectMapper mapper = new JsonObjectMapperProvider().get().registerModule(new SimpleModule().addDeserializer(Type.class, new TestingTypeDeserializer(typeManager)));
AllOrNoneValueSet all = AllOrNoneValueSet.all(HYPER_LOG_LOG);
assertEquals(all, mapper.readValue(mapper.writeValueAsString(all), AllOrNoneValueSet.class));
AllOrNoneValueSet none = AllOrNoneValueSet.none(HYPER_LOG_LOG);
assertEquals(none, mapper.readValue(mapper.writeValueAsString(none), AllOrNoneValueSet.class));
}
use of com.facebook.airlift.json.JsonObjectMapperProvider in project presto by prestodb.
the class TestSortedRangeSet method testJsonSerialization.
@Test
public void testJsonSerialization() throws Exception {
TestingTypeManager typeManager = new TestingTypeManager();
TestingBlockEncodingSerde blockEncodingSerde = new TestingBlockEncodingSerde();
ObjectMapper mapper = new JsonObjectMapperProvider().get().registerModule(new SimpleModule().addDeserializer(Type.class, new TestingTypeDeserializer(typeManager)).addSerializer(Block.class, new TestingBlockJsonSerde.Serializer(blockEncodingSerde)).addDeserializer(Block.class, new TestingBlockJsonSerde.Deserializer(blockEncodingSerde)));
SortedRangeSet set = SortedRangeSet.all(BIGINT);
assertEquals(set, mapper.readValue(mapper.writeValueAsString(set), SortedRangeSet.class));
set = SortedRangeSet.none(DOUBLE);
assertEquals(set, mapper.readValue(mapper.writeValueAsString(set), SortedRangeSet.class));
set = SortedRangeSet.of(VARCHAR, utf8Slice("abc"));
assertEquals(set, mapper.readValue(mapper.writeValueAsString(set), SortedRangeSet.class));
set = SortedRangeSet.of(Range.equal(BOOLEAN, true), Range.equal(BOOLEAN, false));
assertEquals(set, mapper.readValue(mapper.writeValueAsString(set), SortedRangeSet.class));
}
use of com.facebook.airlift.json.JsonObjectMapperProvider in project presto by prestodb.
the class TestDomain method testJsonSerialization.
@Test
public void testJsonSerialization() throws Exception {
TestingTypeManager typeManager = new TestingTypeManager();
TestingBlockEncodingSerde blockEncodingSerde = new TestingBlockEncodingSerde();
ObjectMapper mapper = new JsonObjectMapperProvider().get().registerModule(new SimpleModule().addDeserializer(Type.class, new TestingTypeDeserializer(typeManager)).addSerializer(Block.class, new TestingBlockJsonSerde.Serializer(blockEncodingSerde)).addDeserializer(Block.class, new TestingBlockJsonSerde.Deserializer(blockEncodingSerde)));
Domain domain = Domain.all(BIGINT);
assertEquals(domain, mapper.readValue(mapper.writeValueAsString(domain), Domain.class));
domain = Domain.none(DOUBLE);
assertEquals(domain, mapper.readValue(mapper.writeValueAsString(domain), Domain.class));
domain = Domain.notNull(BOOLEAN);
assertEquals(domain, mapper.readValue(mapper.writeValueAsString(domain), Domain.class));
domain = Domain.notNull(HYPER_LOG_LOG);
assertEquals(domain, mapper.readValue(mapper.writeValueAsString(domain), Domain.class));
domain = Domain.onlyNull(VARCHAR);
assertEquals(domain, mapper.readValue(mapper.writeValueAsString(domain), Domain.class));
domain = Domain.onlyNull(HYPER_LOG_LOG);
assertEquals(domain, mapper.readValue(mapper.writeValueAsString(domain), Domain.class));
domain = Domain.singleValue(BIGINT, Long.MIN_VALUE);
assertEquals(domain, mapper.readValue(mapper.writeValueAsString(domain), Domain.class));
domain = Domain.singleValue(ID, Long.MIN_VALUE);
assertEquals(domain, mapper.readValue(mapper.writeValueAsString(domain), Domain.class));
domain = Domain.create(ValueSet.ofRanges(Range.lessThan(BIGINT, 0L), Range.equal(BIGINT, 1L), Range.range(BIGINT, 2L, true, 3L, true)), true);
assertEquals(domain, mapper.readValue(mapper.writeValueAsString(domain), Domain.class));
}
use of com.facebook.airlift.json.JsonObjectMapperProvider in project presto by prestodb.
the class TestLocalProperties method testJsonSerialization.
@Test
public void testJsonSerialization() throws Exception {
ObjectMapper mapper = new JsonObjectMapperProvider().get().registerModule(new SimpleModule().addDeserializer(ColumnHandle.class, new JsonDeserializer<ColumnHandle>() {
@Override
public ColumnHandle deserialize(JsonParser jsonParser, DeserializationContext deserializationContext) throws IOException {
return new JsonObjectMapperProvider().get().readValue(jsonParser, TestingColumnHandle.class);
}
}));
TestingColumnHandle columnHandle = new TestingColumnHandle("a");
LocalProperty<ColumnHandle> property1 = new ConstantProperty<>(columnHandle);
assertEquals(property1, mapper.readValue(mapper.writeValueAsString(property1), new TypeReference<LocalProperty<ColumnHandle>>() {
}));
LocalProperty<ColumnHandle> property2 = new SortingProperty<>(columnHandle, SortOrder.ASC_NULLS_FIRST);
assertEquals(property2, mapper.readValue(mapper.writeValueAsString(property2), new TypeReference<LocalProperty<ColumnHandle>>() {
}));
LocalProperty<ColumnHandle> property3 = new GroupingProperty<>(ImmutableList.of(columnHandle));
assertEquals(property3, mapper.readValue(mapper.writeValueAsString(property3), new TypeReference<LocalProperty<ColumnHandle>>() {
}));
}
use of com.facebook.airlift.json.JsonObjectMapperProvider in project presto by prestodb.
the class ClusterSizeFetcher method fetchClusterSize.
private int fetchClusterSize() {
Request request = prepareGet().setUri(nodeResourceUri).setHeader(CONTENT_TYPE, APPLICATION_JSON).build();
StringResponse response = httpClient.execute(request, createStringResponseHandler());
checkState(response.getStatusCode() == OK.getStatusCode(), "Invalid response: %s %s", response.getStatusCode(), response.getStatusMessage());
List<Map<String, Object>> values;
try {
values = new JsonObjectMapperProvider().get().readValue(response.getBody(), new TypeReference<List<Map<String, Object>>>() {
});
} catch (IOException e) {
throw new UncheckedIOException(e);
}
return values.size();
}
Aggregations