Package io.grpc
Class NameResolver.Listener2
java.lang.Object
io.grpc.NameResolver.Listener2
- All Implemented Interfaces:
NameResolver.Listener
- Enclosing class:
- NameResolver
@ExperimentalApi("https://github.com/grpc/grpc-java/issues/1770")
public abstract static class NameResolver.Listener2
extends Object
implements NameResolver.Listener
Receives address updates.
All methods are expected to return quickly.
This is a replacement API of Listener. However, we think this new API may change
again, so we aren't yet encouraging mass-migration to it. It is fine to use and works.
- Since:
- 1.21.0
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal voidonAddresses(List<EquivalentAddressGroup> servers, Attributes attributes) Deprecated.This will be removed in 1.22.0abstract voidHandles a name resolving error from the resolver.abstract voidonResult(NameResolver.ResolutionResult resolutionResult) Handles updates on resolved addresses and attributes.
-
Constructor Details
-
Listener2
public Listener2()
-
-
Method Details
-
onAddresses
@Deprecated @InlineMe(replacement="this.onResult(ResolutionResult.newBuilder().setAddresses(servers).setAttributes(attributes).build())", imports="io.grpc.NameResolver.ResolutionResult") public final void onAddresses(List<EquivalentAddressGroup> servers, @ResolutionResultAttr Attributes attributes) Deprecated.This will be removed in 1.22.0Handles updates on resolved addresses and attributes.- Specified by:
onAddressesin interfaceNameResolver.Listener- Parameters:
servers- the resolved server addresses. An empty list will triggerNameResolver.Listener.onError(io.grpc.Status)attributes- extra information from naming system.
-
onResult
Handles updates on resolved addresses and attributes. IfNameResolver.ResolutionResult.getAddresses()is empty,onError(Status)will be called.- Parameters:
resolutionResult- the resolved server addresses, attributes, and Service Config.- Since:
- 1.21.0
-
onError
Handles a name resolving error from the resolver. The listener is responsible for eventually invokingNameResolver.refresh()to re-attempt resolution.- Specified by:
onErrorin interfaceNameResolver.Listener- Parameters:
error- a non-OK status- Since:
- 1.21.0
-