You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
session-ios/SessionUtilitiesKit/Networking/NetworkError.swift

45 lines
2.0 KiB
Swift

// Copyright © 2022 Rangeproof Pty Ltd. All rights reserved.
//
// stringlint:disable
import Foundation
public enum NetworkError: Error, Equatable, CustomStringConvertible {
case invalidURL
case invalidPreparedRequest
case notFound
case parsingFailed
case invalidResponse
case maxFileSizeExceeded
case unauthorised
case internalServerError
case badGateway
case serviceUnavailable
case gatewayTimeout
case badRequest(error: String, rawData: Data?)
case requestFailed(error: String, rawData: Data?)
case timeout
case suspended
case unknown
public var description: String {
switch self {
case .invalidURL: return "Invalid URL (NetworkError.invalidURL)."
case .invalidPreparedRequest: return "Invalid PreparedRequest provided (NetworkError.invalidPreparedRequest)."
case .notFound: return "Not Found (NetworkError.notFound)."
case .parsingFailed: return "Invalid response (NetworkError.parsingFailed)."
case .invalidResponse: return "Invalid response (NetworkError.invalidResponse)."
case .maxFileSizeExceeded: return "Maximum file size exceeded (NetworkError.maxFileSizeExceeded)."
case .unauthorised: return "Unauthorised (Failed to verify the signature - NetworkError.unauthorised)."
case .internalServerError: return "Internal server error (NetworkError.internalServerError)."
case .badGateway: return "Bad gateway (NetworkError.badGateway)."
case .serviceUnavailable: return "Service unavailable (NetworkError.serviceUnavailable)."
case .gatewayTimeout: return "Gateway timeout (NetworkError.gatewayTimeout)."
case .badRequest(let error, _), .requestFailed(let error, _): return error
case .timeout: return "The request timed out (NetworkError.timeout)."
case .suspended: return "Network requests are suspended (NetworkError.suspended)."
case .unknown: return "An unknown error occurred (NetworkError.unknown)."
}
}
}