Interface RxInvokerProvider<T extends RxInvoker>

Type Parameters:
T - RxInvoker subclass type.

public interface RxInvokerProvider<T extends RxInvoker>
RxInvoker provider.

RxInvokerProvider must be registered in the client runtime using Configurable.register(Class). It provides a way to plug-in support for other reactive implementations, see Invocation.Builder.rx(Class).

Since:
2.1
Author:
Pavel Bucek, Santiago Pericas-Geertsen
  • Method Details

    • isProviderFor

      boolean isProviderFor​(Class<?> clazz)
      Determine if this is a provider for the given RxInvoker subclass.
      Parameters:
      clazz - RxInvoker subclass.
      Returns:
      true when this provider provides given RxInvoker subclass, false otherwise.
    • getRxInvoker

      T getRxInvoker​(SyncInvoker syncInvoker, ExecutorService executorService)
      Get RxInvoker implementation instance.

      The returned instance has to be thread safe.

      Parameters:
      syncInvoker - SyncInvoker used to execute current request.
      executorService - executor service, which should be used for executing reactive callbacks invocations. It can be null; in that case it's up to the implementation to choose the best ExecutorService in given environment.
      Returns:
      instance of the RxInvoker subclass.
      See Also:
      ClientBuilder.executorService(ExecutorService)