package com.sumologic.client; import java.io.IOException; import com.amazonaws.services.kinesis.model.Record; import com.sumologic.client.implementations.SumologicTransformer; import com.sumologic.client.model.SimpleKinesisMessageModel; /** * A custom transfomer for {@link SimpleKinesisMessageModel} records in JSON format. The output is in a format * usable for insertions to Sumologic. */ public class DefaultKinesisMessageModelSumologicTransformer implements SumologicTransformer<SimpleKinesisMessageModel> { /** * Creates a new KinesisMessageModelSumologicTransformer. */ public DefaultKinesisMessageModelSumologicTransformer() { super(); } @Override public String fromClass(SimpleKinesisMessageModel message) { return message.toString(); } @Override public SimpleKinesisMessageModel toClass(Record record) throws IOException { byte[] decodedRecord = record.getData().array(); String stringifiedRecord = new String(decodedRecord); return new SimpleKinesisMessageModel(stringifiedRecord); } }