Package io.vertx.core.eventbus
Interface MessageConsumer<T>
-
- All Superinterfaces:
ReadStream<Message<T>>
,StreamBase
public interface MessageConsumer<T> extends ReadStream<Message<T>>
An event bus consumer object representing a stream of message to anEventBus
address that can be read from.The
EventBus.consumer(String)
orEventBus.localConsumer(String)
creates a new consumer, the returned consumer is not yet registered against the event bus. Registration is effective after thehandler(io.vertx.core.Handler)
method is invoked.The consumer is unregistered from the event bus using the
unregister()
method or by calling thehandler(io.vertx.core.Handler)
with a null value..- Author:
- Nick Scavelli
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description String
address()
ReadStream<T>
bodyStream()
Future<Void>
completion()
MessageConsumer<T>
endHandler(Handler<Void> endHandler)
Set an end handler.MessageConsumer<T>
exceptionHandler(Handler<Throwable> handler)
Set an exception handler on the read stream.MessageConsumer<T>
fetch(long amount)
Fetch the specifiedamount
of elements.int
getMaxBufferedMessages()
MessageConsumer<T>
handler(Handler<Message<T>> handler)
Set a data handler.boolean
isRegistered()
MessageConsumer<T>
pause()
Pause theReadStream
, it sets the buffer infetch
mode and clears the actual demand.MessageConsumer<T>
resume()
Resume reading, and sets the buffer inflowing
mode.MessageConsumer<T>
setMaxBufferedMessages(int maxBufferedMessages)
Set the number of messages this registration will buffer when this stream is paused.Future<Void>
unregister()
Unregisters the handler which created this registration-
Methods inherited from interface io.vertx.core.streams.ReadStream
collect, pipe, pipeTo
-
-
-
-
Method Detail
-
exceptionHandler
MessageConsumer<T> exceptionHandler(Handler<Throwable> handler)
Description copied from interface:ReadStream
Set an exception handler on the read stream.- Specified by:
exceptionHandler
in interfaceReadStream<T>
- Specified by:
exceptionHandler
in interfaceStreamBase
- Parameters:
handler
- the exception handler- Returns:
- a reference to this, so the API can be used fluently
-
handler
MessageConsumer<T> handler(Handler<Message<T>> handler)
Description copied from interface:ReadStream
Set a data handler. As data is read, the handler will be called with the data.- Specified by:
handler
in interfaceReadStream<T>
- Returns:
- a reference to this, so the API can be used fluently
-
pause
MessageConsumer<T> pause()
Description copied from interface:ReadStream
Pause theReadStream
, it sets the buffer infetch
mode and clears the actual demand.While it's paused, no data will be sent to the data
handler
.- Specified by:
pause
in interfaceReadStream<T>
- Returns:
- a reference to this, so the API can be used fluently
-
resume
MessageConsumer<T> resume()
Description copied from interface:ReadStream
Resume reading, and sets the buffer inflowing
mode. If theReadStream
has been paused, reading will recommence on it.- Specified by:
resume
in interfaceReadStream<T>
- Returns:
- a reference to this, so the API can be used fluently
-
fetch
MessageConsumer<T> fetch(long amount)
Description copied from interface:ReadStream
Fetch the specifiedamount
of elements. If theReadStream
has been paused, reading will recommence with the specifiedamount
of items, otherwise the specifiedamount
will be added to the current stream demand.- Specified by:
fetch
in interfaceReadStream<T>
- Returns:
- a reference to this, so the API can be used fluently
-
endHandler
MessageConsumer<T> endHandler(Handler<Void> endHandler)
Description copied from interface:ReadStream
Set an end handler. Once the stream has ended, and there is no more data to be read, this handler will be called.- Specified by:
endHandler
in interfaceReadStream<T>
- Returns:
- a reference to this, so the API can be used fluently
-
bodyStream
ReadStream<T> bodyStream()
- Returns:
- a read stream for the body of the message stream.
-
isRegistered
boolean isRegistered()
- Returns:
- true if the current consumer is registered
-
address
String address()
- Returns:
- The address the handler was registered with.
-
setMaxBufferedMessages
MessageConsumer<T> setMaxBufferedMessages(int maxBufferedMessages)
Set the number of messages this registration will buffer when this stream is paused. The default value is1000
.When a new value is set, buffered messages may be discarded to reach the new value. The most recent messages will be kept.
- Parameters:
maxBufferedMessages
- the maximum number of messages that can be buffered- Returns:
- this registration
-
getMaxBufferedMessages
int getMaxBufferedMessages()
- Returns:
- the maximum number of messages that can be buffered when this stream is paused
-
completion
Future<Void> completion()
- Returns:
- a future notified when the message consumer is registered
-
-