remove await
This commit is contained in:
parent
b3f1be4129
commit
8a07a7a4c8
10
Cartfile
10
Cartfile
|
@ -1,7 +1,3 @@
|
|||
github "Alamofire/Alamofire" ~> 4.8.1
|
||||
github "yume190/JSONDecodeKit" ~> 4.1.0
|
||||
|
||||
#github "mxcl/PromiseKit" ~> 6.5.2
|
||||
#github "yannickl/AwaitKit" ~> 5.1.0
|
||||
|
||||
github "ReactiveX/RxSwift" ~> 4.0
|
||||
github "Alamofire/Alamofire"
|
||||
github "yume190/JSONDecodeKit"
|
||||
github "ReactiveX/RxSwift"
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>5.0.2</string>
|
||||
<string>5.0.3</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>$(CURRENT_PROJECT_VERSION)</string>
|
||||
</dict>
|
||||
|
|
|
@ -14,10 +14,10 @@ public enum Fake {
|
|||
case request((_ request: URLRequest) -> (URLResponse, Data))
|
||||
|
||||
func get(request: URLRequest) -> (response: URLResponse, data: Data)? {
|
||||
guard let url = request.url else { return nil }
|
||||
guard let url: URL = request.url else { return nil }
|
||||
switch self {
|
||||
case let .data(data, code, header):
|
||||
guard let res = HTTPURLResponse(
|
||||
guard let res: HTTPURLResponse = HTTPURLResponse(
|
||||
url: url,
|
||||
statusCode: code,
|
||||
httpVersion: kCFHTTPVersion1_1 as String,
|
||||
|
@ -25,8 +25,8 @@ public enum Fake {
|
|||
) else { return nil }
|
||||
return (res, data)
|
||||
case let .json(json, code, header):
|
||||
guard let data = try? json.encode() else { return nil }
|
||||
guard let res = HTTPURLResponse(
|
||||
guard let data: Data = try? json.encode() else { return nil }
|
||||
guard let res: HTTPURLResponse = HTTPURLResponse(
|
||||
url: url,
|
||||
statusCode: code,
|
||||
httpVersion: kCFHTTPVersion1_1 as String,
|
||||
|
|
|
@ -27,9 +27,9 @@ public class JSONMock: URLProtocol {
|
|||
}
|
||||
|
||||
var urlPath: String? {
|
||||
guard let url = request.url else { return nil }
|
||||
guard let scheme = url.scheme else { return nil }
|
||||
guard let host = url.host else { return nil }
|
||||
guard let url: URL = request.url else { return nil }
|
||||
guard let scheme: String = url.scheme else { return nil }
|
||||
guard let host: String = url.host else { return nil }
|
||||
let port: String
|
||||
if let portString = url.port.map(String.init) {
|
||||
port = ":" + portString
|
||||
|
@ -41,8 +41,8 @@ public class JSONMock: URLProtocol {
|
|||
}
|
||||
|
||||
var fake: Fake? {
|
||||
guard let urlPath = urlPath else { return nil }
|
||||
guard let fake = JSONMock.fakes[urlPath] else { return nil }
|
||||
guard let urlPath: String = urlPath else { return nil }
|
||||
guard let fake: Fake = JSONMock.fakes[urlPath] else { return nil }
|
||||
return fake
|
||||
}
|
||||
|
||||
|
|
|
@ -1,50 +1,50 @@
|
|||
import Foundation
|
||||
import struct RxSwift.Disposables
|
||||
import class RxSwift.Observable
|
||||
import protocol RxSwift.Disposable
|
||||
import Alamofire
|
||||
|
||||
extension Entryable {
|
||||
public var rxData: Observable<Response<Data>> {
|
||||
return Observable.create { observer -> Disposable in
|
||||
self.dataRequest
|
||||
.validate()
|
||||
.responseData { (res) in
|
||||
|
||||
switch res.result {
|
||||
case .success:
|
||||
guard let data = res.data else {
|
||||
observer.onError(res.error ?? NetError.unknown)
|
||||
return
|
||||
}
|
||||
|
||||
let result = Response<Data>(
|
||||
data: data,
|
||||
request: res.request!,
|
||||
response: res.response!
|
||||
)
|
||||
observer.onNext(result)
|
||||
case .failure(let error):
|
||||
observer.onError(error)
|
||||
}
|
||||
}
|
||||
|
||||
return Disposables.create {
|
||||
self.dataRequest.cancel()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
extension Entryable where ResponseType: Codable {
|
||||
public var rx: Observable<Response<ResponseType>> {
|
||||
return rxData.map { (response) throws -> Response<ResponseType> in
|
||||
let data = try ResponseType.decode(data: response.data)
|
||||
return Response<ResponseType>(
|
||||
data: data,
|
||||
request: response.request,
|
||||
response: response.response
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
////import Foundation
|
||||
//import struct RxSwift.Disposables
|
||||
//import class RxSwift.Observable
|
||||
//import protocol RxSwift.Disposable
|
||||
//import Alamofire
|
||||
//
|
||||
//extension Entryable {
|
||||
// public var rxData: Observable<Response<Data>> {
|
||||
// return Observable.create { observer -> Disposable in
|
||||
// self.dataRequest
|
||||
// .validate()
|
||||
// .responseData { (res) in
|
||||
//
|
||||
// switch res.result {
|
||||
// case .success:
|
||||
// guard let data = res.data else {
|
||||
// observer.onError(res.error ?? NetError.unknown)
|
||||
// return
|
||||
// }
|
||||
//
|
||||
// let result = Response<Data>(
|
||||
// data: data,
|
||||
// request: res.request!,
|
||||
// response: res.response!
|
||||
// )
|
||||
// observer.onNext(result)
|
||||
// case .failure(let error):
|
||||
// observer.onError(error)
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// return Disposables.create {
|
||||
// self.dataRequest.cancel()
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
//}
|
||||
//
|
||||
//extension Entryable where ResponseType: Codable {
|
||||
// public var rx: Observable<Response<ResponseType>> {
|
||||
// return rxData.map { (response) throws -> Response<ResponseType> in
|
||||
// let data = try ResponseType.decode(data: response.data)
|
||||
// return Response<ResponseType>(
|
||||
// data: data,
|
||||
// request: response.request,
|
||||
// response: response.response
|
||||
// )
|
||||
// }
|
||||
// }
|
||||
//}
|
||||
|
|
|
@ -11,7 +11,9 @@ import struct JSONDecodeKit.JSON
|
|||
import struct Alamofire.DefaultDataResponse
|
||||
|
||||
internal func guardData(res: DefaultDataResponse) -> (response: HTTPURLResponse, data: Data)? {
|
||||
guard let response = res.response, let data = res.data else {
|
||||
guard
|
||||
let response: HTTPURLResponse = res.response,
|
||||
let data: Data = res.data else {
|
||||
print("API (\(res.request?.url?.absoluteString ?? "")): No Response.")
|
||||
return nil
|
||||
}
|
||||
|
@ -25,14 +27,14 @@ extension YumeAlamofire {
|
|||
public typealias DebugInfoFunction = (_ data: Data?) -> Swift.Void
|
||||
public static func emptyDebugInfo(data: Data?) {}
|
||||
public static func basicDebugInfo(data: Data?) {
|
||||
guard let data = data else { return }
|
||||
guard let data: Data = data else { return }
|
||||
print("The error response : \(String.init(data: data, encoding: .utf8) ?? "")")
|
||||
}
|
||||
}
|
||||
|
||||
extension YumeAlamofire {
|
||||
internal static func parseErrorHandle<OutputType>(type: OutputType.Type, url: URL?, error: Error) {
|
||||
let parseError = [
|
||||
let parseError: String = [
|
||||
"API Data Parse Error.",
|
||||
"Type : \(OutputType.self)",
|
||||
"Url : \(url?.path ?? "")"
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Pod::Spec.new do |s|
|
||||
s.name = 'YumeAlamofire'
|
||||
s.version = '5.0.2'
|
||||
s.version = '5.0.3'
|
||||
s.license = 'MIT'
|
||||
s.summary = "A Library combine network request and json decode in POP way"
|
||||
s.homepage = 'https://github.com/yume190/YumeAlamofire'
|
||||
|
@ -36,16 +36,7 @@ Pod::Spec.new do |s|
|
|||
'Sources/Rx/*.swift',
|
||||
]
|
||||
|
||||
ss.dependency 'RxSwift', '~> 4.4.0'
|
||||
ss.dependency "YumeAlamofire/Core"
|
||||
end
|
||||
|
||||
s.subspec "Await" do |ss|
|
||||
ss.source_files = [
|
||||
'Sources/Await/*.swift'
|
||||
]
|
||||
|
||||
ss.dependency 'AwaitKit', '~> 5.0.1'
|
||||
ss.dependency 'RxSwift'
|
||||
ss.dependency "YumeAlamofire/Core"
|
||||
end
|
||||
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>5.0.2</string>
|
||||
<string>5.0.3</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>$(CURRENT_PROJECT_VERSION)</string>
|
||||
<key>NSPrincipalClass</key>
|
||||
|
|
Loading…
Reference in New Issue