Class LocalDateTimeCodec

java.lang.Object
org.bson.codecs.jsr310.LocalDateTimeCodec
All Implemented Interfaces:
Codec<LocalDateTime>, Decoder<LocalDateTime>, Encoder<LocalDateTime>

public class LocalDateTimeCodec extends Object
LocalDateTime Codec.

Encodes and decodes LocalDateTime objects to and from DateTime. Data is stored to millisecond accuracy.

Converts the LocalDateTime values to and from ZoneOffset.UTC.

Since:
3.7
MongoDB documentation
reference/bson-types
  • Constructor Details

    • LocalDateTimeCodec

      public LocalDateTimeCodec()
  • Method Details

    • decode

      public LocalDateTime decode(BsonReader reader, DecoderContext decoderContext)
      Description copied from interface: Decoder
      Decodes a BSON value from the given reader into an instance of the type parameter T.
      Parameters:
      reader - the BSON reader
      decoderContext - the decoder context
      Returns:
      an instance of the type parameter T.
    • encode

      public void encode(BsonWriter writer, LocalDateTime value, EncoderContext encoderContext)
      Encode an instance of the type parameter T into a BSON value.

      Converts the LocalDateTime to ZoneOffset.UTC via ChronoLocalDateTime.toInstant(ZoneOffset).

      Parameters:
      writer - the BSON writer to encode into
      value - the value to encode
      encoderContext - the encoder context
      Throws:
      CodecConfigurationException - if the LocalDateTime cannot be converted to a valid Bson DateTime.
    • getEncoderClass

      public Class<LocalDateTime> getEncoderClass()
      Description copied from interface: Encoder
      Returns the Class instance that this encodes. This is necessary because Java does not reify generic types.
      Returns:
      the Class instance that this encodes.