mirror of
https://github.com/dotnet/MQTTnet.git
synced 2026-10-18 10:26:11 +08:00
Add async handler interfaces for connected and disconnected to allow async code to execute on connect
This commit is contained in:
@@ -38,9 +38,9 @@ namespace MQTTnet.Extensions.ManagedClient
|
||||
|
||||
_mqttClient = mqttClient ?? throw new ArgumentNullException(nameof(mqttClient));
|
||||
|
||||
_mqttClient.Connected += OnConnected;
|
||||
_mqttClient.Disconnected += OnDisconnected;
|
||||
_mqttClient.ApplicationMessageReceived += OnApplicationMessageReceived;
|
||||
_mqttClient.UseConnectedHandler(OnConnected);
|
||||
_mqttClient.UseDisconnectedHandler(OnDisconnected);
|
||||
_mqttClient.UseReceivedApplicationMessageHandler(OnApplicationMessageReceived);
|
||||
|
||||
_logger = logger.CreateChildLogger(nameof(ManagedMqttClient));
|
||||
}
|
||||
@@ -415,19 +415,22 @@ namespace MQTTnet.Extensions.ManagedClient
|
||||
}
|
||||
}
|
||||
|
||||
private void OnApplicationMessageReceived(object sender, MqttApplicationMessageReceivedEventArgs eventArgs)
|
||||
private Task OnApplicationMessageReceived(MqttApplicationMessageHandlerContext context)
|
||||
{
|
||||
ApplicationMessageReceived?.Invoke(this, eventArgs);
|
||||
ApplicationMessageReceived?.Invoke(this, new MqttApplicationMessageReceivedEventArgs(context.SenderClientId, context.ApplicationMessage));
|
||||
return Task.FromResult(0);
|
||||
}
|
||||
|
||||
private void OnDisconnected(object sender, MqttClientDisconnectedEventArgs eventArgs)
|
||||
private Task OnDisconnected(MqttClientDisconnectedEventArgs eventArgs)
|
||||
{
|
||||
Disconnected?.Invoke(this, eventArgs);
|
||||
return Task.FromResult(0);
|
||||
}
|
||||
|
||||
private void OnConnected(object sender, MqttClientConnectedEventArgs eventArgs)
|
||||
private Task OnConnected(MqttClientConnectedEventArgs eventArgs)
|
||||
{
|
||||
Connected?.Invoke(this, eventArgs);
|
||||
return Task.FromResult(0);
|
||||
}
|
||||
|
||||
private void StartPublishing()
|
||||
|
||||
Reference in New Issue
Block a user