# -*- coding: utf-8 -*- """ This program has been developed by students from the bachelor Computer Science at Utrecht University within the Software Project course. © Copyright Utrecht University (Department of Information and Computing Sciences) """ from abc import ABCMeta, abstractmethod from robot_interface.endpoints.socket_base import SocketBase class ReceiverBase(SocketBase, object): """Base class for receivers associated with a ZeroMQ socket.""" __metaclass__ = ABCMeta @abstractmethod def handle_message(self, message): """ Handle a message with the receiver. :param message: The message to handle, must contain properties "endpoint" and "data". :type message: dict :return: A response message or None if this type of receiver doesn't publish. :rtype: dict | None """ raise NotImplementedError()