File tree Expand file tree Collapse file tree 2 files changed +12
-9
lines changed Expand file tree Collapse file tree 2 files changed +12
-9
lines changed Original file line number Diff line number Diff line change @@ -411,9 +411,9 @@ public final class MQTTClient {
411
411
}
412
412
413
413
var connectionParameters = ConnectionParameters ( )
414
- var publishListeners = MQTTListeners < MQTTPublishInfo > ( )
415
- var closeListeners = MQTTListeners < Void > ( )
416
- var shutdownListeners = MQTTListeners < Void > ( )
414
+ let publishListeners = MQTTListeners < MQTTPublishInfo > ( )
415
+ let closeListeners = MQTTListeners < Void > ( )
416
+ let shutdownListeners = MQTTListeners < Void > ( )
417
417
private var _connection : MQTTConnection ?
418
418
private var lock = NIOLock ( )
419
419
}
Original file line number Diff line number Diff line change 14
14
import NIO
15
15
import NIOConcurrencyHelpers
16
16
17
- class MQTTListeners < ReturnType> {
17
+ final class MQTTListeners < ReturnType> {
18
18
typealias Listener = ( Result < ReturnType , Error > ) -> Void
19
19
20
20
func notify( _ result: Result < ReturnType , Error > ) {
21
- self . lock. withLock {
22
- listeners. values. forEach { listener in
23
- listener ( result)
24
- }
21
+ let listeners = self . lock. withLock {
22
+ return self . listeners
23
+ }
24
+ listeners. values. forEach { listener in
25
+ listener ( result)
25
26
}
26
27
}
27
28
@@ -38,7 +39,9 @@ class MQTTListeners<ReturnType> {
38
39
}
39
40
40
41
func removeAll( ) {
41
- self . listeners = [ : ]
42
+ self . lock. withLock {
43
+ self . listeners = [ : ]
44
+ }
42
45
}
43
46
44
47
private let lock = NIOLock ( )
You can’t perform that action at this time.
0 commit comments