Converters

EasyNetwork’s packet converters module.

class easynetwork.converter.AbstractPacketConverter

Bases: AbstractPacketConverterComposite, Generic

The base class for implementing a converter.

See also

The AbstractPacketConverterComposite class.

abstractmethod create_from_dto_packet(packet: SentDTOPacket, /) SentPacket

Constructs the business object from the DTO packet.

Parameters:

packet (SentDTOPacket) – The data transfer object.

Raises:

PacketConversionErrorpacket is invalid.

Returns:

the business object.

Return type:

SentPacket

abstractmethod convert_to_dto_packet(obj: SentPacket, /) SentDTOPacket

Creates the DTO packet from the business object obj.

Parameters:

obj (SentPacket) – The business object.

Returns:

the data transfer object.

Return type:

SentDTOPacket

class easynetwork.converter.AbstractPacketConverterComposite

Bases: Generic

The base class for implementing a composite converter.

See also

The AbstractPacketConverter class.

abstractmethod create_from_dto_packet(packet: ReceivedDTOPacket, /) ReceivedPacket

Constructs the business object from the DTO packet.

Parameters:

packet (ReceivedDTOPacket) – The data transfer object.

Raises:

PacketConversionErrorpacket is invalid.

Returns:

the business object.

Return type:

ReceivedPacket

abstractmethod convert_to_dto_packet(obj: SentPacket, /) SentDTOPacket

Creates the DTO packet from the business object obj.

Parameters:

obj (SentPacket) – The business object.

Returns:

the data transfer object.

Return type:

SentDTOPacket

class easynetwork.converter.StapledPacketConverter

Bases: AbstractPacketConverterComposite, Generic

A composite converter that merges two converters.

sent_packet_converter: AbstractPacketConverterComposite[SentPacket, Any, SentDTOPacket, Any]

Sent packet converter.

received_packet_converter: AbstractPacketConverterComposite[Any, ReceivedPacket, Any, ReceivedDTOPacket]

Received packet converter.

final create_from_dto_packet(packet: ReceivedDTOPacket, /) ReceivedPacket

Calls self.received_packet_converter.create_from_dto_packet(packet).

Parameters:

packet (ReceivedDTOPacket) – The data transfer object.

Raises:

PacketConversionErrorpacket is invalid.

Returns:

the business object.

Return type:

ReceivedPacket

final convert_to_dto_packet(obj: SentPacket, /) SentDTOPacket

Calls self.sent_packet_converter.convert_to_dto_packet(obj).

Parameters:

obj (SentPacket) – The business object.

Returns:

the data transfer object.

Return type:

SentDTOPacket


See also

How-to — Communication Protocols

Describes where and when a converter is used.