Show / Hide Table of Contents

    Class AvroMessageDeserializer<TMessage>

    Connects to the specified schema registry and serializes the messages in Apache Avro format.

    Inheritance
    object
    AvroMessageDeserializerBase
    AvroMessageDeserializer<TMessage>
    Implements
    IKafkaMessageSerializer
    IMessageSerializer
    Inherited Members
    AvroMessageDeserializerBase.RequireHeaders
    AvroMessageDeserializerBase.SchemaRegistryConfig
    AvroMessageDeserializerBase.AvroDeserializerConfig
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: Silverback.Messaging.Serialization
    Assembly: Silverback.Integration.Kafka.SchemaRegistry.dll
    Syntax
    public class AvroMessageDeserializer<TMessage> : AvroMessageDeserializerBase, IKafkaMessageSerializer, IMessageSerializer where TMessage : class
    Type Parameters
    Name Description
    TMessage

    The type of the messages to be serialized and/or deserialized.

    Methods

    | Improve this doc View source

    DeserializeAsync(Stream?, MessageHeaderCollection, MessageSerializationContext)

    Deserializes the byte array back into a message object.

    Declaration
    public override ValueTask<(object? Message, Type MessageType)> DeserializeAsync(Stream? messageStream, MessageHeaderCollection messageHeaders, MessageSerializationContext context)
    Parameters
    Type Name Description
    Stream messageStream

    The Stream containing the message to be deserialized.

    MessageHeaderCollection messageHeaders

    The message headers collection.

    MessageSerializationContext context

    The context information.

    Returns
    Type Description
    ValueTask<(object Message, Type MessageType)>

    A Task<TResult> representing the asynchronous operation. The task result contains the deserialized message (or null when the input is null or empty) and the type of the message.

    Overrides
    AvroMessageDeserializerBase.DeserializeAsync(Stream?, MessageHeaderCollection, MessageSerializationContext)
    | Improve this doc View source

    DeserializeKey(byte[], IReadOnlyCollection<MessageHeader>?, MessageSerializationContext)

    Deserializes the byte array back into a key string.

    Declaration
    public override string DeserializeKey(byte[] key, IReadOnlyCollection<MessageHeader>? messageHeaders, MessageSerializationContext context)
    Parameters
    Type Name Description
    byte[] key

    The byte array to be deserialized.

    IReadOnlyCollection<MessageHeader> messageHeaders

    The message headers collection.

    MessageSerializationContext context

    The context information.

    Returns
    Type Description
    string

    The deserialized key.

    Overrides
    AvroMessageDeserializerBase.DeserializeKey(byte[], IReadOnlyCollection<MessageHeader>, MessageSerializationContext)
    | Improve this doc View source

    SerializeAsync(object?, MessageHeaderCollection, MessageSerializationContext)

    Serializes the specified message object into a byte array.

    Declaration
    public override ValueTask<Stream?> SerializeAsync(object? message, MessageHeaderCollection messageHeaders, MessageSerializationContext context)
    Parameters
    Type Name Description
    object message

    The message object to be serialized.

    MessageHeaderCollection messageHeaders

    The message headers collection.

    MessageSerializationContext context

    The context information.

    Returns
    Type Description
    ValueTask<Stream>

    A Task<TResult> representing the asynchronous operation. The task result contains the Stream with the serialized message.

    Overrides
    AvroMessageDeserializerBase.SerializeAsync(object?, MessageHeaderCollection, MessageSerializationContext)
    | Improve this doc View source

    SerializeKey(string, IReadOnlyCollection<MessageHeader>?, MessageSerializationContext)

    Serializes the specified key string into a byte array.

    Declaration
    public override byte[] SerializeKey(string key, IReadOnlyCollection<MessageHeader>? messageHeaders, MessageSerializationContext context)
    Parameters
    Type Name Description
    string key

    The message key to be serialized.

    IReadOnlyCollection<MessageHeader> messageHeaders

    The message headers collection.

    MessageSerializationContext context

    The context information.

    Returns
    Type Description
    byte[]

    The serialization result.

    Overrides
    AvroMessageDeserializerBase.SerializeKey(string, IReadOnlyCollection<MessageHeader>, MessageSerializationContext)

    Implements

    IKafkaMessageSerializer
    IMessageSerializer
    • Improve this doc
    • View source
    GitHub E-Mail
    ↑ Back to top © 2020 Sergio Aquilini