Interface PubSubClient

    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.util.concurrent.atomic.AtomicLong ASYNC_TIMEOUT_SECONDS  
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void broadcast​(@NonNull java.lang.String target, @NotNull Message message)  
      <I,​O,​T extends Operation<I,​O>>
      T
      proxy​(@NonNull java.lang.String subjet, @NotNull java.lang.Class<T> operationClass)  
      void publish​(@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)  
      void setDefaultBroadcast​(java.lang.String value)  
      void subscribe​(@NonNull java.lang.String subject, boolean broadcast, MessageHandler messageHandler)  
    • Field Detail

      • ASYNC_TIMEOUT_SECONDS

        static final java.util.concurrent.atomic.AtomicLong ASYNC_TIMEOUT_SECONDS
    • 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)