Skip to content

Commit 6ca5b29

Browse files
committed
Fixed bug where the retry handler would not initially fire
1 parent 788c168 commit 6ca5b29

File tree

2 files changed

+5
-4
lines changed

2 files changed

+5
-4
lines changed

ActionCableClient.podspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |s|
22
s.name = "ActionCableClient"
3-
s.version = "0.1.4"
3+
s.version = "0.1.5"
44
s.summary = "A Swift client for the Rails ActionCable WebSocket server."
55
s.description = <<-DESC
66
ActionCable is a new WebSocket server being released with Rails 5 which makes it easy to add real-time features to your app. This Swift client makes it dead-simple to connect with that server, abstracting away everything except what you need to get going.

Pod/Classes/RetryHandler.swift

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,11 +34,11 @@ public enum RetryStrategy {
3434
case .LogarithmicBackoff(let maxRetries, let maxIntervalTime):
3535
if (retries > maxRetries) { return 0.0 }
3636
let interval = 5 * log(Double(retries))
37-
return NSTimeInterval(clamp(interval, lower: 0.0, upper: Double(maxIntervalTime)))
37+
return NSTimeInterval(clamp(interval, lower: 0.1, upper: Double(maxIntervalTime)))
3838
case .ExponentialBackoff(let maxRetries, let maxIntervalTime):
3939
if (retries > maxRetries) { return 0.0 }
4040
let interval = exp2(Double(retries))
41-
return NSTimeInterval(clamp(Double(interval), lower: 0.0, upper: Double(maxIntervalTime)))
41+
return NSTimeInterval(clamp(Double(interval), lower: 0.1, upper: Double(maxIntervalTime)))
4242
case .Linear(let maxRetries, let intervalTime):
4343
if (retries > maxRetries) { return 0.0 }
4444
return NSTimeInterval(intervalTime)
@@ -72,13 +72,14 @@ internal class RetryHandler : NSObject {
7272
if (interval > 0.0) {
7373
self.timer = NSTimer.scheduledTimerWithTimeInterval(interval,
7474
target: self,
75-
selector: #selector(RetryHandler.fire(_:)),
75+
selector: #selector(self.fire(_:)),
7676
userInfo: nil,
7777
repeats: false)
7878
}
7979
}
8080

8181
internal func fire(timer : NSTimer) {
82+
8283
if let callback = self.callback {
8384
callback()
8485
}

0 commit comments

Comments
 (0)