CDTP Module#
SPDX-FileCopyrightText: 2024 DESY and the Constellation authors SPDX-License-Identifier: EUPL-1.2
Module implementing the Constellation Data Transmission Protocol.
- class core.cdtp.DataReceiver(context: Context, logger: ConstellationLogger, receive_bor_cb: Callable[[str, dict[str, Any], dict[str, Any]], None], receive_data_cb: Callable[[str, DataRecord], None], receive_eor_cb: Callable[[str, dict[str, Any], dict[str, Any]], None], data_transmitters: set[str] | None)#
Bases:
objectBase class for receiving CDTP messages via ZMQ.
- add_sender(service: DiscoveredService) None#
- remove_sender(service: DiscoveredService) None#
- class core.cdtp.DataTransmitter(name: str, socket: Socket, logger: ConstellationLogger, failure_cb: Callable[[str], None])#
Bases:
objectBase class for sending CDTP messages via ZMQ.
- send_data_record(data_record: DataRecord) None#
Queue a data record for sending
- property state: TransmitterState#
- exception core.cdtp.InvalidCDTPMessageType(type: Type, reason: str)#
Bases:
RuntimeError
- class core.cdtp.PullThread(drc: DataReceiver)#
Bases:
ThreadReceiving thread for CDTP
- class core.cdtp.PushThread(dtm: DataTransmitter)#
Bases:
ThreadSending thread for CDTP
- exception core.cdtp.RecvTimeoutError(what: str, timeout: int)#
Bases:
RuntimeError
- class core.cdtp.RunCondition(*values)#
Bases:
IntFlagDefines the condition flags of run data as transmitted via CDTP.
- ABORTED = 8#
- DEGRADED = 16#
- GOOD = 0#
- INCOMPLETE = 2#
- INTERRUPTED = 4#
- TAINTED = 1#
- exception core.cdtp.SendTimeoutError(what: str, timeout: int)#
Bases:
RuntimeError