Christoph Stichlberger
781c5d4d7d
Separate current and reconnect subscsriptions in managed client
This change kills several birds with one stone:
- by performing the re-publishing of all subscriptions only at reconnect it fixes issue https://github.com/chkr1011/MQTTnet/issues/569 (retained messages are received again with every new subscription that is added)
- not sending the subscriptions again with every (un)subscription is also a performance improvement if subscriptions are modified on a regular basis, because only the updated subscriptions are sent to the broker (previously, if you had 100 subscriptions and added a new one, 100 suscriptions were re-sent to the broker along with the new one, causing a significant delay)
-until now subscriptions were sent to the broker only every ConnectionCheckInterval which caused unnecessary delays, and for request-response patterns could cause reponse messages to be missed due to the subscription delay. Now (un)subscriptions are published immediately
Subscriptions are now cleaned up at logout (after the connection stops being maintained). This is in line with the clearing of the _messageQueue in StopAsync
Explanatory note: the _subscriptionsQueuedSignal could ideally be a ManualResetEvent(Slim) but those do not offer an awaitable Wait method, so a SemaphoreSlim is used. This possibly causes a few empty loops in PublishSubscriptionsAsync due to the semaphore being incremented with every SubscribeAsync call but all subscriptions getting processed in one sweep, but those empty loops shouldn't be a problem
5 år sedan
Christian Kratky
b175119008
Refactoring and doc updates.
5 år sedan
Christian Kratky
cfcb858423
Update libs.
5 år sedan
Christian Kratky
5fa12649bf
Merge remote-tracking branch 'origin/develop' into develop
5 år sedan
Christian
a9a09f4ecd
Merge pull request #754 from jltjohanlindqvist/branches/fixUnhandledTaskCrash
Remove if clause that stopped handling of tasks with exceptions
5 år sedan
Christian Kratky
3ff5806dbb
Dispose queue in managed client.
5 år sedan
Christian Kratky
0ec78cf5cc
Merge remote-tracking branch 'origin/develop' into develop
5 år sedan
Christian
c3193c568a
Merge pull request #763 from zawodskoj/master
Fix for #762 - thread pool leak
5 år sedan
Christian Kratky
a1f02284e9
Merge branch 'master' into develop
5 år sedan
Christian Kratky
851db2e808
Merge remote-tracking branch 'origin/master'
5 år sedan
Christian Kratky
073cd5243f
Update docs. Add UnitTests.
5 år sedan
Jimmy Rosenskog
699558e47a
Added exception handling to make sure all tasks are observed to avoid UnobservedTaskException.
5 år sedan
Бессонов Дмитрий
15ff03c136
use C#7.0 for default arguments
5 år sedan
Бессонов Дмитрий
b12e3bc611
fix for #762
5 år sedan
Johan x Lindqvist
61c3e02242
Updated exception message to be in line with other exception messages.
5 år sedan
Johan x Lindqvist
5618c4c1f7
Always access the exception property on the task if it has status IsFaulted.
By checking the Exception property it will consider the task exception as handled which means the finalizer won't throw an unhandled task exception.
5 år sedan
Johan x Lindqvist
ba9ceed7ce
Use Task.WhenAll to handle errors in both tasks.
Previously if there was an exception in the first task that is awaited the second task would not be awaited.
5 år sedan
Johan x Lindqvist
ad1c198e43
Remove if clause that stopped handling of tasks with exceptions.
Now the task is always awaited and thus the exception in the task is handled.
5 år sedan
SeppPenner
2918be18c6
Added automatic labels to the issue templates.
5 år sedan
Christian
248e2a5bdd
Merge pull request #746 from bcrosnier/pr/mqtt5-assigned-client-id
Better handling of AssignedClientIdentifier - chkr1011/MQTTnet#745
5 år sedan
Benjamin Crosnier
1a41415dd1
Allow AssignedClientIdentifier in ClientConnected, ClientDisconnected and ConnectedHandler - Fixes chkr1011/MQTTnet#745
5 år sedan
Christian Kratky
9302e80d73
Merge branch 'develop'
5 år sedan
Christian Kratky
cf6f0ece0e
Add test execution in build script.
5 år sedan
Christian Kratky
50d65f2fed
Update nugets.
5 år sedan
Christian Kratky
4614df7fa5
Update docs.
5 år sedan
Christian
22aedcba09
Merge pull request #744 from JanEggers/pr/fix#743
fixed #743
5 år sedan
Christian Kratky
2767d897a4
Fix serialization issue of MQTTv5 PubRec packet.
5 år sedan
JanEggers
a4420063c0
fixed #743
5 år sedan
Christian Kratky
2320352124
Update docs.
5 år sedan
Christian Kratky
c0b4155ab4
Update docs.
5 år sedan
Christian Kratky
b09f31d654
Fix TCP server adpater when using empty password.
5 år sedan
Christian Kratky
30c33d46f9
Merge remote-tracking branch 'origin/develop' into develop
5 år sedan
Christian
651b79a124
Merge pull request #740 from cslutgen/chain
Fix Client SslStream CRL verification
5 år sedan
Christian Kratky
2e3cf54f11
Add support for different strategies when generating RPC topics.
5 år sedan
Craig Lutgen
d7948afd98
Fix client SslStream certificate chain CRL validation. The logic was inverse and CRLs were never checked.
Add a missing dispose in managed client.
5 år sedan
cslutgen
4cefa1dfa9
Merge pull request #2 from chkr1011/develop
Develop
5 år sedan
Christian Kratky
0cfb8b4020
Remove not async task handling.
5 år sedan
Christian Kratky
9ac726b271
Revert "Remove dedicated UWP builds and code."
This reverts commit 6d0e2c2022
.
5 år sedan
Christian Kratky
232605304e
Revert "Update nugets."
This reverts commit 6c53677e7d
.
5 år sedan
Christian Kratky
6c53677e7d
Update nugets.
5 år sedan
Christian Kratky
6d0e2c2022
Remove dedicated UWP builds and code.
5 år sedan
Christian Kratky
8ad1fb2871
Refactor server certificate classes (breaking change).
5 år sedan
Christian Kratky
4a7ff9e9ed
Add TLS certificate password support for MQTTnet.Server.
5 år sedan
Christian Kratky
f54598c201
Merge branch 'develop'
5 år sedan
Christian Kratky
2300e68fff
Add UnitTests for RPC.
5 år sedan
Christian Kratky
6996824157
Merge branch 'master' into develop
5 år sedan
Christian Kratky
524f695829
Update docs.
5 år sedan
Christian
72faa067cc
Merge pull request #729 from cslutgen/clientcerts
Add Server certificate password and client certificate builders
5 år sedan
SeppPenner
01aa75471c
Updated description of issue templates.
5 år sedan
HansM
048206eb1e
Fixed my spelling mistake from before.
5 år sedan