Interface Emitter<T>
-
- Type Parameters:
T- type of payload orMessage.
- All Known Implementing Classes:
EmitterImpl
public interface Emitter<T>Interface used to feed a stream from an imperative piece of code.Instances are injected using:
@Inject @Channel("my-channel") Emitter<String> emitter;You can inject emitter sending payload or
Messages.The name of the channel (given in the
Channel annotation) indicates which streams is fed. It must match the name used in a method using@Incomingor an outgoing stream configured in the application configuration.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidcomplete()Sends the completion event to the channel indicating that no other events will be sent afterward.voiderror(Exception e)Sends a failure event to the channel.booleanisCancelled()booleanisRequested()<M extends Message<? extends T>>
voidsend(M msg)Sends a payload to the channel.CompletionStage<Void>send(T msg)Sends a payload to the channel.
-
-
-
Method Detail
-
send
CompletionStage<Void> send(T msg)
Sends a payload to the channel.- Parameters:
msg- the thing to send, must not benull- Returns:
- the
CompletionStage, which will be completed as sending the payload alone does not provide a callback mechanism. - Throws:
IllegalStateException- if the channel has been canceled or terminated.
-
send
<M extends Message<? extends T>> void send(M msg)
Sends a payload to the channel.- Type Parameters:
M- the Message type- Parameters:
msg- the Message to send, must not benull- Throws:
IllegalStateException- if the channel has been canceled or terminated.
-
complete
void complete()
Sends the completion event to the channel indicating that no other events will be sent afterward.
-
error
void error(Exception e)
Sends a failure event to the channel. No more events will be sent afterward.- Parameters:
e- the exception, must not benull
-
isCancelled
boolean isCancelled()
- Returns:
trueif the emitter has been terminated or the subscription cancelled.
-
isRequested
boolean isRequested()
- Returns:
trueif the subscriber accepts messages,falseotherwise. Usingsend(Object)on an emitter not expecting message would throw anIllegalStateException.
-
-