py-libp2p/libp2p/protocol_muxer/multiselect_communicator_interface.py

23 lines
566 B
Python
Raw Normal View History

from abc import ABC, abstractmethod
2019-01-10 02:38:56 +08:00
class IMultiselectCommunicator(ABC):
"""
Communicator helper class that ensures both the client
and multistream module will follow the same multistream protocol,
which is necessary for them to work
"""
@abstractmethod
2019-08-07 18:02:30 +08:00
async def write(self, msg_str: str) -> None:
"""
Write message to stream
:param msg_str: message to write
"""
@abstractmethod
2019-08-07 18:02:30 +08:00
async def read_stream_until_eof(self) -> str:
"""
Reads message from stream until EOF
"""