File tree Expand file tree Collapse file tree
Sources/MultipeerKit/Public API Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -12,8 +12,14 @@ public final class MultipeerTransceiver {
1212 /// Called on the main queue when available peers have changed (new peers discovered or peers removed).
1313 public var availablePeersDidChange : ( [ Peer ] ) -> Void = { _ in }
1414
15+ /// Called on the main queue when a new peer discovered.
16+ public var peerAdded : ( Peer ) -> Void = { _ in }
17+
18+ /// Called on the main queue when a peer removed.
19+ public var peerRemoved : ( Peer ) -> Void = { _ in }
20+
1521 /// All peers currently available for invitation, connection and data transmission.
16- public var availablePeers : [ Peer ] = [ ] {
22+ public private ( set ) var availablePeers : [ Peer ] = [ ] {
1723 didSet {
1824 guard availablePeers != oldValue else { return }
1925
@@ -148,12 +154,14 @@ public final class MultipeerTransceiver {
148154 guard !availablePeers. contains ( peer) else { return }
149155
150156 availablePeers. append ( peer)
157+ peerAdded ( peer)
151158 }
152159
153160 private func handlePeerRemoved( _ peer: Peer ) {
154161 guard let idx = availablePeers. firstIndex ( where: { $0. underlyingPeer == peer. underlyingPeer } ) else { return }
155162
156163 availablePeers. remove ( at: idx)
164+ peerRemoved ( peer)
157165 }
158166
159167 private func handlePeerConnected( _ peer: Peer ) {
You can’t perform that action at this time.
0 commit comments