fix reconnect

This commit is contained in:
Erik 2015-03-03 22:39:37 -05:00
parent 7e0549611f
commit 16fd043632
2 changed files with 8 additions and 9 deletions

View File

@ -103,18 +103,21 @@ class SocketEngine: NSObject, SRWebSocketDelegate {
NSURLConnection.sendAsynchronousRequest(reqPolling, queue: self.pollingQueue) {[weak self] res, data, err in NSURLConnection.sendAsynchronousRequest(reqPolling, queue: self.pollingQueue) {[weak self] res, data, err in
var err:NSError? var err:NSError?
if self == nil {
if self == nil || err != nil || data == nil { return
} else if err != nil || data == nil {
println("Error") println("Error")
println(err) println(err)
exit(1) if !self!.client.reconnecting {
self?.client.tryReconnect(triesLeft: self!.client.reconnectAttempts)
}
return
} }
let sub = data.subdataWithRange(NSMakeRange(5, data.length - 5)) let sub = data.subdataWithRange(NSMakeRange(5, data.length - 5))
if let json = NSJSONSerialization.JSONObjectWithData(sub, if let json = NSJSONSerialization.JSONObjectWithData(sub,
options: NSJSONReadingOptions.AllowFragments, error: &err) as? NSDictionary { options: NSJSONReadingOptions.AllowFragments, error: &err) as? NSDictionary {
println(json)
if let sid = json["sid"] as? String { if let sid = json["sid"] as? String {
self?.sid = sid self?.sid = sid

View File

@ -750,7 +750,7 @@ class SocketIOClient: NSObject {
} }
// We lost connection and should attempt to reestablish // We lost connection and should attempt to reestablish
private func tryReconnect(var #triesLeft:Int) { func tryReconnect(var #triesLeft:Int) {
if triesLeft != -1 && triesLeft <= 0 { if triesLeft != -1 && triesLeft <= 0 {
self.connecting = false self.connecting = false
self.reconnects = false self.reconnects = false
@ -846,8 +846,4 @@ class SocketIOClient: NSObject {
self.tryReconnect(triesLeft: self.reconnectAttempts) self.tryReconnect(triesLeft: self.reconnectAttempts)
} }
} }
func testEngine() {
self.engine.open()
}
} }