private final Writer writer;
private final ObjectMapper objectMapper;
- public JsonWriter(final OutputStream writer) {
- this.writer = new BufferedWriter(new OutputStreamWriter(writer, StandardCharsets.UTF_8));
+ public JsonWriter(final OutputStream outputStream) {
+ this.writer = new BufferedWriter(new OutputStreamWriter(outputStream, StandardCharsets.UTF_8));
objectMapper = new ObjectMapper();
objectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.PUBLIC_ONLY);
objectMapper.disable(JsonGenerator.Feature.AUTO_CLOSE_TARGET);
}
- public void write(final Object object) throws IOException {
+ public void write(final Object object) {
try {
- objectMapper.writeValue(writer, object);
- } catch (JsonProcessingException e) {
- // Some issue with json serialization, probably caused by a bug
+ try {
+ objectMapper.writeValue(writer, object);
+ } catch (JsonProcessingException e) {
+ // Some issue with json serialization, probably caused by a bug
+ throw new AssertionError(e);
+ }
+ writer.write(System.lineSeparator());
+ writer.flush();
+ } catch (IOException e) {
throw new AssertionError(e);
}
- writer.write(System.lineSeparator());
- writer.flush();
}
}