45 lines
1.9 KiB
Swift
45 lines
1.9 KiB
Swift
//
|
|
// NetworkEnvironmentImpl.swift
|
|
//
|
|
//
|
|
// Created by Juraldinio on 13.01.2023.
|
|
//
|
|
|
|
import Foundation
|
|
import WalletNetwork
|
|
|
|
struct NetworkEnvironmentImpl: NetworkEnvironment {
|
|
|
|
let configuration: URLSessionConfiguration?
|
|
let usernames: NetworkStaticAPIRecord
|
|
let backend: NetworkStaticAPIRecord
|
|
let hyperion: NetworkDynamicAPIRecord
|
|
let node: NetworkDynamicAPIRecord
|
|
|
|
static func createStubUsernames(configuration: URLSessionConfiguration,
|
|
url: URL,
|
|
headers: NetworkStaticAPIRecord.Headers? = nil) -> NetworkEnvironment {
|
|
let record = NetworkStaticAPIRecord(url: url, headers: headers)
|
|
|
|
let dumpUrl = URL(string: "Empty")!
|
|
return NetworkEnvironmentImpl(configuration: configuration,
|
|
usernames: record,
|
|
backend: NetworkStaticAPIRecord(url: dumpUrl, headers: nil),
|
|
hyperion: NetworkDynamicAPIRecord(url: { dumpUrl }, headers: nil),
|
|
node: NetworkDynamicAPIRecord(url: { dumpUrl }, headers: nil))
|
|
}
|
|
|
|
static func createStubNodes(configuration: URLSessionConfiguration,
|
|
url: URL,
|
|
headers: NetworkStaticAPIRecord.Headers? = nil) -> NetworkEnvironment {
|
|
let record = NetworkDynamicAPIRecord(url: { url }, headers: headers)
|
|
|
|
let dumpUrl = URL(string: "Empty")!
|
|
return NetworkEnvironmentImpl(configuration: configuration,
|
|
usernames: NetworkStaticAPIRecord(url: dumpUrl, headers: nil),
|
|
backend: NetworkStaticAPIRecord(url: dumpUrl, headers: nil),
|
|
hyperion: NetworkDynamicAPIRecord(url: { dumpUrl }, headers: nil),
|
|
node: record)
|
|
}
|
|
}
|