Class IterableCodec

    • Constructor Detail

      • IterableCodec

        public IterableCodec(CodecRegistry registry,
                             BsonTypeClassMap bsonTypeClassMap)
        Construct a new instance with the given CodecRegistry and BsonTypeClassMap.
        Parameters:
        registry - the non-null codec registry
        bsonTypeClassMap - the non-null BsonTypeClassMap
      • IterableCodec

        public IterableCodec(CodecRegistry registry,
                             BsonTypeClassMap bsonTypeClassMap,
                             Transformer valueTransformer)
        Construct a new instance with the given CodecRegistry and BsonTypeClassMap.
        Parameters:
        registry - the non-null codec registry
        bsonTypeClassMap - the non-null BsonTypeClassMap
        valueTransformer - the value Transformer
    • Method Detail

      • decode

        public Iterable 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<Iterable>
        Parameters:
        reader - the BSON reader
        decoderContext - the decoder context
        Returns:
        an instance of the type parameter T.
      • encode

        public void encode(BsonWriter writer,
                           Iterable 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<Iterable>
        Parameters:
        writer - the BSON writer to encode into
        value - the value to encode
        encoderContext - the encoder context
      • getEncoderClass

        public Class<Iterable> 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<Iterable>
        Returns:
        the Class instance that this encodes.