refactoring
This commit is contained in:
parent
db63aa63c2
commit
e0c794cb9f
@ -1283,6 +1283,7 @@
|
|||||||
SDKROOT = appletvos;
|
SDKROOT = appletvos;
|
||||||
SKIP_INSTALL = YES;
|
SKIP_INSTALL = YES;
|
||||||
TARGETED_DEVICE_FAMILY = "1,2";
|
TARGETED_DEVICE_FAMILY = "1,2";
|
||||||
|
TVOS_DEPLOYMENT_TARGET = 9.0;
|
||||||
VERSIONING_SYSTEM = "apple-generic";
|
VERSIONING_SYSTEM = "apple-generic";
|
||||||
VERSION_INFO_PREFIX = "";
|
VERSION_INFO_PREFIX = "";
|
||||||
};
|
};
|
||||||
@ -1333,6 +1334,7 @@
|
|||||||
SDKROOT = appletvos;
|
SDKROOT = appletvos;
|
||||||
SKIP_INSTALL = YES;
|
SKIP_INSTALL = YES;
|
||||||
TARGETED_DEVICE_FAMILY = "1,2";
|
TARGETED_DEVICE_FAMILY = "1,2";
|
||||||
|
TVOS_DEPLOYMENT_TARGET = 9.0;
|
||||||
VALIDATE_PRODUCT = YES;
|
VALIDATE_PRODUCT = YES;
|
||||||
VERSIONING_SYSTEM = "apple-generic";
|
VERSIONING_SYSTEM = "apple-generic";
|
||||||
VERSION_INFO_PREFIX = "";
|
VERSION_INFO_PREFIX = "";
|
||||||
|
|||||||
@ -34,7 +34,7 @@ public final class SocketEngine: NSObject, SocketEngineSpec, WebSocketDelegate {
|
|||||||
|
|
||||||
public weak var client: SocketEngineClient?
|
public weak var client: SocketEngineClient?
|
||||||
|
|
||||||
private typealias Probe = (msg: String, type: SocketEnginePacketType, data: [NSData]?)
|
private typealias Probe = (msg: String, type: SocketEnginePacketType, data: [NSData])
|
||||||
private typealias ProbeWaitQueue = [Probe]
|
private typealias ProbeWaitQueue = [Probe]
|
||||||
|
|
||||||
private let allowedCharacterSet = NSCharacterSet(charactersInString: "!*'();:@&=+$,/?%#[]\" {}").invertedSet
|
private let allowedCharacterSet = NSCharacterSet(charactersInString: "!*'();:@&=+$,/?%#[]\" {}").invertedSet
|
||||||
@ -124,11 +124,11 @@ public final class SocketEngine: NSObject, SocketEngineSpec, WebSocketDelegate {
|
|||||||
private func checkIfMessageIsBase64Binary(var message: String) {
|
private func checkIfMessageIsBase64Binary(var message: String) {
|
||||||
if message.hasPrefix("b4") {
|
if message.hasPrefix("b4") {
|
||||||
// binary in base64 string
|
// binary in base64 string
|
||||||
message.removeRange(Range<String.Index>(start: message.startIndex,
|
message.removeRange(Range(start: message.startIndex,
|
||||||
end: message.startIndex.advancedBy(2)))
|
end: message.startIndex.advancedBy(2)))
|
||||||
|
|
||||||
if let data = NSData(base64EncodedString: message,
|
if let data = NSData(base64EncodedString: message,
|
||||||
options: NSDataBase64DecodingOptions.IgnoreUnknownCharacters) {
|
options: .IgnoreUnknownCharacters) {
|
||||||
client?.parseBinaryData(data)
|
client?.parseBinaryData(data)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -419,7 +419,7 @@ public final class SocketEngine: NSObject, SocketEngineSpec, WebSocketDelegate {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Send an engine message (4)
|
/// Send an engine message (4)
|
||||||
public func send(msg: String, withData datas: [NSData]?) {
|
public func send(msg: String, withData datas: [NSData]) {
|
||||||
if probing {
|
if probing {
|
||||||
probeWait.append((msg, .Message, datas))
|
probeWait.append((msg, .Message, datas))
|
||||||
} else {
|
} else {
|
||||||
@ -436,7 +436,7 @@ public final class SocketEngine: NSObject, SocketEngineSpec, WebSocketDelegate {
|
|||||||
}
|
}
|
||||||
|
|
||||||
++pongsMissed
|
++pongsMissed
|
||||||
write("", withType: .Ping, withData: nil)
|
write("", withType: .Ping, withData: [])
|
||||||
}
|
}
|
||||||
|
|
||||||
// Starts the ping timer
|
// Starts the ping timer
|
||||||
@ -465,16 +465,16 @@ public final class SocketEngine: NSObject, SocketEngineSpec, WebSocketDelegate {
|
|||||||
/**
|
/**
|
||||||
Write a message, independent of transport.
|
Write a message, independent of transport.
|
||||||
*/
|
*/
|
||||||
public func write(msg: String, withType type: SocketEnginePacketType, withData data: [NSData]?) {
|
public func write(msg: String, withType type: SocketEnginePacketType, withData data: [NSData]) {
|
||||||
dispatch_async(emitQueue) {
|
dispatch_async(emitQueue) {
|
||||||
if self.connected {
|
if self.connected {
|
||||||
if self.websocket {
|
if self.websocket {
|
||||||
DefaultSocketLogger.Logger.log("Writing ws: %@ has data: %@", type: self.logType, args: msg,
|
DefaultSocketLogger.Logger.log("Writing ws: %@ has data: %@", type: self.logType, args: msg,
|
||||||
data == nil ? false : true)
|
data.count == 0 ? false : true)
|
||||||
self.sendWebSocketMessage(msg, withType: type, datas: data)
|
self.sendWebSocketMessage(msg, withType: type, datas: data)
|
||||||
} else {
|
} else {
|
||||||
DefaultSocketLogger.Logger.log("Writing poll: %@ has data: %@", type: self.logType, args: msg,
|
DefaultSocketLogger.Logger.log("Writing poll: %@ has data: %@", type: self.logType, args: msg,
|
||||||
data == nil ? false : true)
|
data.count == 0 ? false : true)
|
||||||
self.sendPollMessage(msg, withType: type, datas: data)
|
self.sendPollMessage(msg, withType: type, datas: data)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -37,6 +37,6 @@ import Foundation
|
|||||||
|
|
||||||
func close()
|
func close()
|
||||||
func open(opts: [String: AnyObject]?)
|
func open(opts: [String: AnyObject]?)
|
||||||
func send(msg: String, withData datas: [NSData]?)
|
func send(msg: String, withData datas: [NSData])
|
||||||
func write(msg: String, withType type: SocketEnginePacketType, withData data: [NSData]?)
|
func write(msg: String, withType type: SocketEnginePacketType, withData data: [NSData])
|
||||||
}
|
}
|
||||||
|
|||||||
@ -30,6 +30,6 @@ struct SocketEventHandler {
|
|||||||
let callback: NormalCallback
|
let callback: NormalCallback
|
||||||
|
|
||||||
func executeCallback(items: [AnyObject], withAck ack: Int, withSocket socket: SocketIOClient) {
|
func executeCallback(items: [AnyObject], withAck ack: Int, withSocket socket: SocketIOClient) {
|
||||||
self.callback(items, SocketAckEmitter(socket: socket, ackNum: ack))
|
callback(items, SocketAckEmitter(socket: socket, ackNum: ack))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -44,7 +44,7 @@ public final class SocketIOClient: NSObject, SocketEngineClient {
|
|||||||
|
|
||||||
private var anyHandler: ((SocketAnyEvent) -> Void)?
|
private var anyHandler: ((SocketAnyEvent) -> Void)?
|
||||||
private var currentReconnectAttempt = 0
|
private var currentReconnectAttempt = 0
|
||||||
private var handlers = ContiguousArray<SocketEventHandler>()
|
private var handlers = [SocketEventHandler]()
|
||||||
private var connectParams: [String: AnyObject]?
|
private var connectParams: [String: AnyObject]?
|
||||||
private var reconnectTimer: NSTimer?
|
private var reconnectTimer: NSTimer?
|
||||||
private var ackHandlers = SocketAckManager()
|
private var ackHandlers = SocketAckManager()
|
||||||
@ -288,11 +288,7 @@ public final class SocketIOClient: NSObject, SocketEngineClient {
|
|||||||
|
|
||||||
DefaultSocketLogger.Logger.log("Emitting: %@", type: logType, args: str)
|
DefaultSocketLogger.Logger.log("Emitting: %@", type: logType, args: str)
|
||||||
|
|
||||||
if packet.type == .BinaryEvent {
|
|
||||||
engine?.send(str, withData: packet.binary)
|
engine?.send(str, withData: packet.binary)
|
||||||
} else {
|
|
||||||
engine?.send(str, withData: nil)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// If the server wants to know that the client received data
|
// If the server wants to know that the client received data
|
||||||
@ -304,12 +300,7 @@ public final class SocketIOClient: NSObject, SocketEngineClient {
|
|||||||
|
|
||||||
DefaultSocketLogger.Logger.log("Emitting Ack: %@", type: self.logType, args: str)
|
DefaultSocketLogger.Logger.log("Emitting Ack: %@", type: self.logType, args: str)
|
||||||
|
|
||||||
if packet.type == SocketPacket.PacketType.BinaryAck {
|
|
||||||
self.engine?.send(str, withData: packet.binary)
|
self.engine?.send(str, withData: packet.binary)
|
||||||
} else {
|
|
||||||
self.engine?.send(str, withData: nil)
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -362,7 +353,7 @@ public final class SocketIOClient: NSObject, SocketEngineClient {
|
|||||||
*/
|
*/
|
||||||
public func leaveNamespace() {
|
public func leaveNamespace() {
|
||||||
if nsp != "/" {
|
if nsp != "/" {
|
||||||
engine?.send("1\(nsp)", withData: nil)
|
engine?.send("1\(nsp)", withData: [])
|
||||||
nsp = "/"
|
nsp = "/"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -374,7 +365,7 @@ public final class SocketIOClient: NSObject, SocketEngineClient {
|
|||||||
DefaultSocketLogger.Logger.log("Joining namespace", type: logType)
|
DefaultSocketLogger.Logger.log("Joining namespace", type: logType)
|
||||||
|
|
||||||
if nsp != "/" {
|
if nsp != "/" {
|
||||||
engine?.send("0\(nsp)", withData: nil)
|
engine?.send("0\(nsp)", withData: [])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -392,7 +383,7 @@ public final class SocketIOClient: NSObject, SocketEngineClient {
|
|||||||
public func off(event: String) {
|
public func off(event: String) {
|
||||||
DefaultSocketLogger.Logger.log("Removing handler for event: %@", type: logType, args: event)
|
DefaultSocketLogger.Logger.log("Removing handler for event: %@", type: logType, args: event)
|
||||||
|
|
||||||
handlers = ContiguousArray(handlers.filter { $0.event != event })
|
handlers = handlers.filter { $0.event != event }
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -415,7 +406,7 @@ public final class SocketIOClient: NSObject, SocketEngineClient {
|
|||||||
|
|
||||||
let handler = SocketEventHandler(event: event, id: id) {[weak self] data, ack in
|
let handler = SocketEventHandler(event: event, id: id) {[weak self] data, ack in
|
||||||
guard let this = self else {return}
|
guard let this = self else {return}
|
||||||
this.handlers = ContiguousArray(this.handlers.filter {$0.id != id})
|
this.handlers = this.handlers.filter {$0.id != id}
|
||||||
callback(data, ack)
|
callback(data, ack)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -45,7 +45,7 @@ struct SocketPacket {
|
|||||||
if data.count == 0 {
|
if data.count == 0 {
|
||||||
return nil
|
return nil
|
||||||
} else {
|
} else {
|
||||||
if type == PacketType.Event || type == PacketType.BinaryEvent {
|
if type == .Event || type == .BinaryEvent {
|
||||||
arr.removeAtIndex(0)
|
arr.removeAtIndex(0)
|
||||||
return arr
|
return arr
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user