Class MqttLastWillMessageConfigurationBuilder<TMessage>
Builds the last will and testament (LWT) message related part of the MqttClientConfiguration.
Implements
Inherited Members
Namespace: Silverback.Messaging.Configuration.Mqtt
Assembly: Silverback.Integration.MQTT.dll
Syntax
public class MqttLastWillMessageConfigurationBuilder<TMessage> : IMessageSerializationBuilder<TMessage, MqttLastWillMessageConfigurationBuilder<TMessage>>
Type Parameters
| Name | Description |
|---|---|
| TMessage | The LWT message type. |
Constructors
MqttLastWillMessageConfigurationBuilder()
Builds the last will and testament (LWT) message related part of the MqttClientConfiguration.
Declaration
public MqttLastWillMessageConfigurationBuilder()
Methods
AddHeader(string, string?)
Adds an header (user property) to the last will message.
Declaration
public MqttLastWillMessageConfigurationBuilder<TMessage> AddHeader(string name, string? value)
Parameters
| Type | Name | Description |
|---|---|---|
| string | name | The property name. |
| string | value | The property value. |
Returns
| Type | Description |
|---|---|
| MqttLastWillMessageConfigurationBuilder<TMessage> | The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained. |
Build()
Builds the MQTTnet.MqttApplicationMessage instance.
Declaration
public MqttLastWillMessageConfiguration Build()
Returns
| Type | Description |
|---|---|
| MqttLastWillMessageConfiguration | The MQTTnet.MqttApplicationMessage. |
ProduceTo(string)
Specifies the name of the topic to produce the LWT message to.
Declaration
public MqttLastWillMessageConfigurationBuilder<TMessage> ProduceTo(string topic)
Parameters
| Type | Name | Description |
|---|---|---|
| string | topic | The topic. |
Returns
| Type | Description |
|---|---|
| MqttLastWillMessageConfigurationBuilder<TMessage> | The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained. |
Retain()
Specifies that the LWT message will be sent with the retain flag, causing it to be persisted on the broker.
Declaration
public MqttLastWillMessageConfigurationBuilder<TMessage> Retain()
Returns
| Type | Description |
|---|---|
| MqttLastWillMessageConfigurationBuilder<TMessage> | The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained. |
SendMessage(TMessage)
Sets the payload of the last will message to be published.
Declaration
public MqttLastWillMessageConfigurationBuilder<TMessage> SendMessage(TMessage message)
Parameters
| Type | Name | Description |
|---|---|---|
| TMessage | message | The actual LWT message to be published. |
Returns
| Type | Description |
|---|---|
| MqttLastWillMessageConfigurationBuilder<TMessage> | The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained. |
SerializeAsJson(Action<JsonMessageSerializerBuilder>?)
Sets the serializer to an instance of JsonMessageSerializer to serialize the produced messages as JSON.
Declaration
public MqttLastWillMessageConfigurationBuilder<TMessage> SerializeAsJson(Action<JsonMessageSerializerBuilder>? serializerBuilderAction = null)
Parameters
| Type | Name | Description |
|---|---|---|
| Action<JsonMessageSerializerBuilder> | serializerBuilderAction | An optional Action<T> that takes the JsonMessageSerializerBuilder and configures it. |
Returns
| Type | Description |
|---|---|
| MqttLastWillMessageConfigurationBuilder<TMessage> | The endpoint builder so that additional calls can be chained. |
SerializeUsing(IMessageSerializer)
Specifies the IMessageSerializer to be used to serialize the LWT message.
Declaration
public MqttLastWillMessageConfigurationBuilder<TMessage> SerializeUsing(IMessageSerializer serializer)
Parameters
| Type | Name | Description |
|---|---|---|
| IMessageSerializer | serializer | The IMessageSerializer. |
Returns
| Type | Description |
|---|---|
| MqttLastWillMessageConfigurationBuilder<TMessage> | The endpoint builder so that additional calls can be chained. |
WithAtLeastOnceQoS()
Specifies that the LWT message has to be sent with the at least once quality of service level.
Declaration
public MqttLastWillMessageConfigurationBuilder<TMessage> WithAtLeastOnceQoS()
Returns
| Type | Description |
|---|---|
| MqttLastWillMessageConfigurationBuilder<TMessage> | The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained. |
WithAtMostOnceQoS()
Specifies that the LWT message has to be sent with the at most once quality of service level.
Declaration
public MqttLastWillMessageConfigurationBuilder<TMessage> WithAtMostOnceQoS()
Returns
| Type | Description |
|---|---|
| MqttLastWillMessageConfigurationBuilder<TMessage> | The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained. |
WithContentType(string?)
Sets the content type.
Declaration
public MqttLastWillMessageConfigurationBuilder<TMessage> WithContentType(string? contentType)
Parameters
| Type | Name | Description |
|---|---|---|
| string | contentType | The content type. |
Returns
| Type | Description |
|---|---|
| MqttLastWillMessageConfigurationBuilder<TMessage> | The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained. |
WithCorrelationData(byte[]?)
Sets the correlation data.
Declaration
public MqttLastWillMessageConfigurationBuilder<TMessage> WithCorrelationData(byte[]? correlationData)
Parameters
| Type | Name | Description |
|---|---|---|
| byte[] | correlationData | The correlation data. |
Returns
| Type | Description |
|---|---|
| MqttLastWillMessageConfigurationBuilder<TMessage> | The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained. |
WithDelay(TimeSpan)
Sets the last will message delay.
Declaration
public MqttLastWillMessageConfigurationBuilder<TMessage> WithDelay(TimeSpan delay)
Parameters
| Type | Name | Description |
|---|---|---|
| TimeSpan | delay | The TimeSpan representing the delay. |
Returns
| Type | Description |
|---|---|
| MqttLastWillMessageConfigurationBuilder<TMessage> | The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained. |
WithExactlyOnceQoS()
Specifies that the LWT message has to be sent with the exactly once quality of service level.
Declaration
public MqttLastWillMessageConfigurationBuilder<TMessage> WithExactlyOnceQoS()
Returns
| Type | Description |
|---|---|
| MqttLastWillMessageConfigurationBuilder<TMessage> | The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained. |
WithExpiration(TimeSpan)
Sets the last will message expiration.
Declaration
public MqttLastWillMessageConfigurationBuilder<TMessage> WithExpiration(TimeSpan expiration)
Parameters
| Type | Name | Description |
|---|---|---|
| TimeSpan | expiration | The TimeSpan representing the expiration. |
Returns
| Type | Description |
|---|---|
| MqttLastWillMessageConfigurationBuilder<TMessage> | The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained. |
WithPayloadFormatIndicator(MqttPayloadFormatIndicator?)
Sets the payload format indicator.
Declaration
public MqttLastWillMessageConfigurationBuilder<TMessage> WithPayloadFormatIndicator(MqttPayloadFormatIndicator? payloadFormatIndicator)
Parameters
| Type | Name | Description |
|---|---|---|
| MqttPayloadFormatIndicator? | payloadFormatIndicator | The payload format indicator. |
Returns
| Type | Description |
|---|---|
| MqttLastWillMessageConfigurationBuilder<TMessage> | The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained. |
WithPayloadFormatIndicator(string?)
Sets the response topic.
Declaration
public MqttLastWillMessageConfigurationBuilder<TMessage> WithPayloadFormatIndicator(string? topic)
Parameters
| Type | Name | Description |
|---|---|---|
| string | topic | The response topic. |
Returns
| Type | Description |
|---|---|
| MqttLastWillMessageConfigurationBuilder<TMessage> | The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained. |
WithQualityOfServiceLevel(MqttQualityOfServiceLevel)
Specifies the desired quality of service level.
Declaration
public MqttLastWillMessageConfigurationBuilder<TMessage> WithQualityOfServiceLevel(MqttQualityOfServiceLevel qosLevel)
Parameters
| Type | Name | Description |
|---|---|---|
| MqttQualityOfServiceLevel | qosLevel | The MQTTnet.Protocol.MqttQualityOfServiceLevel. |
Returns
| Type | Description |
|---|---|
| MqttLastWillMessageConfigurationBuilder<TMessage> | The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained. |