diff --git a/SocketIOClientSwift/SocketIOClient.swift b/SocketIOClientSwift/SocketIOClient.swift index 97db195..7a8e748 100644 --- a/SocketIOClientSwift/SocketIOClient.swift +++ b/SocketIOClientSwift/SocketIOClient.swift @@ -254,6 +254,7 @@ public final class SocketIOClient: NSObject, SocketEngineClient { */ public func emit(event: String, withItems items: [AnyObject]) { guard status == .Connected else { + handleEvent("error", data: ["Tried emitting \(event) when not connected"], isInternalMessage: true) return } @@ -279,6 +280,7 @@ public final class SocketIOClient: NSObject, SocketEngineClient { private func _emit(data: [AnyObject], ack: Int? = nil) { guard status == .Connected else { + handleEvent("error", data: ["Tried emitting when not connected"], isInternalMessage: true) return } @@ -339,7 +341,7 @@ public final class SocketIOClient: NSObject, SocketEngineClient { Causes an event to be handled. Only use if you know what you're doing. */ public func handleEvent(event: String, data: [AnyObject], isInternalMessage: Bool, - wantsAck ack: Int? = nil) { + withAck ack: Int? = nil) { guard status == .Connected || isInternalMessage else { return } diff --git a/SocketIOClientSwift/SocketIOClientOption.swift b/SocketIOClientSwift/SocketIOClientOption.swift index b016813..154c381 100644 --- a/SocketIOClientSwift/SocketIOClientOption.swift +++ b/SocketIOClientSwift/SocketIOClientOption.swift @@ -124,7 +124,7 @@ extension Set where Element: ClientOption { for (rawKey, value) in dict { if let key = rawKey as? String, opt = SocketIOClientOption.keyValueToSocketIOClientOption(key, value: value) { - options.insert(opt) + options.insertIgnore(opt) } } diff --git a/SocketIOClientSwift/SocketParser.swift b/SocketIOClientSwift/SocketParser.swift index 86198c7..6c5c2a6 100644 --- a/SocketIOClientSwift/SocketParser.swift +++ b/SocketIOClientSwift/SocketParser.swift @@ -42,7 +42,7 @@ class SocketParser { switch pack.type { case .Event where isCorrectNamespace(pack.nsp, socket): socket.handleEvent(pack.event, data: pack.args ?? [], - isInternalMessage: false, wantsAck: pack.id) + isInternalMessage: false, withAck: pack.id) case .Ack where isCorrectNamespace(pack.nsp, socket): socket.handleAck(pack.id, data: pack.data) case .BinaryEvent where isCorrectNamespace(pack.nsp, socket): @@ -170,7 +170,7 @@ class SocketParser { if packet.type != .BinaryAck { socket.handleEvent(packet.event, data: packet.args ?? [], - isInternalMessage: false, wantsAck: packet.id) + isInternalMessage: false, withAck: packet.id) } else { socket.handleAck(packet.id, data: packet.args) }