Class UuidCodec

java.lang.Object
org.bson.codecs.UuidCodec
All Implemented Interfaces:
Codec<UUID>, Decoder<UUID>, Encoder<UUID>
Direct Known Subclasses:
OverridableUuidRepresentationUuidCodec

public class UuidCodec extends Object implements Codec<UUID>
Encodes and decodes UUID objects.
Since:
3.0
  • Constructor Details

    • UuidCodec

      public UuidCodec(UuidRepresentation uuidRepresentation)
      The default UUIDRepresentation is JAVA_LEGACY to be compatible with existing documents
      Parameters:
      uuidRepresentation - the representation of UUID
      See Also:
    • UuidCodec

      public UuidCodec()
      The constructor for UUIDCodec, default is JAVA_LEGACY
  • Method Details

    • getUuidRepresentation

      public UuidRepresentation getUuidRepresentation()
      The UuidRepresentation with which this instance is configured
      Returns:
      the uuid representation
      Since:
      3.12
    • encode

      public void encode(BsonWriter writer, UUID value, EncoderContext encoderContext)
      Description copied from interface: Encoder
      Encode an instance of the type parameter T into a BSON value.
      Specified by:
      encode in interface Encoder<UUID>
      Parameters:
      writer - the BSON writer to encode into
      value - the value to encode
      encoderContext - the encoder context
    • decode

      public UUID 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.
      Specified by:
      decode in interface Decoder<UUID>
      Parameters:
      reader - the BSON reader
      decoderContext - the decoder context
      Returns:
      an instance of the type parameter T.
    • getEncoderClass

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

      public String toString()
      Overrides:
      toString in class Object