Interface MessageChannel

    • Field Summary

      Fields 
      Modifier and TypeFieldDescription
      static longINDEFINITE_TIMEOUT
      Constant for sending a message without a prescribed timeout.
    • Method Detail

      • send

        default boolean send​(Message<?> message)
        Send a Message to this channel. If the message is sent successfully, the method returns true. If the message cannot be sent due to a non-fatal reason, the method returns false. The method may also throw a RuntimeException in case of non-recoverable errors.

        This method may block indefinitely, depending on the implementation. To provide a maximum wait time, use send(Message, long).

        Parameters:
        message - the message to send
        Returns:
        whether or not the message was sent
      • send

        boolean send​(Message<?> message,
                     long timeout)
        Send a message, blocking until either the message is accepted or the specified timeout period elapses.
        Parameters:
        message - the message to send
        timeout - the timeout in milliseconds or INDEFINITE_TIMEOUT
        Returns:
        true if the message is sent, false if not including a timeout of an interrupt of the send