app/helpers/ZonedDateTimeCodec.scala (11 lines of code) (raw):

package helpers import java.time.{Instant, ZoneId, ZonedDateTime} import org.bson.{BsonReader, BsonWriter} import org.bson.codecs.{Codec, DecoderContext, EncoderContext} class ZonedDateTimeCodec extends Codec[ZonedDateTime]{ override def encode(writer: BsonWriter, value: ZonedDateTime, encoderContext: EncoderContext): Unit = writer.writeInt64(value.toInstant.toEpochMilli) override def decode(reader: BsonReader, decoderContext: DecoderContext): ZonedDateTime = ZonedDateTime.ofInstant(Instant.ofEpochMilli(reader.readInt64()),ZoneId.systemDefault()) override def getEncoderClass: Class[ZonedDateTime] = classOf[ZonedDateTime] }