Spaces:
Sleeping
Sleeping
from typing import Tuple | |
class MQ: | |
""" | |
Overview: | |
Abstract basic mq class. | |
""" | |
def __init__(self, *args, **kwargs) -> None: | |
""" | |
Overview: | |
The __init__ method of the inheritance must support the extra kwargs parameter. | |
""" | |
pass | |
def listen(self) -> None: | |
""" | |
Overview: | |
Bind to local socket or connect to third party components. | |
""" | |
raise NotImplementedError | |
def publish(self, topic: str, data: bytes) -> None: | |
""" | |
Overview: | |
Send data to mq. | |
Arguments: | |
- topic (:obj:`str`): Topic. | |
- data (:obj:`bytes`): Payload data. | |
""" | |
raise NotImplementedError | |
def subscribe(self, topic: str) -> None: | |
""" | |
Overview: | |
Subscribe to the topic. | |
Arguments: | |
- topic (:obj:`str`): Topic | |
""" | |
raise NotImplementedError | |
def unsubscribe(self, topic: str) -> None: | |
""" | |
Overview: | |
Unsubscribe from the topic. | |
Arguments: | |
- topic (:obj:`str`): Topic | |
""" | |
raise NotImplementedError | |
def recv(self) -> Tuple[str, bytes]: | |
""" | |
Overview: | |
Wait for incoming message, this function will block the current thread. | |
Returns: | |
- data (:obj:`Any`): The sent payload. | |
""" | |
raise NotImplementedError | |
def stop(self) -> None: | |
""" | |
Overview: | |
Unsubscribe from all topics and stop the connection to the message queue server. | |
""" | |
return | |