This PR contains the work that implements the Locations service, which is used to retrieve location data from a remote server. To give further details on what was done: - [x] created the `APICore` and `Locations` libraries into the **Libraries** package; - [x] defined the `Endpoint` and `Client` protocols; - [x] implemented the `MakeURLRequestUseCase` use case; - [x] implemented the `MockURLProtocol` protocol and the `MockURLResponse` models; - [x] implemented the `Location` model; - [x] implemented the `GetLocationsEndpoint` endpoint; - [x] implemented the `LocationsClient` client; - [x] implemented the `LocationsService` service. Co-authored-by: Javier Cicchelli <javier@rock-n-code.com> Reviewed-on: rock-n-code/deep-linking-assignment#4
21 lines
486 B
Swift
21 lines
486 B
Swift
//
|
|
// GetLocationsEndpoint.swift
|
|
// Locations
|
|
//
|
|
// Created by Javier Cicchelli on 10/04/2023.
|
|
// Copyright © 2023 Röck+Cöde. All rights reserved.
|
|
//
|
|
|
|
import APICore
|
|
import Foundation
|
|
|
|
struct GetLocationsEndpoint: Endpoint {
|
|
let scheme: String = .Scheme.https
|
|
let host: String = .Hosts.default
|
|
let port: Int? = nil
|
|
let path: String = .Paths.getLocations
|
|
let method: HTTPRequestMethod = .get
|
|
let headers: [String: String] = [:]
|
|
let body: Data? = nil
|
|
}
|