Class ClientFutureFactory

java.lang.Object
org.apache.qpid.protonj2.client.futures.ClientFutureFactory

public abstract class ClientFutureFactory extends Object
Factory for client future instances that will create specific versions based on configuration.
  • Field Details

    • CONSERVATIVE

      public static final String CONSERVATIVE
      Names a future type that uses a conservative wait for the operation outcome.
      See Also:
    • BALANCED

      public static final String BALANCED
      Names a future type that uses a balanced spin then wait for the operation outcome.
      See Also:
    • PROGRESSIVE

      public static final String PROGRESSIVE
      Names a future type that uses a progressive spin then wait for the operation outcome.
      See Also:
  • Constructor Details

    • ClientFutureFactory

      public ClientFutureFactory()
  • Method Details

    • create

      public static ClientFutureFactory create(String futureType)
      Create a new ClientFutureFactory instance based on the given type name.
      Parameters:
      futureType - the future type whose factory should be returned.
      Returns:
      a new ClientFutureFactory that will be used to create the desired future types.
    • completedFuture

      public static <T> Future<T> completedFuture(T result)
      Creates and returns a Future type that is already marked completed and will return the provided result to any caller that requests the future's outcome.
      Type Parameters:
      T - The type that will result from the Future.
      Parameters:
      result - The value to return as the result of this completed Future.
      Returns:
      the newly created completed Future instance.
    • createFuture

      public abstract <V> ClientFuture<V> createFuture()
      Type Parameters:
      V - the eventual result type for this Future
      Returns:
      a new ClientFuture instance.
    • createFuture

      public abstract <V> ClientFuture<V> createFuture(ClientSynchronization<V> synchronization)
      Type Parameters:
      V - the eventual result type for this Future
      Parameters:
      synchronization - The ClientSynchronization to assign to the returned ClientFuture.
      Returns:
      a new ClientFuture instance.
    • createUnfailableFuture

      public abstract <V> ClientFuture<V> createUnfailableFuture()
      Type Parameters:
      V - the eventual result type for this Future
      Returns:
      a ClientFuture that treats failures as success calls that simply complete the operation.
    • createUnfailableFuture

      public abstract <V> ClientFuture<V> createUnfailableFuture(ClientSynchronization<V> synchronization)
      Type Parameters:
      V - the eventual result type for this Future
      Parameters:
      synchronization - The ClientSynchronization to assign to the returned ClientFuture.
      Returns:
      a ClientFuture that treats failures as success calls that simply complete the operation.