blob: b83dc8030c9520a79e56409276656393e5e76b15 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
import SwiftUI
@Observable final class Hotline {
let trackerClient: HotlineTrackerClient
init(trackerClient: HotlineTrackerClient) {
self.trackerClient = trackerClient
}
@MainActor func getServers(address: String, port: Int = Tracker.defaultPort) async -> [Server] {
let fetchedServers: [HotlineServer] = await self.trackerClient.fetchServers(address: address, port: port)
var servers: [Server] = []
for s in fetchedServers {
if let serverName = s.name {
servers.append(Server(name: serverName, description: s.description, address: s.address, port: Int(s.port), users: Int(s.users)))
}
}
return servers
}
}
|