runtimepy.net.stream package#
Subpackages#
Submodules#
runtimepy.net.stream.base module#
A module implementing a base, stream-oriented connection interface.
- class runtimepy.net.stream.base.PrefixedMessageConnection(logger: Logger | LoggerAdapter[Any], env: ChannelEnvironment = None, add_metrics: bool = True, markdown: str = None)[source]#
Bases:
Connection
A connection for handling inter-frame message size prefixes for some stream-oriented protocols.
- async process_binary(data: bytes, addr: tuple[str, int] = None) bool [source]#
Process an incoming message.
- async process_single(stream: BinaryIO, addr: tuple[str, int] = None) bool [source]#
Process a single message.
- processor: MessageProcessor#
runtimepy.net.stream.string module#
A module implementing a string-message stream interface.
- class runtimepy.net.stream.string.StringMessageConnection(logger: Logger | LoggerAdapter[Any], env: ChannelEnvironment = None, add_metrics: bool = True, markdown: str = None)[source]#
Bases:
PrefixedMessageConnection
A simple string-message sending and processing connection.
Module contents#
A module aggregating stream-oriented connection interfaces.
- class runtimepy.net.stream.EchoMessageConnection(logger: Logger | LoggerAdapter[Any], env: ChannelEnvironment = None, add_metrics: bool = True, markdown: str = None)[source]#
Bases:
PrefixedMessageConnection
A connection that just echoes what it was sent.
- class runtimepy.net.stream.EchoTcpMessageConnection(transport: Transport, protocol: QueueProtocol, **kwargs)[source]#
Bases:
TcpPrefixedMessageConnection
,EchoMessageConnection
A connection that just echoes what it was sent.
- class runtimepy.net.stream.EchoUdpMessageConnection(transport: DatagramTransport, protocol: UdpQueueProtocol, **kwargs)[source]#
Bases:
UdpPrefixedMessageConnection
,EchoMessageConnection
A connection that just echoes what it was sent.
- class runtimepy.net.stream.PrefixedMessageConnection(logger: Logger | LoggerAdapter[Any], env: ChannelEnvironment = None, add_metrics: bool = True, markdown: str = None)[source]#
Bases:
Connection
A connection for handling inter-frame message size prefixes for some stream-oriented protocols.
- env: ChannelEnvironment#
- logger: LoggerType#
- markdown: str#
- async process_binary(data: bytes, addr: tuple[str, int] = None) bool [source]#
Process an incoming message.
- async process_single(stream: BinaryIO, addr: tuple[str, int] = None) bool [source]#
Process a single message.
- processor: MessageProcessor#
- class runtimepy.net.stream.StringMessageConnection(logger: Logger | LoggerAdapter[Any], env: ChannelEnvironment = None, add_metrics: bool = True, markdown: str = None)[source]#
Bases:
PrefixedMessageConnection
A simple string-message sending and processing connection.
- class runtimepy.net.stream.TcpPrefixedMessageConnection(transport: Transport, protocol: QueueProtocol, **kwargs)[source]#
Bases:
PrefixedMessageConnection
,TcpConnection
A TCP implementation for size-prefixed messages.
- class runtimepy.net.stream.TcpStringMessageConnection(transport: Transport, protocol: QueueProtocol, **kwargs)[source]#
Bases:
StringMessageConnection
,TcpConnection
A simple string-message sending and processing connection using TCP.
- class runtimepy.net.stream.UdpPrefixedMessageConnection(transport: DatagramTransport, protocol: UdpQueueProtocol, **kwargs)[source]#
Bases:
PrefixedMessageConnection
,UdpConnection
A UDP implementation for size-prefixed messages.
- class runtimepy.net.stream.UdpStringMessageConnection(transport: DatagramTransport, protocol: UdpQueueProtocol, **kwargs)[source]#
Bases:
StringMessageConnection
,UdpPrefixedMessageConnection
A simple string-message sending and processing connection using UDP.