Skip to content

Commit

Permalink
Rollback unnecessary renaming of Retrier to BaseRetrier
Browse files Browse the repository at this point in the history
  • Loading branch information
PierreMardon committed Jul 26, 2023
1 parent 9cb8f52 commit 6b6146d
Show file tree
Hide file tree
Showing 10 changed files with 22 additions and 22 deletions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import Foundation
import Combine

public protocol FallibleRetrier: BaseRetrier where Failure == Error {}
public protocol FallibleRetrier: Retrier where Failure == Error {}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import Foundation
import Combine

public protocol InfallibleRetrier: BaseRetrier where Failure == Never {}
public protocol InfallibleRetrier: Retrier where Failure == Never {}
2 changes: 1 addition & 1 deletion Sources/SwiftRetrier/Core/Model/Retriers/Repeater.swift
Original file line number Diff line number Diff line change
@@ -1 +1 @@
protocol Repeater: BaseRetrier {}
protocol Repeater: Retrier {}
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
import Foundation
import Combine

public protocol BaseRetrier: Cancellable, AnyObject {
public protocol Retrier: Cancellable, AnyObject {
associatedtype Output
associatedtype Failure: Error

func publisher() -> AnyPublisher<Result<Output, Error>, Failure>
}

public extension BaseRetrier {
public extension Retrier {

func publisher(propagateCancellation: Bool) -> AnyPublisher<Result<Output, Error>, Failure> {
if propagateCancellation {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import Foundation
import Combine

public protocol SingleOutputRetrier: BaseRetrier {
public protocol SingleOutputRetrier: Retrier {

var value: Output { get async throws }
}
Expand Down
10 changes: 5 additions & 5 deletions Sources/SwiftRetrier/DSL/BuilderEntryPoints.swift
Original file line number Diff line number Diff line change
Expand Up @@ -4,20 +4,20 @@ public func withExponentialBackoff(
timeSlot: TimeInterval = ExponentialBackoffConstants.defaultTimeSlot,
maxDelay: TimeInterval = ExponentialBackoffConstants.defaultMaxDelay,
jitter: ExponentialBackoffInfallibleRetryPolicy.Jitter = ExponentialBackoffConstants.defaultJitter
) -> Retrier {
) -> ColdInfallibleRetrier {
let policy = ExponentialBackoffInfallibleRetryPolicy(timeSlot: timeSlot,
maxDelay: maxDelay,
jitter: jitter)
return Retrier(policy: policy, conditionPublisher: nil)
return ColdInfallibleRetrier(policy: policy, conditionPublisher: nil)
}

public func withConstantDelay(
_ delay: TimeInterval = ConstantBackoffConstants.defaultDelay
) -> Retrier {
) -> ColdInfallibleRetrier {
let policy = ConstantBackoffInfallibleRetryPolicy(delay: delay)
return Retrier(policy: policy, conditionPublisher: nil)
return ColdInfallibleRetrier(policy: policy, conditionPublisher: nil)
}

public func withNoDelay() -> Retrier {
public func withNoDelay() -> ColdInfallibleRetrier {
withConstantDelay(0)
}
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
import Foundation
import Combine

public struct Retrier {
public struct ColdInfallibleRetrier {
let policy: InfallibleRetryPolicy
let conditionPublisher: AnyPublisher<Bool, Never>?
}

public extension Retrier {
public extension ColdInfallibleRetrier {

func failingOn(
maxAttempts: UInt = UInt.max,
Expand All @@ -18,9 +18,9 @@ public extension Retrier {

func onlyWhen<P>(
_ conditionPublisher: P
) -> Retrier where P: Publisher, P.Output == Bool, P.Failure == Never {
Retrier(policy: policy,
conditionPublisher: conditionPublisher.eraseToAnyPublisher())
) -> ColdInfallibleRetrier where P: Publisher, P.Output == Bool, P.Failure == Never {
ColdInfallibleRetrier(policy: policy,
conditionPublisher: conditionPublisher.eraseToAnyPublisher())
}

func repeating(withDelay repeatDelay: TimeInterval) -> ColdInfallibleRepeater {
Expand Down
8 changes: 4 additions & 4 deletions Sources/SwiftRetrier/TypeErasing/AnyRetrier.swift
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
import Foundation
import Combine

public class AnyRetrier<Output, Failure: Error>: BaseRetrier {
public class AnyRetrier<Output, Failure: Error>: Retrier {

public let publisherBlock: () -> AnyPublisher<Result<Output, Error>, Failure>
private let cancelBlock: () -> Void

public init<R>(_ retrier: R) where R: BaseRetrier, R.Output == Output, R.Failure == Failure {
public init<R>(_ retrier: R) where R: Retrier, R.Output == Output, R.Failure == Failure {
self.publisherBlock = retrier.publisher
self.cancelBlock = retrier.cancel
}

public init<R>(_ retrier: R) where R: BaseRetrier, R.Output == Output, R.Failure == Never {
public init<R>(_ retrier: R) where R: Retrier, R.Output == Output, R.Failure == Never {
self.publisherBlock = {
retrier.publisher()
.setFailureType(to: Failure.self)
Expand All @@ -29,7 +29,7 @@ public class AnyRetrier<Output, Failure: Error>: BaseRetrier {
}
}

extension BaseRetrier {
extension Retrier {
public func eraseToAnyRetrier() -> AnyRetrier<Output, Failure> {
AnyRetrier<Output, Failure>(self)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import XCTest
@testable import SwiftRetrier
import Combine

class ConditionalRetrierTests<R: BaseRetrier>: XCTestCase {
class ConditionalRetrierTests<R: Retrier>: XCTestCase {

var retrier: ((AnyPublisher<Bool, Never>, @escaping Job<Void>) -> R)!

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import Foundation
import XCTest
@testable import SwiftRetrier

class RetrierTests<R: BaseRetrier>: XCTestCase {
class RetrierTests<R: Retrier>: XCTestCase {

var retrier: ((@escaping Job<Void>) -> R)!

Expand Down

0 comments on commit 6b6146d

Please sign in to comment.