From 3c9c473e7087ad764c77f524aee0983845f93f2e Mon Sep 17 00:00:00 2001 From: Erik Date: Mon, 27 Jul 2015 17:12:57 -0400 Subject: [PATCH] clean up socketpacket --- SocketIOClientSwift/SocketPacket.swift | 62 ++++++++++++++------------ 1 file changed, 33 insertions(+), 29 deletions(-) diff --git a/SocketIOClientSwift/SocketPacket.swift b/SocketIOClientSwift/SocketPacket.swift index 1287f3b..9ce91bb 100644 --- a/SocketIOClientSwift/SocketPacket.swift +++ b/SocketIOClientSwift/SocketPacket.swift @@ -73,22 +73,6 @@ struct SocketPacket { self.binary = binary } - static func packetFromEmitWithData(data:[AnyObject], id:Int, nsp:String) -> SocketPacket { - let (parsedData, binary) = deconstructData(data) - let packet = SocketPacket(type: findType(binary.count, ack: false), data: parsedData, - id: id, nsp: nsp, placeholders: -1, binary: binary) - - return packet - } - - static func packetFromEmitAckWithData(data:[AnyObject], id:Int, nsp:String) -> SocketPacket { - let (parsedData, binary) = deconstructData(data) - let packet = SocketPacket(type: findType(binary.count, ack: true), data: parsedData, - id: id, nsp: nsp, placeholders: -1, binary: binary) - - return packet - } - mutating func addData(data:NSData) -> Bool { if placeholders == currentPlace { return true @@ -144,7 +128,7 @@ struct SocketPacket { } func createAck() -> String { - var msg:String + let msg:String if type == PacketType.ACK { if nsp == "/" { @@ -242,6 +226,23 @@ struct SocketPacket { } } + func getEvent() -> String { + return data[0] as! String + } + + func getArgs() -> [AnyObject]? { + var arr = data + + if data.count == 0 { + return nil + } else { + arr.removeAtIndex(0) + return arr + } + } +} + +extension SocketPacket { private static func findType(binCount:Int, ack:Bool) -> PacketType { switch binCount { case 0 where !ack: @@ -257,21 +258,24 @@ struct SocketPacket { } } - func getEvent() -> String { - return data[0] as! String - } - - func getArgs() -> [AnyObject]? { - var arr = data + static func packetFromEmitWithData(data:[AnyObject], id:Int, nsp:String) -> SocketPacket { + let (parsedData, binary) = deconstructData(data) + let packet = SocketPacket(type: findType(binary.count, ack: false), data: parsedData, + id: id, nsp: nsp, placeholders: -1, binary: binary) - if data.count == 0 { - return nil - } else { - arr.removeAtIndex(0) - return arr - } + return packet } + static func packetFromEmitAckWithData(data:[AnyObject], id:Int, nsp:String) -> SocketPacket { + let (parsedData, binary) = deconstructData(data) + let packet = SocketPacket(type: findType(binary.count, ack: true), data: parsedData, + id: id, nsp: nsp, placeholders: -1, binary: binary) + + return packet + } +} + +extension SocketPacket { private static func shred(data:AnyObject, inout binary:[NSData]) -> AnyObject { if let bin = data as? NSData { let placeholder = ["_placeholder" :true, "num": binary.count]