post

public final void post(T message, StreamObserver<Ack> observer)

Posts the message to the bus.

Parameters

message

the message to post

observer

the observer to receive outcome of the operation

See also

for posing multiple messages at once


public final void post(Iterable<T> messages, StreamObserver<Ack> observer)

Posts the given messages to the bus.

The observer serves to notify the consumer about the result of the call. The StreamObserver.onNext() is called for each message posted to the bus.

If the message is accepted by the bus, Ack with the OK status is passed to the observer.

If the message cannot be sent due to some issues, a corresponding Error status is passed in Ack instance.

Depending on the underlying MessageDispatcher, a message which causes a business rejection may result either a rejection status or an OK status Ack instance. The rejection status may only pop up if the MessageDispatcher processes the message sequentially and throws the rejection (wrapped in a the ThrowableMessages) instead of handling them. Otherwise, the OK status should be expected.

Note that StreamObserver.onError() is never called for the passed observer, since errors are propagated as statuses of Ack response.

Parameters

messages

the messages to post

observer

the observer to receive outcome of the operation