Package akka.discovery
Class ServiceDiscovery
- java.lang.Object
-
- akka.discovery.ServiceDiscovery
-
public abstract class ServiceDiscovery extends java.lang.Object
Implement to provide a service discovery method
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
ServiceDiscovery.DiscoveryTimeoutException
Future returned by resolve(name, timeout) should be failed with this exception if the underlying mechanism was unable to resolve the name within the given timeout.static class
ServiceDiscovery.Resolved
Result of a successful resolve requeststatic class
ServiceDiscovery.Resolved$
static class
ServiceDiscovery.ResolvedTarget
Resolved target host, with optional port and the IP address.static class
ServiceDiscovery.ResolvedTarget$
-
Constructor Summary
Constructors Constructor Description ServiceDiscovery()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description java.util.concurrent.CompletionStage<ServiceDiscovery.Resolved>
lookup(Lookup query, java.time.Duration resolveTimeout)
Java API: Perform basic lookup using underlying discovery implementation.abstract scala.concurrent.Future<ServiceDiscovery.Resolved>
lookup(Lookup lookup, scala.concurrent.duration.FiniteDuration resolveTimeout)
Scala API: Perform lookup using underlying discovery implementation.java.util.concurrent.CompletionStage<ServiceDiscovery.Resolved>
lookup(java.lang.String serviceName, java.time.Duration resolveTimeout)
Java APIscala.concurrent.Future<ServiceDiscovery.Resolved>
lookup(java.lang.String serviceName, scala.concurrent.duration.FiniteDuration resolveTimeout)
Scala API: Perform lookup using underlying discovery implementation.
-
-
-
Method Detail
-
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(java.lang.String serviceName, scala.concurrent.duration.FiniteDuration resolveTimeout)
Scala API: Perform lookup using underlying discovery implementation.Convenience lookup accepting a name. If the name is a valid SRV entry, an SRV lookup is done, otherwise a regular lookup. For more control use the overload accepting a
Lookup
.
-
lookup
public java.util.concurrent.CompletionStage<ServiceDiscovery.Resolved> lookup(Lookup query, java.time.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 java.util.concurrent.CompletionStage<ServiceDiscovery.Resolved> lookup(java.lang.String serviceName, java.time.Duration resolveTimeout)
Java APIConvenience lookup accepting a name. If the name is a valid SRV entry, an SRV lookup is done, otherwise a regular lookup. For more control use the overload accepting a
Lookup
.- Parameters:
serviceName
- A name, see discovery-method's docs for how this is interpretedresolveTimeout
- Timeout. Up to the discovery-method to adhere to this and complete the CompletionStage with a [DiscoveryTimeoutException]
-
-