Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- final class CustomAuthenticationInterceptor: RequestInterceptor {
- let authenticationInterceptor: AuthenticationInterceptor<TokenResolver>
- var isEnabled = true
- init(authenticator: TokenResolver) {
- self.authenticationInterceptor = AuthenticationInterceptor(authenticator: authenticator)
- }
- func adapt(_ urlRequest: URLRequest, for session: Session, completion: @escaping (Result<URLRequest, Error>) -> Void) {
- if isEnabled {
- authenticationInterceptor.adapt(urlRequest, for: session, completion: completion)
- return
- }
- completion(.success(urlRequest))
- }
- func retry(_ request: Request, for session: Session, dueTo error: Error, completion: @escaping (RetryResult) -> Void) {
- if isEnabled {
- authenticationInterceptor.retry(request, for: session, dueTo: error, completion: completion)
- return
- }
- completion(.doNotRetry)
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement