Skip to content

Instantly share code, notes, and snippets.

@Juanpe
Last active March 26, 2019 11:42
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save Juanpe/721a2198bed905becd0cc859628895e4 to your computer and use it in GitHub Desktop.
Save Juanpe/721a2198bed905becd0cc859628895e4 to your computer and use it in GitHub Desktop.
class URLRequestBuilder {
var adapters: [RequestAdapter] = []
// ...rest of properties...
@discardableResult
func add(adapter: RequestAdapter?) -> URLRequestBuilder {
guard let adapter = adapter else { return self }
adapters.append(adapter)
return self
}
// ...rest of sets...
func build() throws -> URLRequest {
do {
try adapters.forEach {
urlRequest = try $0.adapt(urlRequest)
}
// rest of code...
return urlRequest
} catch {
throw APIError.requestBuilderFailed
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment