diff --git a/Source/MQTTnet.Extensions.ManagedClient/ManagedMqttClientExtensions.cs b/Source/MQTTnet.Extensions.ManagedClient/ManagedMqttClientExtensions.cs index 50790d44..811368f7 100644 --- a/Source/MQTTnet.Extensions.ManagedClient/ManagedMqttClientExtensions.cs +++ b/Source/MQTTnet.Extensions.ManagedClient/ManagedMqttClientExtensions.cs @@ -24,6 +24,18 @@ namespace MQTTnet.Extensions.ManagedClient return client; } + public static IManagedMqttClient UseConnectedHandler(this IManagedMqttClient client, Action handler) + { + if (handler == null) + { + client.ConnectedHandler = null; + return client; + } + + client.ConnectedHandler = new MqttClientConnectedHandlerDelegate(handler); + return client; + } + public static IManagedMqttClient UseDisconnectedHandler(this IManagedMqttClient client, Func handler) { if (handler == null) @@ -36,6 +48,18 @@ namespace MQTTnet.Extensions.ManagedClient return client; } + public static IManagedMqttClient UseDisconnectedHandler(this IManagedMqttClient client, Action handler) + { + if (handler == null) + { + client.DisconnectedHandler = null; + return client; + } + + client.DisconnectedHandler = new MqttClientDisconnectedHandlerDelegate(handler); + return client; + } + public static IManagedMqttClient UseReceivedApplicationMessageHandler(this IManagedMqttClient client, Func handler) { if (handler == null) diff --git a/Source/MQTTnet/Client/MqttClientExtensions.cs b/Source/MQTTnet/Client/MqttClientExtensions.cs index de1a77ba..eacdbf4d 100644 --- a/Source/MQTTnet/Client/MqttClientExtensions.cs +++ b/Source/MQTTnet/Client/MqttClientExtensions.cs @@ -27,6 +27,18 @@ namespace MQTTnet.Client return client; } + public static IMqttClient UseConnectedHandler(this IMqttClient client, Action handler) + { + if (handler == null) + { + client.ConnectedHandler = null; + return client; + } + + client.ConnectedHandler = new MqttClientConnectedHandlerDelegate(handler); + return client; + } + public static IMqttClient UseDisconnectedHandler(this IMqttClient client, Func handler) { if (handler == null) @@ -39,6 +51,18 @@ namespace MQTTnet.Client return client; } + public static IMqttClient UseDisconnectedHandler(this IMqttClient client, Action handler) + { + if (handler == null) + { + client.DisconnectedHandler = null; + return client; + } + + client.DisconnectedHandler = new MqttClientDisconnectedHandlerDelegate(handler); + return client; + } + public static IMqttClient UseReceivedApplicationMessageHandler(this IMqttClient client, Func handler) { if (handler == null)