Class DeltaDiscoveryRequest.Builder

  • All Implemented Interfaces:
    com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, DeltaDiscoveryRequestOrBuilder, Cloneable
    Enclosing class:
    DeltaDiscoveryRequest

    public static final class DeltaDiscoveryRequest.Builder
    extends com.google.protobuf.GeneratedMessageV3.Builder<DeltaDiscoveryRequest.Builder>
    implements DeltaDiscoveryRequestOrBuilder
     DeltaDiscoveryRequest and DeltaDiscoveryResponse are used in a new gRPC
     endpoint for Delta xDS.
     With Delta xDS, the DeltaDiscoveryResponses do not need to include a full
     snapshot of the tracked resources. Instead, DeltaDiscoveryResponses are a
     diff to the state of a xDS client.
     In Delta XDS there are per-resource versions, which allow tracking state at
     the resource granularity.
     An xDS Delta session is always in the context of a gRPC bidirectional
     stream. This allows the xDS server to keep track of the state of xDS clients
     connected to it.
     In Delta xDS the nonce field is required and used to pair
     DeltaDiscoveryResponse to a DeltaDiscoveryRequest ACK or NACK.
     Optionally, a response message level system_version_info is present for
     debugging purposes only.
     DeltaDiscoveryRequest plays two independent roles. Any DeltaDiscoveryRequest
     can be either or both of: [1] informing the server of what resources the
     client has gained/lost interest in (using resource_names_subscribe and
     resource_names_unsubscribe), or [2] (N)ACKing an earlier resource update from
     the server (using response_nonce, with presence of error_detail making it a NACK).
     Additionally, the first message (for a given type_url) of a reconnected gRPC stream
     has a third role: informing the server of the resources (and their versions)
     that the client already possesses, using the initial_resource_versions field.
     As with state-of-the-world, when multiple resource types are multiplexed (ADS),
     all requests/acknowledgments/updates are logically walled off by type_url:
     a Cluster ACK exists in a completely separate world from a prior Route NACK.
     In particular, initial_resource_versions being sent at the "start" of every
     gRPC stream actually entails a message for each type_url, each with its own
     initial_resource_versions.
     [#next-free-field: 8]
     
    Protobuf type envoy.api.v2.DeltaDiscoveryRequest
    • Method Detail

      • getDescriptor

        public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
      • internalGetMapField

        protected com.google.protobuf.MapField internalGetMapField​(int number)
        Overrides:
        internalGetMapField in class com.google.protobuf.GeneratedMessageV3.Builder<DeltaDiscoveryRequest.Builder>
      • internalGetMutableMapField

        protected com.google.protobuf.MapField internalGetMutableMapField​(int number)
        Overrides:
        internalGetMutableMapField in class com.google.protobuf.GeneratedMessageV3.Builder<DeltaDiscoveryRequest.Builder>
      • internalGetFieldAccessorTable

        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
        Specified by:
        internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3.Builder<DeltaDiscoveryRequest.Builder>
      • clear

        public DeltaDiscoveryRequest.Builder clear()
        Specified by:
        clear in interface com.google.protobuf.Message.Builder
        Specified by:
        clear in interface com.google.protobuf.MessageLite.Builder
        Overrides:
        clear in class com.google.protobuf.GeneratedMessageV3.Builder<DeltaDiscoveryRequest.Builder>
      • getDescriptorForType

        public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
        Specified by:
        getDescriptorForType in interface com.google.protobuf.Message.Builder
        Specified by:
        getDescriptorForType in interface com.google.protobuf.MessageOrBuilder
        Overrides:
        getDescriptorForType in class com.google.protobuf.GeneratedMessageV3.Builder<DeltaDiscoveryRequest.Builder>
      • getDefaultInstanceForType

        public DeltaDiscoveryRequest getDefaultInstanceForType()
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder
      • build

        public DeltaDiscoveryRequest build()
        Specified by:
        build in interface com.google.protobuf.Message.Builder
        Specified by:
        build in interface com.google.protobuf.MessageLite.Builder
      • buildPartial

        public DeltaDiscoveryRequest buildPartial()
        Specified by:
        buildPartial in interface com.google.protobuf.Message.Builder
        Specified by:
        buildPartial in interface com.google.protobuf.MessageLite.Builder
      • clone

        public DeltaDiscoveryRequest.Builder clone()
        Specified by:
        clone in interface com.google.protobuf.Message.Builder
        Specified by:
        clone in interface com.google.protobuf.MessageLite.Builder
        Overrides:
        clone in class com.google.protobuf.GeneratedMessageV3.Builder<DeltaDiscoveryRequest.Builder>
      • clearField

        public DeltaDiscoveryRequest.Builder clearField​(com.google.protobuf.Descriptors.FieldDescriptor field)
        Specified by:
        clearField in interface com.google.protobuf.Message.Builder
        Overrides:
        clearField in class com.google.protobuf.GeneratedMessageV3.Builder<DeltaDiscoveryRequest.Builder>
      • clearOneof

        public DeltaDiscoveryRequest.Builder clearOneof​(com.google.protobuf.Descriptors.OneofDescriptor oneof)
        Specified by:
        clearOneof in interface com.google.protobuf.Message.Builder
        Overrides:
        clearOneof in class com.google.protobuf.GeneratedMessageV3.Builder<DeltaDiscoveryRequest.Builder>
      • setRepeatedField

        public DeltaDiscoveryRequest.Builder setRepeatedField​(com.google.protobuf.Descriptors.FieldDescriptor field,
                                                              int index,
                                                              Object value)
        Specified by:
        setRepeatedField in interface com.google.protobuf.Message.Builder
        Overrides:
        setRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<DeltaDiscoveryRequest.Builder>
      • addRepeatedField

        public DeltaDiscoveryRequest.Builder addRepeatedField​(com.google.protobuf.Descriptors.FieldDescriptor field,
                                                              Object value)
        Specified by:
        addRepeatedField in interface com.google.protobuf.Message.Builder
        Overrides:
        addRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<DeltaDiscoveryRequest.Builder>
      • isInitialized

        public final boolean isInitialized()
        Specified by:
        isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
        Overrides:
        isInitialized in class com.google.protobuf.GeneratedMessageV3.Builder<DeltaDiscoveryRequest.Builder>
      • mergeFrom

        public DeltaDiscoveryRequest.Builder mergeFrom​(com.google.protobuf.CodedInputStream input,
                                                       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                throws IOException
        Specified by:
        mergeFrom in interface com.google.protobuf.Message.Builder
        Specified by:
        mergeFrom in interface com.google.protobuf.MessageLite.Builder
        Overrides:
        mergeFrom in class com.google.protobuf.AbstractMessage.Builder<DeltaDiscoveryRequest.Builder>
        Throws:
        IOException
      • getNodeBuilder

        public Node.Builder getNodeBuilder()
         The node making the request.
         
        .envoy.api.v2.core.Node node = 1;
      • getTypeUrl

        public String getTypeUrl()
         Type of the resource that is being requested, e.g.
         "type.googleapis.com/envoy.api.v2.ClusterLoadAssignment".
         
        string type_url = 2;
        Specified by:
        getTypeUrl in interface DeltaDiscoveryRequestOrBuilder
      • getTypeUrlBytes

        public com.google.protobuf.ByteString getTypeUrlBytes()
         Type of the resource that is being requested, e.g.
         "type.googleapis.com/envoy.api.v2.ClusterLoadAssignment".
         
        string type_url = 2;
        Specified by:
        getTypeUrlBytes in interface DeltaDiscoveryRequestOrBuilder
      • setTypeUrl

        public DeltaDiscoveryRequest.Builder setTypeUrl​(String value)
         Type of the resource that is being requested, e.g.
         "type.googleapis.com/envoy.api.v2.ClusterLoadAssignment".
         
        string type_url = 2;
      • clearTypeUrl

        public DeltaDiscoveryRequest.Builder clearTypeUrl()
         Type of the resource that is being requested, e.g.
         "type.googleapis.com/envoy.api.v2.ClusterLoadAssignment".
         
        string type_url = 2;
      • setTypeUrlBytes

        public DeltaDiscoveryRequest.Builder setTypeUrlBytes​(com.google.protobuf.ByteString value)
         Type of the resource that is being requested, e.g.
         "type.googleapis.com/envoy.api.v2.ClusterLoadAssignment".
         
        string type_url = 2;
      • getResourceNamesSubscribeList

        public com.google.protobuf.ProtocolStringList getResourceNamesSubscribeList()
         DeltaDiscoveryRequests allow the client to add or remove individual
         resources to the set of tracked resources in the context of a stream.
         All resource names in the resource_names_subscribe list are added to the
         set of tracked resources and all resource names in the resource_names_unsubscribe
         list are removed from the set of tracked resources.
         *Unlike* state-of-the-world xDS, an empty resource_names_subscribe or
         resource_names_unsubscribe list simply means that no resources are to be
         added or removed to the resource list.
         *Like* state-of-the-world xDS, the server must send updates for all tracked
         resources, but can also send updates for resources the client has not subscribed to.
         NOTE: the server must respond with all resources listed in resource_names_subscribe,
         even if it believes the client has the most recent version of them. The reason:
         the client may have dropped them, but then regained interest before it had a chance
         to send the unsubscribe message. See DeltaSubscriptionStateTest.RemoveThenAdd.
         These two fields can be set in any DeltaDiscoveryRequest, including ACKs
         and initial_resource_versions.
         A list of Resource names to add to the list of tracked resources.
         
        repeated string resource_names_subscribe = 3;
        Specified by:
        getResourceNamesSubscribeList in interface DeltaDiscoveryRequestOrBuilder
      • getResourceNamesSubscribeCount

        public int getResourceNamesSubscribeCount()
         DeltaDiscoveryRequests allow the client to add or remove individual
         resources to the set of tracked resources in the context of a stream.
         All resource names in the resource_names_subscribe list are added to the
         set of tracked resources and all resource names in the resource_names_unsubscribe
         list are removed from the set of tracked resources.
         *Unlike* state-of-the-world xDS, an empty resource_names_subscribe or
         resource_names_unsubscribe list simply means that no resources are to be
         added or removed to the resource list.
         *Like* state-of-the-world xDS, the server must send updates for all tracked
         resources, but can also send updates for resources the client has not subscribed to.
         NOTE: the server must respond with all resources listed in resource_names_subscribe,
         even if it believes the client has the most recent version of them. The reason:
         the client may have dropped them, but then regained interest before it had a chance
         to send the unsubscribe message. See DeltaSubscriptionStateTest.RemoveThenAdd.
         These two fields can be set in any DeltaDiscoveryRequest, including ACKs
         and initial_resource_versions.
         A list of Resource names to add to the list of tracked resources.
         
        repeated string resource_names_subscribe = 3;
        Specified by:
        getResourceNamesSubscribeCount in interface DeltaDiscoveryRequestOrBuilder
      • getResourceNamesSubscribe

        public String getResourceNamesSubscribe​(int index)
         DeltaDiscoveryRequests allow the client to add or remove individual
         resources to the set of tracked resources in the context of a stream.
         All resource names in the resource_names_subscribe list are added to the
         set of tracked resources and all resource names in the resource_names_unsubscribe
         list are removed from the set of tracked resources.
         *Unlike* state-of-the-world xDS, an empty resource_names_subscribe or
         resource_names_unsubscribe list simply means that no resources are to be
         added or removed to the resource list.
         *Like* state-of-the-world xDS, the server must send updates for all tracked
         resources, but can also send updates for resources the client has not subscribed to.
         NOTE: the server must respond with all resources listed in resource_names_subscribe,
         even if it believes the client has the most recent version of them. The reason:
         the client may have dropped them, but then regained interest before it had a chance
         to send the unsubscribe message. See DeltaSubscriptionStateTest.RemoveThenAdd.
         These two fields can be set in any DeltaDiscoveryRequest, including ACKs
         and initial_resource_versions.
         A list of Resource names to add to the list of tracked resources.
         
        repeated string resource_names_subscribe = 3;
        Specified by:
        getResourceNamesSubscribe in interface DeltaDiscoveryRequestOrBuilder
      • getResourceNamesSubscribeBytes

        public com.google.protobuf.ByteString getResourceNamesSubscribeBytes​(int index)
         DeltaDiscoveryRequests allow the client to add or remove individual
         resources to the set of tracked resources in the context of a stream.
         All resource names in the resource_names_subscribe list are added to the
         set of tracked resources and all resource names in the resource_names_unsubscribe
         list are removed from the set of tracked resources.
         *Unlike* state-of-the-world xDS, an empty resource_names_subscribe or
         resource_names_unsubscribe list simply means that no resources are to be
         added or removed to the resource list.
         *Like* state-of-the-world xDS, the server must send updates for all tracked
         resources, but can also send updates for resources the client has not subscribed to.
         NOTE: the server must respond with all resources listed in resource_names_subscribe,
         even if it believes the client has the most recent version of them. The reason:
         the client may have dropped them, but then regained interest before it had a chance
         to send the unsubscribe message. See DeltaSubscriptionStateTest.RemoveThenAdd.
         These two fields can be set in any DeltaDiscoveryRequest, including ACKs
         and initial_resource_versions.
         A list of Resource names to add to the list of tracked resources.
         
        repeated string resource_names_subscribe = 3;
        Specified by:
        getResourceNamesSubscribeBytes in interface DeltaDiscoveryRequestOrBuilder
      • setResourceNamesSubscribe

        public DeltaDiscoveryRequest.Builder setResourceNamesSubscribe​(int index,
                                                                       String value)
         DeltaDiscoveryRequests allow the client to add or remove individual
         resources to the set of tracked resources in the context of a stream.
         All resource names in the resource_names_subscribe list are added to the
         set of tracked resources and all resource names in the resource_names_unsubscribe
         list are removed from the set of tracked resources.
         *Unlike* state-of-the-world xDS, an empty resource_names_subscribe or
         resource_names_unsubscribe list simply means that no resources are to be
         added or removed to the resource list.
         *Like* state-of-the-world xDS, the server must send updates for all tracked
         resources, but can also send updates for resources the client has not subscribed to.
         NOTE: the server must respond with all resources listed in resource_names_subscribe,
         even if it believes the client has the most recent version of them. The reason:
         the client may have dropped them, but then regained interest before it had a chance
         to send the unsubscribe message. See DeltaSubscriptionStateTest.RemoveThenAdd.
         These two fields can be set in any DeltaDiscoveryRequest, including ACKs
         and initial_resource_versions.
         A list of Resource names to add to the list of tracked resources.
         
        repeated string resource_names_subscribe = 3;
      • addResourceNamesSubscribe

        public DeltaDiscoveryRequest.Builder addResourceNamesSubscribe​(String value)
         DeltaDiscoveryRequests allow the client to add or remove individual
         resources to the set of tracked resources in the context of a stream.
         All resource names in the resource_names_subscribe list are added to the
         set of tracked resources and all resource names in the resource_names_unsubscribe
         list are removed from the set of tracked resources.
         *Unlike* state-of-the-world xDS, an empty resource_names_subscribe or
         resource_names_unsubscribe list simply means that no resources are to be
         added or removed to the resource list.
         *Like* state-of-the-world xDS, the server must send updates for all tracked
         resources, but can also send updates for resources the client has not subscribed to.
         NOTE: the server must respond with all resources listed in resource_names_subscribe,
         even if it believes the client has the most recent version of them. The reason:
         the client may have dropped them, but then regained interest before it had a chance
         to send the unsubscribe message. See DeltaSubscriptionStateTest.RemoveThenAdd.
         These two fields can be set in any DeltaDiscoveryRequest, including ACKs
         and initial_resource_versions.
         A list of Resource names to add to the list of tracked resources.
         
        repeated string resource_names_subscribe = 3;
      • addAllResourceNamesSubscribe

        public DeltaDiscoveryRequest.Builder addAllResourceNamesSubscribe​(Iterable<String> values)
         DeltaDiscoveryRequests allow the client to add or remove individual
         resources to the set of tracked resources in the context of a stream.
         All resource names in the resource_names_subscribe list are added to the
         set of tracked resources and all resource names in the resource_names_unsubscribe
         list are removed from the set of tracked resources.
         *Unlike* state-of-the-world xDS, an empty resource_names_subscribe or
         resource_names_unsubscribe list simply means that no resources are to be
         added or removed to the resource list.
         *Like* state-of-the-world xDS, the server must send updates for all tracked
         resources, but can also send updates for resources the client has not subscribed to.
         NOTE: the server must respond with all resources listed in resource_names_subscribe,
         even if it believes the client has the most recent version of them. The reason:
         the client may have dropped them, but then regained interest before it had a chance
         to send the unsubscribe message. See DeltaSubscriptionStateTest.RemoveThenAdd.
         These two fields can be set in any DeltaDiscoveryRequest, including ACKs
         and initial_resource_versions.
         A list of Resource names to add to the list of tracked resources.
         
        repeated string resource_names_subscribe = 3;
      • clearResourceNamesSubscribe

        public DeltaDiscoveryRequest.Builder clearResourceNamesSubscribe()
         DeltaDiscoveryRequests allow the client to add or remove individual
         resources to the set of tracked resources in the context of a stream.
         All resource names in the resource_names_subscribe list are added to the
         set of tracked resources and all resource names in the resource_names_unsubscribe
         list are removed from the set of tracked resources.
         *Unlike* state-of-the-world xDS, an empty resource_names_subscribe or
         resource_names_unsubscribe list simply means that no resources are to be
         added or removed to the resource list.
         *Like* state-of-the-world xDS, the server must send updates for all tracked
         resources, but can also send updates for resources the client has not subscribed to.
         NOTE: the server must respond with all resources listed in resource_names_subscribe,
         even if it believes the client has the most recent version of them. The reason:
         the client may have dropped them, but then regained interest before it had a chance
         to send the unsubscribe message. See DeltaSubscriptionStateTest.RemoveThenAdd.
         These two fields can be set in any DeltaDiscoveryRequest, including ACKs
         and initial_resource_versions.
         A list of Resource names to add to the list of tracked resources.
         
        repeated string resource_names_subscribe = 3;
      • addResourceNamesSubscribeBytes

        public DeltaDiscoveryRequest.Builder addResourceNamesSubscribeBytes​(com.google.protobuf.ByteString value)
         DeltaDiscoveryRequests allow the client to add or remove individual
         resources to the set of tracked resources in the context of a stream.
         All resource names in the resource_names_subscribe list are added to the
         set of tracked resources and all resource names in the resource_names_unsubscribe
         list are removed from the set of tracked resources.
         *Unlike* state-of-the-world xDS, an empty resource_names_subscribe or
         resource_names_unsubscribe list simply means that no resources are to be
         added or removed to the resource list.
         *Like* state-of-the-world xDS, the server must send updates for all tracked
         resources, but can also send updates for resources the client has not subscribed to.
         NOTE: the server must respond with all resources listed in resource_names_subscribe,
         even if it believes the client has the most recent version of them. The reason:
         the client may have dropped them, but then regained interest before it had a chance
         to send the unsubscribe message. See DeltaSubscriptionStateTest.RemoveThenAdd.
         These two fields can be set in any DeltaDiscoveryRequest, including ACKs
         and initial_resource_versions.
         A list of Resource names to add to the list of tracked resources.
         
        repeated string resource_names_subscribe = 3;
      • getResourceNamesUnsubscribeList

        public com.google.protobuf.ProtocolStringList getResourceNamesUnsubscribeList()
         A list of Resource names to remove from the list of tracked resources.
         
        repeated string resource_names_unsubscribe = 4;
        Specified by:
        getResourceNamesUnsubscribeList in interface DeltaDiscoveryRequestOrBuilder
      • getResourceNamesUnsubscribeBytes

        public com.google.protobuf.ByteString getResourceNamesUnsubscribeBytes​(int index)
         A list of Resource names to remove from the list of tracked resources.
         
        repeated string resource_names_unsubscribe = 4;
        Specified by:
        getResourceNamesUnsubscribeBytes in interface DeltaDiscoveryRequestOrBuilder
      • setResourceNamesUnsubscribe

        public DeltaDiscoveryRequest.Builder setResourceNamesUnsubscribe​(int index,
                                                                         String value)
         A list of Resource names to remove from the list of tracked resources.
         
        repeated string resource_names_unsubscribe = 4;
      • addResourceNamesUnsubscribe

        public DeltaDiscoveryRequest.Builder addResourceNamesUnsubscribe​(String value)
         A list of Resource names to remove from the list of tracked resources.
         
        repeated string resource_names_unsubscribe = 4;
      • addAllResourceNamesUnsubscribe

        public DeltaDiscoveryRequest.Builder addAllResourceNamesUnsubscribe​(Iterable<String> values)
         A list of Resource names to remove from the list of tracked resources.
         
        repeated string resource_names_unsubscribe = 4;
      • clearResourceNamesUnsubscribe

        public DeltaDiscoveryRequest.Builder clearResourceNamesUnsubscribe()
         A list of Resource names to remove from the list of tracked resources.
         
        repeated string resource_names_unsubscribe = 4;
      • addResourceNamesUnsubscribeBytes

        public DeltaDiscoveryRequest.Builder addResourceNamesUnsubscribeBytes​(com.google.protobuf.ByteString value)
         A list of Resource names to remove from the list of tracked resources.
         
        repeated string resource_names_unsubscribe = 4;
      • getInitialResourceVersionsCount

        public int getInitialResourceVersionsCount()
        Description copied from interface: DeltaDiscoveryRequestOrBuilder
         Informs the server of the versions of the resources the xDS client knows of, to enable the
         client to continue the same logical xDS session even in the face of gRPC stream reconnection.
         It will not be populated: [1] in the very first stream of a session, since the client will
         not yet have any resources,  [2] in any message after the first in a stream (for a given
         type_url), since the server will already be correctly tracking the client's state.
         (In ADS, the first message *of each type_url* of a reconnected stream populates this map.)
         The map's keys are names of xDS resources known to the xDS client.
         The map's values are opaque resource versions.
         
        map<string, string> initial_resource_versions = 5;
        Specified by:
        getInitialResourceVersionsCount in interface DeltaDiscoveryRequestOrBuilder
      • containsInitialResourceVersions

        public boolean containsInitialResourceVersions​(String key)
         Informs the server of the versions of the resources the xDS client knows of, to enable the
         client to continue the same logical xDS session even in the face of gRPC stream reconnection.
         It will not be populated: [1] in the very first stream of a session, since the client will
         not yet have any resources,  [2] in any message after the first in a stream (for a given
         type_url), since the server will already be correctly tracking the client's state.
         (In ADS, the first message *of each type_url* of a reconnected stream populates this map.)
         The map's keys are names of xDS resources known to the xDS client.
         The map's values are opaque resource versions.
         
        map<string, string> initial_resource_versions = 5;
        Specified by:
        containsInitialResourceVersions in interface DeltaDiscoveryRequestOrBuilder
      • getInitialResourceVersionsMap

        public Map<String,​String> getInitialResourceVersionsMap()
         Informs the server of the versions of the resources the xDS client knows of, to enable the
         client to continue the same logical xDS session even in the face of gRPC stream reconnection.
         It will not be populated: [1] in the very first stream of a session, since the client will
         not yet have any resources,  [2] in any message after the first in a stream (for a given
         type_url), since the server will already be correctly tracking the client's state.
         (In ADS, the first message *of each type_url* of a reconnected stream populates this map.)
         The map's keys are names of xDS resources known to the xDS client.
         The map's values are opaque resource versions.
         
        map<string, string> initial_resource_versions = 5;
        Specified by:
        getInitialResourceVersionsMap in interface DeltaDiscoveryRequestOrBuilder
      • getInitialResourceVersionsOrDefault

        public String getInitialResourceVersionsOrDefault​(String key,
                                                          String defaultValue)
         Informs the server of the versions of the resources the xDS client knows of, to enable the
         client to continue the same logical xDS session even in the face of gRPC stream reconnection.
         It will not be populated: [1] in the very first stream of a session, since the client will
         not yet have any resources,  [2] in any message after the first in a stream (for a given
         type_url), since the server will already be correctly tracking the client's state.
         (In ADS, the first message *of each type_url* of a reconnected stream populates this map.)
         The map's keys are names of xDS resources known to the xDS client.
         The map's values are opaque resource versions.
         
        map<string, string> initial_resource_versions = 5;
        Specified by:
        getInitialResourceVersionsOrDefault in interface DeltaDiscoveryRequestOrBuilder
      • getInitialResourceVersionsOrThrow

        public String getInitialResourceVersionsOrThrow​(String key)
         Informs the server of the versions of the resources the xDS client knows of, to enable the
         client to continue the same logical xDS session even in the face of gRPC stream reconnection.
         It will not be populated: [1] in the very first stream of a session, since the client will
         not yet have any resources,  [2] in any message after the first in a stream (for a given
         type_url), since the server will already be correctly tracking the client's state.
         (In ADS, the first message *of each type_url* of a reconnected stream populates this map.)
         The map's keys are names of xDS resources known to the xDS client.
         The map's values are opaque resource versions.
         
        map<string, string> initial_resource_versions = 5;
        Specified by:
        getInitialResourceVersionsOrThrow in interface DeltaDiscoveryRequestOrBuilder
      • removeInitialResourceVersions

        public DeltaDiscoveryRequest.Builder removeInitialResourceVersions​(String key)
         Informs the server of the versions of the resources the xDS client knows of, to enable the
         client to continue the same logical xDS session even in the face of gRPC stream reconnection.
         It will not be populated: [1] in the very first stream of a session, since the client will
         not yet have any resources,  [2] in any message after the first in a stream (for a given
         type_url), since the server will already be correctly tracking the client's state.
         (In ADS, the first message *of each type_url* of a reconnected stream populates this map.)
         The map's keys are names of xDS resources known to the xDS client.
         The map's values are opaque resource versions.
         
        map<string, string> initial_resource_versions = 5;
      • getMutableInitialResourceVersions

        @Deprecated
        public Map<String,​String> getMutableInitialResourceVersions()
        Deprecated.
        Use alternate mutation accessors instead.
      • putInitialResourceVersions

        public DeltaDiscoveryRequest.Builder putInitialResourceVersions​(String key,
                                                                        String value)
         Informs the server of the versions of the resources the xDS client knows of, to enable the
         client to continue the same logical xDS session even in the face of gRPC stream reconnection.
         It will not be populated: [1] in the very first stream of a session, since the client will
         not yet have any resources,  [2] in any message after the first in a stream (for a given
         type_url), since the server will already be correctly tracking the client's state.
         (In ADS, the first message *of each type_url* of a reconnected stream populates this map.)
         The map's keys are names of xDS resources known to the xDS client.
         The map's values are opaque resource versions.
         
        map<string, string> initial_resource_versions = 5;
      • putAllInitialResourceVersions

        public DeltaDiscoveryRequest.Builder putAllInitialResourceVersions​(Map<String,​String> values)
         Informs the server of the versions of the resources the xDS client knows of, to enable the
         client to continue the same logical xDS session even in the face of gRPC stream reconnection.
         It will not be populated: [1] in the very first stream of a session, since the client will
         not yet have any resources,  [2] in any message after the first in a stream (for a given
         type_url), since the server will already be correctly tracking the client's state.
         (In ADS, the first message *of each type_url* of a reconnected stream populates this map.)
         The map's keys are names of xDS resources known to the xDS client.
         The map's values are opaque resource versions.
         
        map<string, string> initial_resource_versions = 5;
      • getResponseNonce

        public String getResponseNonce()
         When the DeltaDiscoveryRequest is a ACK or NACK message in response
         to a previous DeltaDiscoveryResponse, the response_nonce must be the
         nonce in the DeltaDiscoveryResponse.
         Otherwise (unlike in DiscoveryRequest) response_nonce must be omitted.
         
        string response_nonce = 6;
        Specified by:
        getResponseNonce in interface DeltaDiscoveryRequestOrBuilder
      • getResponseNonceBytes

        public com.google.protobuf.ByteString getResponseNonceBytes()
         When the DeltaDiscoveryRequest is a ACK or NACK message in response
         to a previous DeltaDiscoveryResponse, the response_nonce must be the
         nonce in the DeltaDiscoveryResponse.
         Otherwise (unlike in DiscoveryRequest) response_nonce must be omitted.
         
        string response_nonce = 6;
        Specified by:
        getResponseNonceBytes in interface DeltaDiscoveryRequestOrBuilder
      • setResponseNonce

        public DeltaDiscoveryRequest.Builder setResponseNonce​(String value)
         When the DeltaDiscoveryRequest is a ACK or NACK message in response
         to a previous DeltaDiscoveryResponse, the response_nonce must be the
         nonce in the DeltaDiscoveryResponse.
         Otherwise (unlike in DiscoveryRequest) response_nonce must be omitted.
         
        string response_nonce = 6;
      • clearResponseNonce

        public DeltaDiscoveryRequest.Builder clearResponseNonce()
         When the DeltaDiscoveryRequest is a ACK or NACK message in response
         to a previous DeltaDiscoveryResponse, the response_nonce must be the
         nonce in the DeltaDiscoveryResponse.
         Otherwise (unlike in DiscoveryRequest) response_nonce must be omitted.
         
        string response_nonce = 6;
      • setResponseNonceBytes

        public DeltaDiscoveryRequest.Builder setResponseNonceBytes​(com.google.protobuf.ByteString value)
         When the DeltaDiscoveryRequest is a ACK or NACK message in response
         to a previous DeltaDiscoveryResponse, the response_nonce must be the
         nonce in the DeltaDiscoveryResponse.
         Otherwise (unlike in DiscoveryRequest) response_nonce must be omitted.
         
        string response_nonce = 6;
      • hasErrorDetail

        public boolean hasErrorDetail()
         This is populated when the previous :ref:`DiscoveryResponse <envoy_api_msg_DiscoveryResponse>`
         failed to update configuration. The *message* field in *error_details*
         provides the Envoy internal exception related to the failure.
         
        .google.rpc.Status error_detail = 7;
        Specified by:
        hasErrorDetail in interface DeltaDiscoveryRequestOrBuilder
      • getErrorDetail

        public Status getErrorDetail()
         This is populated when the previous :ref:`DiscoveryResponse <envoy_api_msg_DiscoveryResponse>`
         failed to update configuration. The *message* field in *error_details*
         provides the Envoy internal exception related to the failure.
         
        .google.rpc.Status error_detail = 7;
        Specified by:
        getErrorDetail in interface DeltaDiscoveryRequestOrBuilder
      • setErrorDetail

        public DeltaDiscoveryRequest.Builder setErrorDetail​(Status value)
         This is populated when the previous :ref:`DiscoveryResponse <envoy_api_msg_DiscoveryResponse>`
         failed to update configuration. The *message* field in *error_details*
         provides the Envoy internal exception related to the failure.
         
        .google.rpc.Status error_detail = 7;
      • setErrorDetail

        public DeltaDiscoveryRequest.Builder setErrorDetail​(Status.Builder builderForValue)
         This is populated when the previous :ref:`DiscoveryResponse <envoy_api_msg_DiscoveryResponse>`
         failed to update configuration. The *message* field in *error_details*
         provides the Envoy internal exception related to the failure.
         
        .google.rpc.Status error_detail = 7;
      • mergeErrorDetail

        public DeltaDiscoveryRequest.Builder mergeErrorDetail​(Status value)
         This is populated when the previous :ref:`DiscoveryResponse <envoy_api_msg_DiscoveryResponse>`
         failed to update configuration. The *message* field in *error_details*
         provides the Envoy internal exception related to the failure.
         
        .google.rpc.Status error_detail = 7;
      • clearErrorDetail

        public DeltaDiscoveryRequest.Builder clearErrorDetail()
         This is populated when the previous :ref:`DiscoveryResponse <envoy_api_msg_DiscoveryResponse>`
         failed to update configuration. The *message* field in *error_details*
         provides the Envoy internal exception related to the failure.
         
        .google.rpc.Status error_detail = 7;
      • getErrorDetailBuilder

        public Status.Builder getErrorDetailBuilder()
         This is populated when the previous :ref:`DiscoveryResponse <envoy_api_msg_DiscoveryResponse>`
         failed to update configuration. The *message* field in *error_details*
         provides the Envoy internal exception related to the failure.
         
        .google.rpc.Status error_detail = 7;
      • getErrorDetailOrBuilder

        public StatusOrBuilder getErrorDetailOrBuilder()
         This is populated when the previous :ref:`DiscoveryResponse <envoy_api_msg_DiscoveryResponse>`
         failed to update configuration. The *message* field in *error_details*
         provides the Envoy internal exception related to the failure.
         
        .google.rpc.Status error_detail = 7;
        Specified by:
        getErrorDetailOrBuilder in interface DeltaDiscoveryRequestOrBuilder
      • setUnknownFields

        public final DeltaDiscoveryRequest.Builder setUnknownFields​(com.google.protobuf.UnknownFieldSet unknownFields)
        Specified by:
        setUnknownFields in interface com.google.protobuf.Message.Builder
        Overrides:
        setUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<DeltaDiscoveryRequest.Builder>
      • mergeUnknownFields

        public final DeltaDiscoveryRequest.Builder mergeUnknownFields​(com.google.protobuf.UnknownFieldSet unknownFields)
        Specified by:
        mergeUnknownFields in interface com.google.protobuf.Message.Builder
        Overrides:
        mergeUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<DeltaDiscoveryRequest.Builder>