diff options
| author | Dustin Mierau <dustin@mierau.me> | 2024-01-12 09:50:18 -0800 |
|---|---|---|
| committer | Dustin Mierau <dustin@mierau.me> | 2024-01-12 09:50:18 -0800 |
| commit | 2f210991684c87073dd7534d2d0416d91cf50275 (patch) | |
| tree | 03dc2edb225ab583fbc286de37f927194377a085 /Hotline/macOS | |
| parent | 768bc9136c91b5dc31eef96088e7d1796243d81b (diff) | |
Experimenting with a simpler stream/delegate bsaed socket library for Tracker listing for now. Added consume methods to Data and [UInt8] arrays to make reading bytes off the wire easier to read..
Diffstat (limited to 'Hotline/macOS')
| -rw-r--r-- | Hotline/macOS/TrackerView.swift | 25 |
1 files changed, 9 insertions, 16 deletions
diff --git a/Hotline/macOS/TrackerView.swift b/Hotline/macOS/TrackerView.swift index d53b73e..6b8f330 100644 --- a/Hotline/macOS/TrackerView.swift +++ b/Hotline/macOS/TrackerView.swift @@ -81,27 +81,20 @@ class TrackerItem: Identifiable, Hashable { let client = HotlineTrackerClient() - self.loading = true -// self.servers = [] - - let fetchedServers: [HotlineServer] = await client.fetchServers(address: bookmark.address, port: HotlinePorts.DefaultTrackerPort) - - client.disconnect() - var newItems: [TrackerItem] = [] + if let fetchedServers: [HotlineServer] = try? await client.fetchServers(address: bookmark.address, port: HotlinePorts.DefaultTrackerPort) { + var newItems: [TrackerItem] = [] - for s in fetchedServers { - if let serverName = s.name { - - let server = Server(name: serverName, description: s.description, address: s.address, port: Int(s.port), users: Int(s.users)) -// let item = TrackerItem(server: server) - - newItems.append(TrackerItem(server: server)) + for s in fetchedServers { + if let serverName = s.name { + let server = Server(name: serverName, description: s.description, address: s.address, port: Int(s.port), users: Int(s.users)) + newItems.append(TrackerItem(server: server)) + } } - } - self.servers = newItems + self.servers = newItems + } self.loading = false } |