Class ProducerEndpointConfigurationBuilderSchemaRegistryExtensions
Adds the SerializeAsAvro<TMessage, TConfiguration, TEndpoint, TBuilder>(ProducerEndpointConfigurationBuilder<TMessage, TConfiguration, TEndpoint, TBuilder>, Action<AvroMessageSerializerBuilder>?), SerializeAsJsonUsingSchemaRegistry<TMessage, TConfiguration, TEndpoint, TBuilder>(ProducerEndpointConfigurationBuilder<TMessage, TConfiguration, TEndpoint, TBuilder>, Action<JsonSchemaRegistryMessageSerializerBuilder>?) and SerializeAsProtobuf<TMessage, TConfiguration, TEndpoint, TBuilder>(ProducerEndpointConfigurationBuilder<TMessage, TConfiguration, TEndpoint, TBuilder>, Action<ProtobufMessageSerializerBuilder>?) methods to the ProducerEndpointConfigurationBuilder<TMessage, TConfiguration, TEndpoint, TBuilder>.
Inherited Members
Namespace: Silverback.Messaging.Configuration
Assembly: Silverback.Integration.Kafka.SchemaRegistry.dll
Syntax
public static class ProducerEndpointConfigurationBuilderSchemaRegistryExtensions
Methods
SerializeAsAvro<TMessage, TConfiguration, TEndpoint, TBuilder>(ProducerEndpointConfigurationBuilder<TMessage, TConfiguration, TEndpoint, TBuilder>, Action<AvroMessageSerializerBuilder>?)
Sets the serializer to an instance of AvroMessageSerializer<TMessage> to serialize the produced messages as Avro.
Declaration
public static TBuilder SerializeAsAvro<TMessage, TConfiguration, TEndpoint, TBuilder>(this ProducerEndpointConfigurationBuilder<TMessage, TConfiguration, TEndpoint, TBuilder> endpointBuilder, Action<AvroMessageSerializerBuilder>? serializerBuilderAction = null) where TMessage : class where TConfiguration : ProducerEndpointConfiguration<TEndpoint> where TEndpoint : ProducerEndpoint where TBuilder : ProducerEndpointConfigurationBuilder<TMessage, TConfiguration, TEndpoint, TBuilder>
Parameters
| Type | Name | Description |
|---|---|---|
| ProducerEndpointConfigurationBuilder<TMessage, TConfiguration, TEndpoint, TBuilder> | endpointBuilder | The endpoint builder. |
| Action<AvroMessageSerializerBuilder> | serializerBuilderAction | An optional Action<T> that takes the AvroMessageSerializerBuilder and configures it. |
Returns
| Type | Description |
|---|---|
| TBuilder | The endpoint builder so that additional calls can be chained. |
Type Parameters
| Name | Description |
|---|---|
| TMessage | The type of the messages being produced. |
| TConfiguration | The type of the configuration being built. |
| TEndpoint | The type of the endpoint. |
| TBuilder | The actual builder type. |
SerializeAsJsonUsingSchemaRegistry<TMessage, TConfiguration, TEndpoint, TBuilder>(ProducerEndpointConfigurationBuilder<TMessage, TConfiguration, TEndpoint, TBuilder>, Action<JsonSchemaRegistryMessageSerializerBuilder>?)
Sets the serializer to an instance of JsonSchemaRegistryMessageSerializer<TMessage> to serialize the produced messages as Avro.
Declaration
public static TBuilder SerializeAsJsonUsingSchemaRegistry<TMessage, TConfiguration, TEndpoint, TBuilder>(this ProducerEndpointConfigurationBuilder<TMessage, TConfiguration, TEndpoint, TBuilder> endpointBuilder, Action<JsonSchemaRegistryMessageSerializerBuilder>? serializerBuilderAction = null) where TMessage : class where TConfiguration : ProducerEndpointConfiguration<TEndpoint> where TEndpoint : ProducerEndpoint where TBuilder : ProducerEndpointConfigurationBuilder<TMessage, TConfiguration, TEndpoint, TBuilder>
Parameters
| Type | Name | Description |
|---|---|---|
| ProducerEndpointConfigurationBuilder<TMessage, TConfiguration, TEndpoint, TBuilder> | endpointBuilder | The endpoint builder. |
| Action<JsonSchemaRegistryMessageSerializerBuilder> | serializerBuilderAction | An optional Action<T> that takes the AvroMessageSerializerBuilder and configures it. |
Returns
| Type | Description |
|---|---|
| TBuilder | The endpoint builder so that additional calls can be chained. |
Type Parameters
| Name | Description |
|---|---|
| TMessage | The type of the messages being produced. |
| TConfiguration | The type of the configuration being built. |
| TEndpoint | The type of the endpoint. |
| TBuilder | The actual builder type. |
SerializeAsProtobuf<TMessage, TConfiguration, TEndpoint, TBuilder>(ProducerEndpointConfigurationBuilder<TMessage, TConfiguration, TEndpoint, TBuilder>, Action<ProtobufMessageSerializerBuilder>?)
Sets the serializer to an instance of ProtobufMessageSerializer<TMessage> to serialize the produced messages as Protobuf.
Declaration
public static TBuilder SerializeAsProtobuf<TMessage, TConfiguration, TEndpoint, TBuilder>(this ProducerEndpointConfigurationBuilder<TMessage, TConfiguration, TEndpoint, TBuilder> endpointBuilder, Action<ProtobufMessageSerializerBuilder>? serializerBuilderAction = null) where TMessage : class, IMessage<TMessage>, new() where TConfiguration : ProducerEndpointConfiguration<TEndpoint> where TEndpoint : ProducerEndpoint where TBuilder : ProducerEndpointConfigurationBuilder<TMessage, TConfiguration, TEndpoint, TBuilder>
Parameters
| Type | Name | Description |
|---|---|---|
| ProducerEndpointConfigurationBuilder<TMessage, TConfiguration, TEndpoint, TBuilder> | endpointBuilder | The endpoint builder. |
| Action<ProtobufMessageSerializerBuilder> | serializerBuilderAction | An optional Action<T> that takes the ProtobufMessageSerializerBuilder and configures it. |
Returns
| Type | Description |
|---|---|
| TBuilder | The endpoint builder so that additional calls can be chained. |
Type Parameters
| Name | Description |
|---|---|
| TMessage | The type of the messages being produced. |
| TConfiguration | The type of the configuration being built. |
| TEndpoint | The type of the endpoint. |
| TBuilder | The actual builder type. |