예제 #1
0
    def send(self, msg: Message):
        """Sends a message on the stream.

        Args:
            msg: the message to send. This may be a
                :py:class:`WatermarkMessage` or a :py:class:`Message`.
        """
        if not isinstance(msg, Message):
            raise TypeError("msg must inherent from erdos.Message!")

        logger.debug("Sending message {} on the Ingest stream {}".format(
            msg, self.name))

        internal_msg = msg._to_py_message()
        self._internal_stream.send(internal_msg)
예제 #2
0
    def send(self, msg: Message):
        """Sends a message on the stream.

        Args:
            msg: the message to send. This may be a `Watermark` or a `Message`.
        """
        if not isinstance(msg, Message):
            raise TypeError("msg must inherent from erdos.Message!")

        internal_msg = msg._to_py_message()
        logger.debug("Sending message {} on the stream {}".format(
            msg, self.name))

        # Raise exception with the name.
        try:
            return self._py_write_stream.send(internal_msg)
        except Exception as e:
            raise Exception("Exception on stream {} ({})".format(
                self.name, self.id)) from e