Updated _ReconnectAsync_ extension methods to retrieve authentication result (#1202)

This commit is contained in:
Nikita Senkov
2021-09-05 11:49:52 +02:00
committed by GitHub
parent 8905b612c9
commit 50381637af
+14 -2
View File
@@ -1,4 +1,4 @@
using MQTTnet.Client.Connecting;
using MQTTnet.Client.Connecting;
using MQTTnet.Client.Disconnecting;
using MQTTnet.Client.ExtendedAuthenticationExchange;
using MQTTnet.Client.Options;
@@ -112,7 +112,7 @@ namespace MQTTnet.Client
return client;
}
public static Task ReconnectAsync(this IMqttClient client)
public static Task<MqttClientAuthenticateResult> ReconnectAsync(this IMqttClient client)
{
if (client == null) throw new ArgumentNullException(nameof(client));
@@ -124,6 +124,18 @@ namespace MQTTnet.Client
return client.ConnectAsync(client.Options);
}
public static Task<MqttClientAuthenticateResult> ReconnectAsync(this IMqttClient client, CancellationToken cancellationToken)
{
if (client == null) throw new ArgumentNullException(nameof(client));
if (client.Options == null)
{
throw new InvalidOperationException("_ReconnectAsync_ can be used only if _ConnectAsync_ was called before.");
}
return client.ConnectAsync(client.Options, cancellationToken);
}
public static Task DisconnectAsync(this IMqttClient client)
{
if (client == null) throw new ArgumentNullException(nameof(client));