kafka_dae_control.worker_event
Worker event class for the worker thread to action.
Members
An event signalling a begin. |
|
An event signalling a blocks update. |
|
An event signalling an end. |
|
a dataclass which contains the updated state of the hardware. |
|
An event signalling a hardware update. |
|
An event signalling to set the board's communication register to local IP. |
|
An event signalling a title update. |
|
An event signalling a users update. |
|
A worker event with a value field. |
|
Process a worker event. |
- class kafka_dae_control.worker_event.BeginEvent(done_event: EventWithValue[None])[source]
Bases:
objectAn event signalling a begin.
- class kafka_dae_control.worker_event.BlocksUpdateEvent(value: T)[source]
Bases:
WorkerEventWithValue[list[str]]An event signalling a blocks update.
- class kafka_dae_control.worker_event.EndEvent(done_event: EventWithValue[None])[source]
Bases:
objectAn event signalling an end.
- class kafka_dae_control.worker_event.HardwareUpdate(hw_running: bool)[source]
Bases:
objecta dataclass which contains the updated state of the hardware.
- class kafka_dae_control.worker_event.HardwareUpdateEvent(value: T)[source]
Bases:
WorkerEventWithValue[HardwareUpdate]An event signalling a hardware update.
- class kafka_dae_control.worker_event.SetIPEvent[source]
Bases:
objectAn event signalling to set the board’s communication register to local IP.
- class kafka_dae_control.worker_event.TitleUpdateEvent(value: T)[source]
Bases:
WorkerEventWithValue[str]An event signalling a title update.
- class kafka_dae_control.worker_event.UsersUpdateEvent(value: T)[source]
Bases:
WorkerEventWithValue[str]An event signalling a users update.
- class kafka_dae_control.worker_event.WorkerEventWithValue(value: T)[source]
-
A worker event with a value field.
- kafka_dae_control.worker_event.process_worker_event(worker_event: SetIPEvent | BeginEvent | EndEvent | TitleUpdateEvent | UsersUpdateEvent | HardwareUpdateEvent | BlocksUpdateEvent, config: ControlConfig, data: Data, producer: Producer, sock: socket, sock_lock: RLock) None[source]
Process a worker event.
This is the only part of the program which can mutate the data class. It is responsible for filtering the type of worker event and acting on it accordingly.
- Parameters:
worker_event – the worker event to process
config – the program’s configuration options
data – the data class containing the program’s state
producer – the Kafka producer
sock – the socket instance
sock_lock – the lock to use when using the socket instance