@@ -356,7 +356,7 @@ class SocketEngine: NSObject, SRWebSocketDelegate {
356356
357357 private func probeWebSocket( ) {
358358 if self . websocketConnected {
359- self . ws ? . send ( " 2probe " )
359+ self . sendWebSocketMessage ( " probe " , withType : PacketType . PING )
360360 }
361361 }
362362
@@ -368,9 +368,11 @@ class SocketEngine: NSObject, SRWebSocketDelegate {
368368 }
369369
370370 if self !. websocket {
371- self ? . sendWebSocketMessage ( msg, datas: datas)
371+ // println("sending ws: \(msg)")
372+ self ? . sendWebSocketMessage ( msg, withType: PacketType . MESSAGE, datas: datas)
372373 } else {
373- self ? . sendPollMessage ( msg, datas: datas)
374+ // println("sending poll: \(msg)")
375+ self ? . sendPollMessage ( msg, withType: PacketType . MESSAGE, datas: datas)
374376 }
375377 }
376378 }
@@ -383,42 +385,21 @@ class SocketEngine: NSObject, SRWebSocketDelegate {
383385 }
384386
385387 func sendPing( ) {
388+ // println("sending ping")
389+
386390 if self . websocket {
387- self . ws ? . send ( PacketType . PING. rawValue )
391+ self . sendWebSocketMessage ( " " , withType : PacketType . PING)
388392 } else {
389- let time = Int ( NSDate ( ) . timeIntervalSince1970)
390- var req = NSMutableURLRequest ( URL: NSURL ( string:
391- self . urlPolling! + " &sid= \( self . sid) " ) !)
392- let postStr = " 1: \( PacketType . PING. rawValue) "
393- let postData = postStr. dataUsingEncoding ( NSUTF8StringEncoding, allowLossyConversion: false ) !
394- let postLength = " \( postData. length) "
395-
396- req. HTTPMethod = " POST "
397- req. setValue ( postLength, forHTTPHeaderField: " Content-Length " )
398- req. setValue ( " application/html-text " , forHTTPHeaderField: " Content-Type " )
399- req. HTTPBody = postData
400-
401- NSURLConnection . sendAsynchronousRequest ( req,
402- queue: self . workQueue) { [ weak self] res, data, err in
403- if self == nil {
404- return
405- } else if err != nil {
406- // println(err)
407- self ? . handlePollingFailed ( )
408- return
409- }
410-
411- self ? . doPoll ( )
412- }
393+ self . sendPollMessage ( " " , withType: PacketType . PING)
413394 }
414395 }
415396
416- func sendPollMessage( msg: String , datas: [ NSData ] ? ) {
397+ private func sendPollMessage( msg: String , withType type : PacketType , datas: [ NSData ] ? = nil ) {
417398 // println("Sending: \(msg)")
418399 var postData : NSData
419400 var bDatas : [ String ] ?
420401 var req = NSMutableURLRequest ( URL:
421- NSURL ( string: self . urlPolling! + " &sid= \( self . sid) " ) !)
402+ NSURL ( string: self . urlPolling! + " &sid= \( self . sid) " ) !)
422403
423404 req. HTTPMethod = " POST "
424405 req. setValue ( " application/html-text " , forHTTPHeaderField: " Content-Type " )
@@ -433,8 +414,7 @@ class SocketEngine: NSObject, SRWebSocketDelegate {
433414 }
434415 }
435416
436- let strMsg = " \( PacketType . MESSAGE. rawValue) \( msg) "
437-
417+ let strMsg = " \( type. rawValue) \( msg) "
438418 let postCount = countElements ( strMsg)
439419 var postStr = " \( postCount) : \( strMsg) "
440420
@@ -460,8 +440,8 @@ class SocketEngine: NSObject, SRWebSocketDelegate {
460440 }
461441 }
462442
463- func sendWebSocketMessage( str: String , datas: [ NSData ] ? ) {
464- self . ws? . send ( " \( PacketType . MESSAGE . rawValue) \( str) " )
443+ private func sendWebSocketMessage( str: String , withType type : PacketType , datas: [ NSData ] ? = nil ) {
444+ self . ws? . send ( " \( type . rawValue) \( str) " )
465445
466446 if datas != nil {
467447 for data in datas! {
@@ -491,7 +471,7 @@ class SocketEngine: NSObject, SRWebSocketDelegate {
491471 self . probing = false
492472 self . _websocket = true
493473 self . _polling = false
494- self . ws ? . send ( PacketType . UPGRADE. rawValue )
474+ self . sendWebSocketMessage ( " " , withType : PacketType . UPGRADE)
495475 self . flushProbeWait ( )
496476 }
497477 }
0 commit comments