PollableChannel

A {@link MessageChannel} from which messages may be actively received through polling.

@author Mark Fisher @since 4.0

Members

Functions

receive
MessageBase receive()

Receive a message from this channel, blocking indefinitely if necessary. @return the next available {@link Message} or {@code null} if interrupted

receive
MessageBase receive(long timeout)

Receive a message from this channel, blocking until either a message is available or the specified timeout period elapses. @param timeout the timeout in milliseconds or {@link MessageChannel#INDEFINITE_TIMEOUT}. @return the next available {@link Message} or {@code null} if the specified timeout period elapses or the message reception is interrupted

Inherited Members

From MessageChannel

INDEFINITE_TIMEOUT
enum long INDEFINITE_TIMEOUT;

Constant for sending a message without a prescribed timeout.

send
bool send(MessageBase message)

Send a {@link Message} to this channel. If the message is sent successfully, the method returns {@code true}. If the message cannot be sent due to a non-fatal reason, the method returns {@code false}. The method may also throw a RuntimeException in case of non-recoverable errors. <p>This method may block indefinitely, depending on the implementation. To provide a maximum wait time, use {@link #send(Message, long)}. @param message the message to send @return whether or not the message was sent

send
bool send(MessageBase message, long timeout)

Send a message, blocking until either the message is accepted or the specified timeout period elapses. @param message the message to send @param timeout the timeout in milliseconds or {@link #INDEFINITE_TIMEOUT} @return {@code true} if the message is sent, {@code false} if not including a timeout of an interrupt of the send

Meta