Merge pull request #553 from dpsenner/feature/MqttClient-add-missing-async-extensions

Add extension methods that provide a simpler api for IMqttClient and IManagedMqttClient
This commit is contained in:
Christian
2019-02-22 20:28:53 +01:00
committed by GitHub
2 changed files with 48 additions and 0 deletions
@@ -24,6 +24,18 @@ namespace MQTTnet.Extensions.ManagedClient
return client;
}
public static IManagedMqttClient UseConnectedHandler(this IManagedMqttClient client, Action<MqttClientConnectedEventArgs> handler)
{
if (handler == null)
{
client.ConnectedHandler = null;
return client;
}
client.ConnectedHandler = new MqttClientConnectedHandlerDelegate(handler);
return client;
}
public static IManagedMqttClient UseDisconnectedHandler(this IManagedMqttClient client, Func<MqttClientDisconnectedEventArgs, Task> handler)
{
if (handler == null)
@@ -36,6 +48,18 @@ namespace MQTTnet.Extensions.ManagedClient
return client;
}
public static IManagedMqttClient UseDisconnectedHandler(this IManagedMqttClient client, Action<MqttClientDisconnectedEventArgs> handler)
{
if (handler == null)
{
client.DisconnectedHandler = null;
return client;
}
client.DisconnectedHandler = new MqttClientDisconnectedHandlerDelegate(handler);
return client;
}
public static IManagedMqttClient UseReceivedApplicationMessageHandler(this IManagedMqttClient client, Func<MqttApplicationMessageHandlerContext, Task> handler)
{
if (handler == null)
@@ -27,6 +27,18 @@ namespace MQTTnet.Client
return client;
}
public static IMqttClient UseConnectedHandler(this IMqttClient client, Action<MqttClientConnectedEventArgs> handler)
{
if (handler == null)
{
client.ConnectedHandler = null;
return client;
}
client.ConnectedHandler = new MqttClientConnectedHandlerDelegate(handler);
return client;
}
public static IMqttClient UseDisconnectedHandler(this IMqttClient client, Func<MqttClientDisconnectedEventArgs, Task> handler)
{
if (handler == null)
@@ -39,6 +51,18 @@ namespace MQTTnet.Client
return client;
}
public static IMqttClient UseDisconnectedHandler(this IMqttClient client, Action<MqttClientDisconnectedEventArgs> handler)
{
if (handler == null)
{
client.DisconnectedHandler = null;
return client;
}
client.DisconnectedHandler = new MqttClientDisconnectedHandlerDelegate(handler);
return client;
}
public static IMqttClient UseReceivedApplicationMessageHandler(this IMqttClient client, Func<MqttApplicationMessageHandlerContext, Task> handler)
{
if (handler == null)