![JAR search and dependency download from the Maven repository](/logo.png)
net.osomahe.esk.eventstore.control.EventDeserializer Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of eventstore-kafka Show documentation
Show all versions of eventstore-kafka Show documentation
CDI extension for Java EE 8 application using Apache Kafka as Event Store
The newest version!
package net.osomahe.esk.eventstore.control;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.util.Map;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.json.Json;
import javax.json.JsonObject;
import org.apache.kafka.common.errors.SerializationException;
import org.apache.kafka.common.serialization.Deserializer;
/**
* Deserialize the raw data from Kafka to {@link JsonObject}
*
* @author Antonin Stoklasek
*/
public class EventDeserializer implements Deserializer {
private static final Logger logger = Logger.getLogger(EventDeserializer.class.getName());
@Override
public void configure(Map configs, boolean isKey) {
}
@Override
public JsonObject deserialize(String topic, byte[] data) {
try (ByteArrayInputStream input = new ByteArrayInputStream(data)) {
return Json.createReader(input).readObject();
} catch (IOException e) {
logger.log(Level.WARNING, "Could not deserialize event: " + e.getMessage());
throw new SerializationException("Could not deserialize event", e);
}
}
@Override
public void close() {
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy