package com.msgilligan.bitcoinj.json.conversion; import com.fasterxml.jackson.core.JsonGenerator; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.JsonSerializer; import com.fasterxml.jackson.databind.SerializerProvider; import org.bitcoinj.core.Peer; import java.io.IOException; /** * Custom Serialization of bitcoinj Peer class */ public class PeerSerializer extends JsonSerializer<Peer> { @Override public void serialize(Peer value, JsonGenerator jgen, SerializerProvider provider) throws IOException, JsonProcessingException { jgen.writeStartObject(); jgen.writeStringField("socketAddress", value.getAddress().toSocketAddress().toString()); jgen.writeNumberField("remoteVersion", value.getPeerVersionMessage().clientVersion); jgen.writeNumberField("bestHeight", value.getPeerVersionMessage().bestHeight); jgen.writeEndObject(); } }