package com.megatim.fdxconsultation.service.impl.sockets.encoders; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.SerializationFeature; import com.megatim.fdxconsultation.model.supervision.Transfert; import javax.websocket.EncodeException; import javax.websocket.Encoder; import javax.websocket.EndpointConfig; import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; /** * * @author lenovo */ public class TransfertEncoder implements Encoder.Text { private final ObjectMapper objectMapper = new ObjectMapper(); @Override public String encode(Transfert transfert) throws EncodeException { try { objectMapper.registerModule(new JavaTimeModule()); objectMapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS); return objectMapper.writeValueAsString(transfert); } catch (JsonProcessingException e) { throw new EncodeException(transfert, "Unable to encode transfert data message", e); } } @Override public void init(EndpointConfig endpointConfig) { } @Override public void destroy() { } }