Package io.soffa.foundation.pubsub
Interface PubSubClient
-
- All Known Subinterfaces:
PubSubMessenger
public interface PubSubClient
-
-
Field Summary
Fields Modifier and Type Field Description static java.util.concurrent.atomic.AtomicLongASYNC_TIMEOUT_SECONDS
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidbroadcast(@NonNull java.lang.String target, @NotNull Message message)<I,O,T extends Operation<I,O>>
Tproxy(@NonNull java.lang.String subjet, @NotNull java.lang.Class<T> operationClass)voidpublish(@NonNull java.lang.String subject, @NotNull Message message)<T> java.util.concurrent.CompletableFuture<T>request(@NonNull java.lang.String subject, @NotNull Message message, java.lang.Class<T> expectedClass)voidsetDefaultBroadcast(java.lang.String value)voidsubscribe(@NonNull java.lang.String subject, boolean broadcast, MessageHandler messageHandler)
-
-
-
Method Detail
-
subscribe
void subscribe(@NonNull java.lang.String subject, boolean broadcast, MessageHandler messageHandler)
-
request
<T> java.util.concurrent.CompletableFuture<T> request(@NonNull java.lang.String subject, @NotNull @NotNull Message message, java.lang.Class<T> expectedClass)
-
publish
void publish(@NonNull java.lang.String subject, @NotNull @NotNull Message message)
-
broadcast
void broadcast(@NonNull java.lang.String target, @NotNull @NotNull Message message)
-
proxy
<I,O,T extends Operation<I,O>> T proxy(@NonNull java.lang.String subjet, @NotNull @NotNull java.lang.Class<T> operationClass)
-
setDefaultBroadcast
void setDefaultBroadcast(java.lang.String value)
-
-