Class ServiceDiscovery

java.lang.Object
org.apache.pekko.discovery.ServiceDiscovery

public abstract class ServiceDiscovery extends Object
Implement to provide a service discovery method
  • Constructor Details

    • ServiceDiscovery

      public ServiceDiscovery()
  • Method Details

    • lookup

      public abstract scala.concurrent.Future<ServiceDiscovery.Resolved> lookup(Lookup lookup, scala.concurrent.duration.FiniteDuration resolveTimeout)
      Scala API: Perform lookup using underlying discovery implementation.

      Parameters:
      lookup - A service discovery lookup.
      resolveTimeout - Timeout. Up to the discovery-method to adhere to his
      Returns:
      Resolved future should be failed with a [DiscoveryTimeoutException] if the resolveTimeout is exceeded.
    • lookup

      public scala.concurrent.Future<ServiceDiscovery.Resolved> lookup(String serviceName, scala.concurrent.duration.FiniteDuration resolveTimeout)
      Scala API: Perform lookup using underlying discovery implementation.

      Convenience for when only a name is required.

    • lookup

      public CompletionStage<ServiceDiscovery.Resolved> lookup(Lookup query, Duration resolveTimeout)
      Java API: Perform basic lookup using underlying discovery implementation.

      While the implementation may provide other settings and ways to configure timeouts, the passed resolveTimeout should never be exceeded, as it signals the application's eagerness to wait for a result for this specific lookup.

      The returned future should be failed once resolveTimeout has passed with a ServiceDiscovery.DiscoveryTimeoutException.

    • lookup

      public CompletionStage<ServiceDiscovery.Resolved> lookup(String serviceName, Duration resolveTimeout)
      Java API

      Parameters:
      serviceName - A name, see discovery-method's docs for how this is interpreted
      resolveTimeout - Timeout. Up to the discovery-method to adhere to this and complete the CompletionStage with a [DiscoveryTimeoutException]