add shared property
commented the code Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
This commit is contained in:
parent
f07089a1fc
commit
f5c1a64e40
@ -12,6 +12,7 @@ public enum EmployeeServiceMode: String, CaseIterable {
|
||||
case malformed
|
||||
case empty
|
||||
|
||||
/// Enpoint in which to grabe employees from.
|
||||
public var endpoint: String {
|
||||
switch self {
|
||||
case .production:
|
||||
@ -26,11 +27,18 @@ public enum EmployeeServiceMode: String, CaseIterable {
|
||||
|
||||
/// Service Layer for Employees
|
||||
public class EmployeeService: EmployeeServiceProtocol {
|
||||
// MARK: - Properties
|
||||
public static let shared = EmployeeService() // Default shared instance
|
||||
|
||||
// MARK: - Initializer
|
||||
|
||||
public init() {}
|
||||
|
||||
/// Service to get Employees
|
||||
/// - Returns: Array of Employee Structs
|
||||
// MARK: - Public Methods
|
||||
|
||||
/// This will get a list of all employees
|
||||
/// - Parameter serviceMode: Mode in which to hit.
|
||||
/// - Returns: An Employees struct
|
||||
public func getEmployees(_ serviceMode: EmployeeServiceMode = .production) async throws -> Employees {
|
||||
return try await NetworkService.shared.fetchData(from: serviceMode.endpoint, as: Employees.self)
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user