Skip to content

Commit 31cca8a

Browse files
authored
feat(interceptor): Allow to throw when adapting (#27)
1 parent 28af420 commit 31cca8a

File tree

3 files changed

+4
-4
lines changed

3 files changed

+4
-4
lines changed

Sources/SimpleHTTP/Interceptor/CompositeInterceptor.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,10 @@ public struct CompositeInterceptor: ExpressibleByArrayLiteral, Sequence {
1414
}
1515

1616
extension CompositeInterceptor: Interceptor {
17-
public func adaptRequest<Output>(_ request: Request<Output>) async -> Request<Output> {
17+
public func adaptRequest<Output>(_ request: Request<Output>) async throws -> Request<Output> {
1818
var request = request
1919
for interceptor in interceptors {
20-
request = await interceptor.adaptRequest(request)
20+
request = try await interceptor.adaptRequest(request)
2121
}
2222

2323
return request

Sources/SimpleHTTP/Interceptor/Interceptor.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ public typealias Interceptor = RequestInterceptor & ResponseInterceptor
55
/// a protocol intercepting a session request
66
public protocol RequestInterceptor {
77
/// Should be called before making the request to provide modifications to `request`
8-
func adaptRequest<Output>(_ request: Request<Output>) async -> Request<Output>
8+
func adaptRequest<Output>(_ request: Request<Output>) async throws -> Request<Output>
99

1010
/// catch and retry a failed request
1111
/// - Returns: nil if the request should not be retried. Otherwise a publisher that will be executed before

Sources/SimpleHTTP/Session/Session.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ public class Session {
6666

6767
extension Session {
6868
private func dataPublisher<Output>(for request: Request<Output>) async throws -> Response<Output> {
69-
let modifiedRequest = await config.interceptor.adaptRequest(request)
69+
let modifiedRequest = try await config.interceptor.adaptRequest(request)
7070
let urlRequest = try modifiedRequest
7171
.toURLRequest(encoder: config.encoder, relativeTo: baseURL, accepting: config.decoder)
7272

0 commit comments

Comments
 (0)