public static String encodeRecordToJson()

in src/main/java/com/epam/eco/commons/avro/AvroUtils.java [102:126]


    public static String encodeRecordToJson(GenericRecord record) {
        Validate.notNull(record, "Record is null");

        ByteArrayOutputStream out = null;
        try {
            out = new ByteArrayOutputStream();

            Encoder encoder = EncoderFactory.get().jsonEncoder(record.getSchema(), out);
            DatumWriter<Object> writer;
            if (record instanceof SpecificRecord) {
                writer = new SpecificDatumWriter<>(record.getSchema());
            } else {
                writer = new GenericDatumWriter<>(record.getSchema());
            }

            writer.write(record, encoder);
            encoder.flush();

            return new String(out.toByteArray(), StandardCharsets.UTF_8);
        } catch (IOException ioe) {
            throw new RuntimeException(ioe);
        } finally {
            IOUtils.closeQuietly(out);
        }
    }