/// <summary> /// Set the message key deserializer. /// </summary> /// <param name="consumerBuilder"> /// The <see cref="ConsumerBuilder{TKey, TValue}" /> instance to be configured. /// </param> /// <param name="deserializerBuilder"> /// A deserializer builder. /// </param> /// <param name="subject"> /// The subject of the schema that should be used to deserialize keys. /// </param> /// <param name="version"> /// The version of the subject to be resolved. /// </param> public static async Task <ConsumerBuilder <TKey, TValue> > SetAvroKeyDeserializer <TKey, TValue>( this ConsumerBuilder <TKey, TValue> consumerBuilder, SchemaRegistryDeserializerBuilder deserializerBuilder, string subject, int version ) => consumerBuilder.SetKeyDeserializer( await deserializerBuilder.Build <TKey>(subject, version).ConfigureAwait(false));
/// <summary> /// Set the message value deserializer. /// </summary> /// <param name="consumerBuilder"> /// The <see cref="ConsumerBuilder{TKey, TValue}" /> instance to be configured. /// </param> /// <param name="deserializerBuilder"> /// A deserializer builder. /// </param> /// <param name="subject"> /// The subject of the schema that should be used to deserialize values. The latest version /// of the subject will be resolved. /// </param> /// <param name="tombstoneBehavior"> /// The behavior of the deserializer on tombstone records. /// </param> public static async Task <ConsumerBuilder <TKey, TValue> > SetAvroValueDeserializer <TKey, TValue>( this ConsumerBuilder <TKey, TValue> consumerBuilder, SchemaRegistryDeserializerBuilder deserializerBuilder, string subject, TombstoneBehavior tombstoneBehavior = TombstoneBehavior.None ) => consumerBuilder.SetValueDeserializer( await deserializerBuilder.Build <TValue>(subject, tombstoneBehavior).ConfigureAwait(false));
/// <summary> /// Set the message value deserializer. /// </summary> /// <param name="consumerBuilder"> /// The <see cref="ConsumerBuilder{TKey, TValue}" /> instance to be configured. /// </param> /// <param name="deserializerBuilder"> /// A deserializer builder. /// </param> /// <param name="subject"> /// The subject of the schema that should be used to deserialize values. The latest version /// of the subject will be resolved. /// </param> public static async Task <ConsumerBuilder <TKey, TValue> > SetAvroValueDeserializer <TKey, TValue>( this ConsumerBuilder <TKey, TValue> consumerBuilder, SchemaRegistryDeserializerBuilder deserializerBuilder, string subject ) => consumerBuilder.SetValueDeserializer(await deserializerBuilder.Build <TValue>(subject));
/// <summary> /// Set the message key deserializer. /// </summary> /// <param name="consumerBuilder"> /// The <see cref="ConsumerBuilder{TKey, TValue}" /> instance to be configured. /// </param> /// <param name="deserializerBuilder"> /// A deserializer builder. /// </param> /// <param name="id"> /// The ID of the schema that should be used to deserialize keys. /// </param> public static async Task <ConsumerBuilder <TKey, TValue> > SetAvroKeyDeserializer <TKey, TValue>( this ConsumerBuilder <TKey, TValue> consumerBuilder, SchemaRegistryDeserializerBuilder deserializerBuilder, int id ) => consumerBuilder.SetKeyDeserializer(await deserializerBuilder.Build <TKey>(id));
/// <summary> /// Set the message value deserializer. /// </summary> /// <param name="consumerBuilder"> /// The <see cref="ConsumerBuilder{TKey, TValue}" /> instance to be configured. /// </param> /// <param name="deserializerBuilder"> /// A deserializer builder. /// </param> /// <param name="id"> /// The ID of the schema that should be used to deserialize values. /// </param> public static async Task <ConsumerBuilder <TKey, TValue> > SetAvroValueDeserializer <TKey, TValue>( this ConsumerBuilder <TKey, TValue> consumerBuilder, SchemaRegistryDeserializerBuilder deserializerBuilder, int id ) => consumerBuilder.SetValueDeserializer(await deserializerBuilder.Build <TValue>(id).ConfigureAwait(false));