implement subscription

This commit is contained in:
2025-06-19 20:43:05 -07:00
parent dba6754c0c
commit 0d418e76c6
6 changed files with 216 additions and 83 deletions

View File

@@ -31,6 +31,7 @@ class ServerMultiplex
public func addServer(_ server: Server)
{
server.delegate = self
servers.append(server)
}
@@ -138,3 +139,13 @@ extension ServerMultiplex
}
}
}
extension ServerMultiplex: ServerDelegate
{
func server(_ server: any Server, deviceChangedState subjectDevice: AnyDevice) {
guard let device = devices.first(where: { $0.serial == subjectDevice.serial }) else { return }
device.state = subjectDevice.state
delegate?.serverMultiplex(self, devicesStateChanged: [device])
}
}