Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class CommunicationManager: CommunicatorDelegate {
- static let shared = CommunicationManager() // Making singleton
- var multiPeerCommunicator: MultiPeerCommunicator!
- var delegate: ManagerDelegate! // Delegate to talk to ViewController
- private init() {
- self.multiPeerCommunicator = MultiPeerCommunicator() //Setting up the instance of MultiPeerCommunicator
- self.multiPeerCommunicator.delegate = self // Setting up the delegate
- }
- var listOfBlabbers: [String : Blabber] = [:]
- func didFoundUser(userID: String, userName: String?) {
- // If Blabber already exsists, just making him online:
- if let newBlabber = listOfBlabbers[userID] {
- newBlabber.online = true
- } else {
- // If not adding him to the list:
- let newBlabber = Blabber(id: userID, name: userName)
- newBlabber.online = true
- listOfBlabbers[userID] = newBlabber
- }
- DispatchQueue.main.async {
- self.delegate.globalUpdate()
- }
- }
- func didLostUser(userID: String) {
- if let newBlabber = listOfBlabbers[userID] {
- newBlabber.online = false
- listOfBlabbers.removeValue(forKey: userID)
- }
- DispatchQueue.main.async {
- self.delegate.globalUpdate()
- }
- }
- func failedToStartBrowsingForUsers(error: Error) {
- print(error.localizedDescription)
- }
- func failedToStartAdvertisingForUsers(error: Error) {
- print(error.localizedDescription)
- }
- func didReceiveMessage(text: String, fromUser: String, toUser: String) {
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement