Christian Kratky
ebf0e91ab8
Refactor subscribe and unsubscribe to support MQTTv5.
2019-01-21 21:38:39 +01:00
Christian Kratky
96a67579e2
Improve session handling.
2019-01-01 19:18:54 +01:00
Christian Kratky
058bb65d31
Merge from develop.
2018-12-22 09:40:47 +01:00
Christian Kratky
38b215e9b5
Merge branch 'develop' into feature/MQTTv5
2018-12-22 09:38:12 +01:00
Christian Kratky
cc113a6c34
Refactor namespaces.
2018-12-20 20:53:29 +01:00
Charles Quesnel
dfda916283
Use default parameter instead of overload
2018-12-13 14:54:31 -05:00
Charles Quesnel
40326df9a9
Fix typo in 'Cookie'
2018-12-13 14:08:53 -05:00
Charles Quesnel
a94444098a
Remove unused usings
2018-12-13 13:01:34 -05:00
Charles Quesnel
0c13e7a504
Add overload to allow passing custom request headers and cookies when connecting with WS
2018-12-13 12:56:47 -05:00
Christian Kratky
6483f896c1
Merge from develop.
2018-12-09 20:48:46 +01:00
Christian Kratky
619eaf284d
Add readonly property for client options.
2018-12-03 21:20:11 +01:00
Christian Kratky
7baff7c080
Refactor property definition for packets.
2018-11-23 22:50:44 +01:00
Christian Kratky
48d5afa799
Refactor namings of serializers etc.
2018-11-19 00:14:15 +01:00
Christian Kratky
3db22eea51
Remove dedicated V3 messages.
2018-11-18 22:04:39 +01:00
Christian Kratky
5f18f35e02
Refactor task usage in client.
2018-11-17 20:23:52 +01:00
Christian Kratky
ace25af0e8
Added package properties.
2018-11-16 23:11:26 +01:00
Christian Kratky
fed16d7710
Merge from develop.
2018-11-16 22:16:21 +01:00
Paul Fake
a1e258eb24
Check for pending disconnect in ThrowIfNotConnected
...
This might be a little controversial, but it worked for us to correct a problem in which messages get stuck in the managed client storage queue (and are thrown out of the regular message queue without being published!) in the case of a failed connection. What we were seeing was that ManagedMqttClient.TryPublishQueuedMessage() was discarding a dequeued message without ever removing it from the storage queue because of an OperationCancelledException thrown by MqttClient.PublishAsync(). Tracing the code back, we found that when the connection is interrupted, after the timeout period MqttClient.InitiateDisconnect() would set the cancellation token, and the managed client would continue to try to publish, eventually calling through to MqttClient.SendAndReceiveAsync(), which would throw because the cancellation token is set. Looking back over the code, we saw that MqttClient.PublishAsync() has a call to ThrowIfNotConnected() at the top, which told us that the intent was to not allow this function to be called after a disconnect. But the disconnect was still pending, and the function wasn't behaving correctly in this state, so we reasoned that it's best to throw if the disconnect is pending.
2018-11-14 11:25:12 -05:00
Christian Kratky
fb4f89b412
Replace TaskCompletionSource in Client with Interlocked gate.
2018-10-04 22:30:03 +02:00
Christian Kratky
0c2ab9b231
Fix a deadlock when an exception is fired while connecting.
2018-10-04 20:53:02 +02:00
Christian
5c6bcdbca6
Merge branch 'develop' into client-cancel-task
2018-09-28 22:49:00 +02:00
Andre Crabb
400c0f05ad
* Adds false param to Cancel call.
2018-09-28 14:07:04 -04:00
Andre Crabb
00df7c9b7b
* More change tabs to spaces.
2018-09-28 11:01:07 -04:00
Andre Crabb
a272ed7daa
* Change tabs to spaces.
2018-09-28 11:00:18 -04:00
Andre Crabb
b2e7a2e370
Change from logging Info to Verbose
2018-09-21 15:44:31 -04:00
Andre Crabb
39bc70cbf0
* Cancel the TokenSource when disposing or nulling it out for the MqttClient
2018-09-20 11:08:33 -04:00
Christian Kratky
0b5a751c56
Add all methods of the factory to the factory interfaces.
2018-08-15 17:48:28 +02:00
Christian Kratky
5a59cd278c
Add serializer adapter.
2018-08-06 20:36:15 +02:00
Christian
ac36c9c406
Merge branch 'develop' into ServerShutdown
2018-07-26 14:45:25 +02:00
Christian Kratky
f70c79aaf9
Refactor options.
2018-07-26 11:34:24 +02:00
Christian Kratky
60bc4ebcee
Refactor proxy usage and support. Refactor TLS parameter usage.
2018-07-26 10:35:52 +02:00
JanEggers
d30fe61264
fixed missing waits
2018-07-19 21:13:29 +02:00
JanEggers
f7ea2d29e1
prove its broken
2018-07-19 21:13:28 +02:00
JanEggers
e6cfef5295
fixed disconnect to be triggered just once
2018-07-19 21:13:28 +02:00
JanEggers
0dea9e6a2b
changed waiting condition
2018-07-19 21:13:28 +02:00
JanEggers
b55f5ff298
event is triggered but something is blocking
2018-07-19 21:13:27 +02:00
Marius Ruginosu
6e995230a7
Created overload methods for WithTls default values
2018-07-18 16:54:19 +03:00
Marius Ruginosu
65a8b091b9
Add option to specify the SSLProtocol and CertificateValidationCallback in TLS options, SSLProtocol default is TLS1.2
2018-07-18 12:19:09 +03:00
Marius Ruginosu
fa34908d82
Add proxy settings for WebSocket connections for .NET 451 and 461
2018-07-18 10:51:45 +03:00
Christian Kratky
0322660561
Refactor async/await and ConcurrentDictionary usage.
2018-06-20 20:07:25 +02:00
Christian Kratky
caea7910b4
Refactor message processing and async/await usage.
2018-06-16 14:30:02 +02:00
Christian Kratky
6192685671
Remove batch sending of messages to prevent message reordering and several required awaits.
2018-06-15 00:19:51 +02:00
Christian Kratky
20779dfece
Reorganize solution structure.
2018-06-11 00:00:30 +02:00