1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- //
- // OOError.swift
- // o2app
- //
- // Created by 刘振兴 on 2017/8/24.
- // Copyright © 2017年 zone. All rights reserved.
- //
- import Foundation
- import Moya
- public enum OOAppError:Swift.Error {
- case imageMapping(message:String,statusCode:Int,data:Data?)
- case jsonMapping(message:String,statusCode:Int,data:Data?)
- case stringMapping(message:String,statusCode:Int,data:Data?)
- case statusCode(message:String,statusCode:Int,data:Data?)
- case underlying(Swift.Error)
- case requestMapping(String)
- case common(type:String,message:String,statusCode:Int)
- case objectMapping(Swift.Error,Response)
- case encodableMapping(Swift.Error)
- case parameterEncoding(Swift.Error)
- case apiResponseError(String)
- case apiEmptyResultError
- }
- extension OOAppError:LocalizedError {
-
- public var errorDescription: String? {
- switch self {
- case .imageMapping(let msg, let statusCode, _):
- return "Moya.Error:imageMapping,msg=\(msg),statusCode=\(statusCode)"
- case .jsonMapping(let msg, let statusCode, _):
- return "Moya.Error:jsonMapping,msg=\(msg),statusCode=\(statusCode)"
- case .stringMapping(let msg, let statusCode, _):
- return "Moya.Error:stringMapping,msg=\(msg),statusCode=\(statusCode)"
- case .statusCode(let msg, let statusCode, _):
- return "Moya.Error:statusCode,msg=\(msg),statusCode=\(statusCode)"
- case .underlying(let err):
- return "Moya.Error:underlying,error=\(err)"
- case .requestMapping(let msg):
- return "Moya.Error:requestMapping,msg=\(msg)"
- case .common(let type, let msg, let statusCode):
- return "App.Error:type=\(type),msg=\(msg),statusCode=\(statusCode)"
- case .objectMapping(let err, let resp):
- return "Moya.Error:objectMapping,error=\(err),resp=\(resp)"
- case .encodableMapping(let err):
- return "Moya.Error:encodableMapping,error=\(err)"
- case .parameterEncoding(let err):
- return "Moay.Error:parameterEncoding,error=\(err)"
- case .apiResponseError(let err):
- return "API.Error:apiResponseError,error=\(err)"
- case .apiEmptyResultError:
- return "API 返回结果为空"
- }
- }
-
- public var failureReason: String? {
- switch self {
- case .imageMapping(let msg,_,_):
- return msg
- case .jsonMapping(let msg, _,_):
- return msg
- case .stringMapping(let msg,_,_):
- return msg
- case .statusCode(let msg,_,_):
- return msg
- case .underlying(let err):
- return err.localizedDescription
- case .requestMapping(let msg):
- return msg
- case .common(_,let msg,_):
- return msg
- case .objectMapping(let err, let resp):
- return "error=\(err.localizedDescription),resp=\(resp)"
- case .encodableMapping(let err):
- return err.localizedDescription
- case .parameterEncoding(let err):
- return err.localizedDescription
- case .apiResponseError(let err):
- return err
- case .apiEmptyResultError:
- return "API 返回结果为空"
- }
- }
-
- }
- public enum OOError:Swift.Error {
- case systemError(Swift.Error)
- case appError(OOAppError)
- }
|