diff --git a/Sources/WireKit/FNAPIClient.swift b/Sources/WireKit/FNAPIClient.swift index 282494f..d304ec8 100644 --- a/Sources/WireKit/FNAPIClient.swift +++ b/Sources/WireKit/FNAPIClient.swift @@ -1,5 +1,5 @@ // -// FNAPIClient.swift +// WKAPIClient.swift // // // Created by Daniel Bernal on 14/11/20. @@ -11,26 +11,26 @@ import Foundation import Combine -public struct FNAPIClient { +public struct WKAPIClient { public var baseURL: String! - public var networkDispatcher: FNNetworkDispatcher! + public var networkDispatcher: WKNetworkDispatcher! public init(baseURL: String, - networkDispatcher: FNNetworkDispatcher = FNNetworkDispatcher()) { + networkDispatcher: WKNetworkDispatcher = WKNetworkDispatcher()) { self.baseURL = baseURL self.networkDispatcher = networkDispatcher } - /// Dispatches an FNRequest and returns a publisher - /// - Parameter request: FNRequest to Dispatch + /// Dispatches an WKRequest and returns a publisher + /// - Parameter request: WKRequest to Dispatch /// - Returns: A publisher containing decoded data or an error - public func dispatch(_ request: Request) -> AnyPublisher { + public func dispatch(_ request: Request) -> AnyPublisher { guard let urlRequest = request.asURLRequest(baseURL: baseURL) else { - return Fail(outputType: Request.ReturnType.self, failure: FNNetworkRequestError.badRequest).eraseToAnyPublisher() + return Fail(outputType: Request.ReturnType.self, failure: WKNetworkRequestError.badRequest).eraseToAnyPublisher() } - typealias Publisher = AnyPublisher + typealias Publisher = AnyPublisher let pub: Publisher = networkDispatcher.dispatch(request: urlRequest) return pub.eraseToAnyPublisher() } diff --git a/Sources/WireKit/FNNetworkDispatcher.swift b/Sources/WireKit/FNNetworkDispatcher.swift index c9dae39..4bed96c 100644 --- a/Sources/WireKit/FNNetworkDispatcher.swift +++ b/Sources/WireKit/FNNetworkDispatcher.swift @@ -1,5 +1,5 @@ // -// FNNetworkDispatcher.swift +// WKNetworkDispatcher.swift // // // Created by Daniel Bernal on 15/11/20. @@ -11,7 +11,7 @@ import Combine import Foundation -public enum FNNetworkRequestError: LocalizedError, Equatable { +public enum WKNetworkRequestError: LocalizedError, Equatable { case invalidRequest case badRequest case unauthorized @@ -25,7 +25,7 @@ public enum FNNetworkRequestError: LocalizedError, Equatable { case unknownError } -public struct FNNetworkDispatcher { +public struct WKNetworkDispatcher { let urlSession: URLSession! @@ -36,7 +36,7 @@ public struct FNNetworkDispatcher { /// Dispatches an URLRequest and returns a publisher /// - Parameter request: URLRequest /// - Returns: A publisher with the provided decoded data or an error - public func dispatch(request: URLRequest) -> AnyPublisher { + public func dispatch(request: URLRequest) -> AnyPublisher { return urlSession .dataTaskPublisher(for: request) @@ -58,7 +58,7 @@ public struct FNNetworkDispatcher { /// Parses a HTTP StatusCode and returns a proper error /// - Parameter statusCode: HTTP status code /// - Returns: Mapped Error - private func httpError(_ statusCode: Int) -> FNNetworkRequestError { + private func httpError(_ statusCode: Int) -> WKNetworkRequestError { switch statusCode { case 400: return .badRequest case 401: return .unauthorized @@ -74,14 +74,14 @@ public struct FNNetworkDispatcher { /// Parses URLSession Publisher errors and return proper ones /// - Parameter error: URLSession publisher error - /// - Returns: Readable NFNNetworkRequestError - private func handleError(_ error: Error) -> FNNetworkRequestError { + /// - Returns: Readable NWKNetworkRequestError + private func handleError(_ error: Error) -> WKNetworkRequestError { switch error { case is Swift.DecodingError: return .decodingError case let urlError as URLError: return .urlSessionFailed(urlError) - case let error as FNNetworkRequestError: + case let error as WKNetworkRequestError: return error default: return .unknownError