Skip to content

Commit 543a3c8

Browse files
committed
add toggle for polling only
1 parent 1a63088 commit 543a3c8

File tree

2 files changed

+15
-6
lines changed

2 files changed

+15
-6
lines changed

SwiftIO/SocketEngine.swift

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ class SocketEngine: NSObject, SRWebSocketDelegate {
5151
private let workQueue = NSOperationQueue()
5252
private let handleQueue = dispatch_queue_create(
5353
"handleQueue".cStringUsingEncoding(NSUTF8StringEncoding), DISPATCH_QUEUE_SERIAL)
54+
private var forcePolling = false
5455
private var pingTimer:NSTimer?
5556
private var _polling = true
5657
private var probing = false
@@ -70,8 +71,9 @@ class SocketEngine: NSObject, SRWebSocketDelegate {
7071
}
7172
var ws:SRWebSocket?
7273

73-
init(client:SocketIOClient) {
74+
init(client:SocketIOClient, forcePolling:Bool = false) {
7475
self.client = client
76+
self.forcePolling = forcePolling
7577
}
7678

7779
func close() {
@@ -220,10 +222,12 @@ class SocketEngine: NSObject, SRWebSocketDelegate {
220222
// println(json)
221223
self?.sid = sid
222224

223-
self?.ws = SRWebSocket(URL:
224-
NSURL(string: urlWebSocket + "&sid=\(self!.sid)")!)
225-
self?.ws?.delegate = self
226-
self?.ws?.open()
225+
if !self!.forcePolling {
226+
self?.ws = SRWebSocket(URL:
227+
NSURL(string: urlWebSocket + "&sid=\(self!.sid)")!)
228+
self?.ws?.delegate = self
229+
self?.ws?.open()
230+
}
227231
} else {
228232
NSLog("Error handshaking")
229233
return

SwiftIO/SocketIOClient.swift

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ class SocketIOClient {
3636
private lazy var params:[String: AnyObject] = [String: AnyObject]()
3737
private var ackHandlers = [SocketAckHandler]()
3838
private var currentAck = -1
39+
private var forcePolling = false
3940
private var handlers = [SocketEventHandler]()
4041
private var lastSocketMessage:SocketEvent?
4142
private var paramConnect = false
@@ -82,9 +83,13 @@ class SocketIOClient {
8283
if let nsp = opts!["nsp"] as? String {
8384
self.nsp = nsp
8485
}
86+
87+
if let polling = opts!["forcePolling"] as? Bool {
88+
self.forcePolling = polling
89+
}
8590
}
8691

87-
self.engine = SocketEngine(client: self)
92+
self.engine = SocketEngine(client: self, forcePolling: self.forcePolling)
8893
}
8994

9095
// Closes the socket

0 commit comments

Comments
 (0)