Class ApiConfigSource

java.lang.Object
com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessage
com.google.protobuf.GeneratedMessage
io.envoyproxy.envoy.config.core.v3.ApiConfigSource
All Implemented Interfaces:
com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, ApiConfigSourceOrBuilder, Serializable

public final class ApiConfigSource extends com.google.protobuf.GeneratedMessage implements ApiConfigSourceOrBuilder
 API configuration source. This identifies the API type and cluster that Envoy
 will use to fetch an xDS API.
 [#next-free-field: 10]
 
Protobuf type envoy.config.core.v3.ApiConfigSource
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      See Also:
    • bitField0_

      private int bitField0_
    • API_TYPE_FIELD_NUMBER

      public static final int API_TYPE_FIELD_NUMBER
      See Also:
    • apiType_

      private int apiType_
    • TRANSPORT_API_VERSION_FIELD_NUMBER

      public static final int TRANSPORT_API_VERSION_FIELD_NUMBER
      See Also:
    • transportApiVersion_

      private int transportApiVersion_
    • CLUSTER_NAMES_FIELD_NUMBER

      public static final int CLUSTER_NAMES_FIELD_NUMBER
      See Also:
    • clusterNames_

      private com.google.protobuf.LazyStringArrayList clusterNames_
    • GRPC_SERVICES_FIELD_NUMBER

      public static final int GRPC_SERVICES_FIELD_NUMBER
      See Also:
    • grpcServices_

      private List<GrpcService> grpcServices_
    • REFRESH_DELAY_FIELD_NUMBER

      public static final int REFRESH_DELAY_FIELD_NUMBER
      See Also:
    • refreshDelay_

      private com.google.protobuf.Duration refreshDelay_
    • REQUEST_TIMEOUT_FIELD_NUMBER

      public static final int REQUEST_TIMEOUT_FIELD_NUMBER
      See Also:
    • requestTimeout_

      private com.google.protobuf.Duration requestTimeout_
    • RATE_LIMIT_SETTINGS_FIELD_NUMBER

      public static final int RATE_LIMIT_SETTINGS_FIELD_NUMBER
      See Also:
    • rateLimitSettings_

      private RateLimitSettings rateLimitSettings_
    • SET_NODE_ON_FIRST_MESSAGE_ONLY_FIELD_NUMBER

      public static final int SET_NODE_ON_FIRST_MESSAGE_ONLY_FIELD_NUMBER
      See Also:
    • setNodeOnFirstMessageOnly_

      private boolean setNodeOnFirstMessageOnly_
    • CONFIG_VALIDATORS_FIELD_NUMBER

      public static final int CONFIG_VALIDATORS_FIELD_NUMBER
      See Also:
    • configValidators_

      private List<TypedExtensionConfig> configValidators_
    • memoizedIsInitialized

      private byte memoizedIsInitialized
    • DEFAULT_INSTANCE

      private static final ApiConfigSource DEFAULT_INSTANCE
    • PARSER

      private static final com.google.protobuf.Parser<ApiConfigSource> PARSER
  • Constructor Details

    • ApiConfigSource

      private ApiConfigSource(com.google.protobuf.GeneratedMessage.Builder<?> builder)
    • ApiConfigSource

      private ApiConfigSource()
  • Method Details

    • getDescriptor

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

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessage
    • getApiTypeValue

      public int getApiTypeValue()
       API type (gRPC, REST, delta gRPC)
       
      .envoy.config.core.v3.ApiConfigSource.ApiType api_type = 1 [(.validate.rules) = { ... }
      Specified by:
      getApiTypeValue in interface ApiConfigSourceOrBuilder
      Returns:
      The enum numeric value on the wire for apiType.
    • getApiType

      public ApiConfigSource.ApiType getApiType()
       API type (gRPC, REST, delta gRPC)
       
      .envoy.config.core.v3.ApiConfigSource.ApiType api_type = 1 [(.validate.rules) = { ... }
      Specified by:
      getApiType in interface ApiConfigSourceOrBuilder
      Returns:
      The apiType.
    • getTransportApiVersionValue

      public int getTransportApiVersionValue()
       API version for xDS transport protocol. This describes the xDS gRPC/REST
       endpoint and version of [Delta]DiscoveryRequest/Response used on the wire.
       
      .envoy.config.core.v3.ApiVersion transport_api_version = 8 [(.validate.rules) = { ... }
      Specified by:
      getTransportApiVersionValue in interface ApiConfigSourceOrBuilder
      Returns:
      The enum numeric value on the wire for transportApiVersion.
    • getTransportApiVersion

      public ApiVersion getTransportApiVersion()
       API version for xDS transport protocol. This describes the xDS gRPC/REST
       endpoint and version of [Delta]DiscoveryRequest/Response used on the wire.
       
      .envoy.config.core.v3.ApiVersion transport_api_version = 8 [(.validate.rules) = { ... }
      Specified by:
      getTransportApiVersion in interface ApiConfigSourceOrBuilder
      Returns:
      The transportApiVersion.
    • getClusterNamesList

      public com.google.protobuf.ProtocolStringList getClusterNamesList()
       Cluster names should be used only with REST. If > 1
       cluster is defined, clusters will be cycled through if any kind of failure
       occurs.
      
       .. note::
      
       The cluster with name ``cluster_name`` must be statically defined and its
       type must not be ``EDS``.
       
      repeated string cluster_names = 2;
      Specified by:
      getClusterNamesList in interface ApiConfigSourceOrBuilder
      Returns:
      A list containing the clusterNames.
    • getClusterNamesCount

      public int getClusterNamesCount()
       Cluster names should be used only with REST. If > 1
       cluster is defined, clusters will be cycled through if any kind of failure
       occurs.
      
       .. note::
      
       The cluster with name ``cluster_name`` must be statically defined and its
       type must not be ``EDS``.
       
      repeated string cluster_names = 2;
      Specified by:
      getClusterNamesCount in interface ApiConfigSourceOrBuilder
      Returns:
      The count of clusterNames.
    • getClusterNames

      public String getClusterNames(int index)
       Cluster names should be used only with REST. If > 1
       cluster is defined, clusters will be cycled through if any kind of failure
       occurs.
      
       .. note::
      
       The cluster with name ``cluster_name`` must be statically defined and its
       type must not be ``EDS``.
       
      repeated string cluster_names = 2;
      Specified by:
      getClusterNames in interface ApiConfigSourceOrBuilder
      Parameters:
      index - The index of the element to return.
      Returns:
      The clusterNames at the given index.
    • getClusterNamesBytes

      public com.google.protobuf.ByteString getClusterNamesBytes(int index)
       Cluster names should be used only with REST. If > 1
       cluster is defined, clusters will be cycled through if any kind of failure
       occurs.
      
       .. note::
      
       The cluster with name ``cluster_name`` must be statically defined and its
       type must not be ``EDS``.
       
      repeated string cluster_names = 2;
      Specified by:
      getClusterNamesBytes in interface ApiConfigSourceOrBuilder
      Parameters:
      index - The index of the value to return.
      Returns:
      The bytes of the clusterNames at the given index.
    • getGrpcServicesList

      public List<GrpcService> getGrpcServicesList()
       Multiple gRPC services be provided for GRPC. If > 1 cluster is defined,
       services will be cycled through if any kind of failure occurs.
       
      repeated .envoy.config.core.v3.GrpcService grpc_services = 4;
      Specified by:
      getGrpcServicesList in interface ApiConfigSourceOrBuilder
    • getGrpcServicesOrBuilderList

      public List<? extends GrpcServiceOrBuilder> getGrpcServicesOrBuilderList()
       Multiple gRPC services be provided for GRPC. If > 1 cluster is defined,
       services will be cycled through if any kind of failure occurs.
       
      repeated .envoy.config.core.v3.GrpcService grpc_services = 4;
      Specified by:
      getGrpcServicesOrBuilderList in interface ApiConfigSourceOrBuilder
    • getGrpcServicesCount

      public int getGrpcServicesCount()
       Multiple gRPC services be provided for GRPC. If > 1 cluster is defined,
       services will be cycled through if any kind of failure occurs.
       
      repeated .envoy.config.core.v3.GrpcService grpc_services = 4;
      Specified by:
      getGrpcServicesCount in interface ApiConfigSourceOrBuilder
    • getGrpcServices

      public GrpcService getGrpcServices(int index)
       Multiple gRPC services be provided for GRPC. If > 1 cluster is defined,
       services will be cycled through if any kind of failure occurs.
       
      repeated .envoy.config.core.v3.GrpcService grpc_services = 4;
      Specified by:
      getGrpcServices in interface ApiConfigSourceOrBuilder
    • getGrpcServicesOrBuilder

      public GrpcServiceOrBuilder getGrpcServicesOrBuilder(int index)
       Multiple gRPC services be provided for GRPC. If > 1 cluster is defined,
       services will be cycled through if any kind of failure occurs.
       
      repeated .envoy.config.core.v3.GrpcService grpc_services = 4;
      Specified by:
      getGrpcServicesOrBuilder in interface ApiConfigSourceOrBuilder
    • hasRefreshDelay

      public boolean hasRefreshDelay()
       For REST APIs, the delay between successive polls.
       
      .google.protobuf.Duration refresh_delay = 3;
      Specified by:
      hasRefreshDelay in interface ApiConfigSourceOrBuilder
      Returns:
      Whether the refreshDelay field is set.
    • getRefreshDelay

      public com.google.protobuf.Duration getRefreshDelay()
       For REST APIs, the delay between successive polls.
       
      .google.protobuf.Duration refresh_delay = 3;
      Specified by:
      getRefreshDelay in interface ApiConfigSourceOrBuilder
      Returns:
      The refreshDelay.
    • getRefreshDelayOrBuilder

      public com.google.protobuf.DurationOrBuilder getRefreshDelayOrBuilder()
       For REST APIs, the delay between successive polls.
       
      .google.protobuf.Duration refresh_delay = 3;
      Specified by:
      getRefreshDelayOrBuilder in interface ApiConfigSourceOrBuilder
    • hasRequestTimeout

      public boolean hasRequestTimeout()
       For REST APIs, the request timeout. If not set, a default value of 1s will be used.
       
      .google.protobuf.Duration request_timeout = 5 [(.validate.rules) = { ... }
      Specified by:
      hasRequestTimeout in interface ApiConfigSourceOrBuilder
      Returns:
      Whether the requestTimeout field is set.
    • getRequestTimeout

      public com.google.protobuf.Duration getRequestTimeout()
       For REST APIs, the request timeout. If not set, a default value of 1s will be used.
       
      .google.protobuf.Duration request_timeout = 5 [(.validate.rules) = { ... }
      Specified by:
      getRequestTimeout in interface ApiConfigSourceOrBuilder
      Returns:
      The requestTimeout.
    • getRequestTimeoutOrBuilder

      public com.google.protobuf.DurationOrBuilder getRequestTimeoutOrBuilder()
       For REST APIs, the request timeout. If not set, a default value of 1s will be used.
       
      .google.protobuf.Duration request_timeout = 5 [(.validate.rules) = { ... }
      Specified by:
      getRequestTimeoutOrBuilder in interface ApiConfigSourceOrBuilder
    • hasRateLimitSettings

      public boolean hasRateLimitSettings()
       For GRPC APIs, the rate limit settings. If present, discovery requests made by Envoy will be
       rate limited.
       
      .envoy.config.core.v3.RateLimitSettings rate_limit_settings = 6;
      Specified by:
      hasRateLimitSettings in interface ApiConfigSourceOrBuilder
      Returns:
      Whether the rateLimitSettings field is set.
    • getRateLimitSettings

      public RateLimitSettings getRateLimitSettings()
       For GRPC APIs, the rate limit settings. If present, discovery requests made by Envoy will be
       rate limited.
       
      .envoy.config.core.v3.RateLimitSettings rate_limit_settings = 6;
      Specified by:
      getRateLimitSettings in interface ApiConfigSourceOrBuilder
      Returns:
      The rateLimitSettings.
    • getRateLimitSettingsOrBuilder

      public RateLimitSettingsOrBuilder getRateLimitSettingsOrBuilder()
       For GRPC APIs, the rate limit settings. If present, discovery requests made by Envoy will be
       rate limited.
       
      .envoy.config.core.v3.RateLimitSettings rate_limit_settings = 6;
      Specified by:
      getRateLimitSettingsOrBuilder in interface ApiConfigSourceOrBuilder
    • getSetNodeOnFirstMessageOnly

      public boolean getSetNodeOnFirstMessageOnly()
       Skip the node identifier in subsequent discovery requests for streaming gRPC config types.
       
      bool set_node_on_first_message_only = 7;
      Specified by:
      getSetNodeOnFirstMessageOnly in interface ApiConfigSourceOrBuilder
      Returns:
      The setNodeOnFirstMessageOnly.
    • getConfigValidatorsList

      public List<TypedExtensionConfig> getConfigValidatorsList()
       A list of config validators that will be executed when a new update is
       received from the ApiConfigSource. Note that each validator handles a
       specific xDS service type, and only the validators corresponding to the
       type url (in ``:ref: DiscoveryResponse`` or ``:ref: DeltaDiscoveryResponse``)
       will be invoked.
       If the validator returns false or throws an exception, the config will be rejected by
       the client, and a NACK will be sent.
       [#extension-category: envoy.config.validators]
       
      repeated .envoy.config.core.v3.TypedExtensionConfig config_validators = 9;
      Specified by:
      getConfigValidatorsList in interface ApiConfigSourceOrBuilder
    • getConfigValidatorsOrBuilderList

      public List<? extends TypedExtensionConfigOrBuilder> getConfigValidatorsOrBuilderList()
       A list of config validators that will be executed when a new update is
       received from the ApiConfigSource. Note that each validator handles a
       specific xDS service type, and only the validators corresponding to the
       type url (in ``:ref: DiscoveryResponse`` or ``:ref: DeltaDiscoveryResponse``)
       will be invoked.
       If the validator returns false or throws an exception, the config will be rejected by
       the client, and a NACK will be sent.
       [#extension-category: envoy.config.validators]
       
      repeated .envoy.config.core.v3.TypedExtensionConfig config_validators = 9;
      Specified by:
      getConfigValidatorsOrBuilderList in interface ApiConfigSourceOrBuilder
    • getConfigValidatorsCount

      public int getConfigValidatorsCount()
       A list of config validators that will be executed when a new update is
       received from the ApiConfigSource. Note that each validator handles a
       specific xDS service type, and only the validators corresponding to the
       type url (in ``:ref: DiscoveryResponse`` or ``:ref: DeltaDiscoveryResponse``)
       will be invoked.
       If the validator returns false or throws an exception, the config will be rejected by
       the client, and a NACK will be sent.
       [#extension-category: envoy.config.validators]
       
      repeated .envoy.config.core.v3.TypedExtensionConfig config_validators = 9;
      Specified by:
      getConfigValidatorsCount in interface ApiConfigSourceOrBuilder
    • getConfigValidators

      public TypedExtensionConfig getConfigValidators(int index)
       A list of config validators that will be executed when a new update is
       received from the ApiConfigSource. Note that each validator handles a
       specific xDS service type, and only the validators corresponding to the
       type url (in ``:ref: DiscoveryResponse`` or ``:ref: DeltaDiscoveryResponse``)
       will be invoked.
       If the validator returns false or throws an exception, the config will be rejected by
       the client, and a NACK will be sent.
       [#extension-category: envoy.config.validators]
       
      repeated .envoy.config.core.v3.TypedExtensionConfig config_validators = 9;
      Specified by:
      getConfigValidators in interface ApiConfigSourceOrBuilder
    • getConfigValidatorsOrBuilder

      public TypedExtensionConfigOrBuilder getConfigValidatorsOrBuilder(int index)
       A list of config validators that will be executed when a new update is
       received from the ApiConfigSource. Note that each validator handles a
       specific xDS service type, and only the validators corresponding to the
       type url (in ``:ref: DiscoveryResponse`` or ``:ref: DeltaDiscoveryResponse``)
       will be invoked.
       If the validator returns false or throws an exception, the config will be rejected by
       the client, and a NACK will be sent.
       [#extension-category: envoy.config.validators]
       
      repeated .envoy.config.core.v3.TypedExtensionConfig config_validators = 9;
      Specified by:
      getConfigValidatorsOrBuilder in interface ApiConfigSourceOrBuilder
    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessage
    • writeTo

      public void writeTo(com.google.protobuf.CodedOutputStream output) throws IOException
      Specified by:
      writeTo in interface com.google.protobuf.MessageLite
      Overrides:
      writeTo in class com.google.protobuf.GeneratedMessage
      Throws:
      IOException
    • getSerializedSize

      public int getSerializedSize()
      Specified by:
      getSerializedSize in interface com.google.protobuf.MessageLite
      Overrides:
      getSerializedSize in class com.google.protobuf.GeneratedMessage
    • equals

      public boolean equals(Object obj)
      Specified by:
      equals in interface com.google.protobuf.Message
      Overrides:
      equals in class com.google.protobuf.AbstractMessage
    • hashCode

      public int hashCode()
      Specified by:
      hashCode in interface com.google.protobuf.Message
      Overrides:
      hashCode in class com.google.protobuf.AbstractMessage
    • parseFrom

      public static ApiConfigSource parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static ApiConfigSource parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static ApiConfigSource parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static ApiConfigSource parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static ApiConfigSource parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static ApiConfigSource parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static ApiConfigSource parseFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static ApiConfigSource parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static ApiConfigSource parseDelimitedFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static ApiConfigSource parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseFrom

      public static ApiConfigSource parseFrom(com.google.protobuf.CodedInputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static ApiConfigSource parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • newBuilderForType

      public ApiConfigSource.Builder newBuilderForType()
      Specified by:
      newBuilderForType in interface com.google.protobuf.Message
      Specified by:
      newBuilderForType in interface com.google.protobuf.MessageLite
    • newBuilder

      public static ApiConfigSource.Builder newBuilder()
    • newBuilder

      public static ApiConfigSource.Builder newBuilder(ApiConfigSource prototype)
    • toBuilder

      public ApiConfigSource.Builder toBuilder()
      Specified by:
      toBuilder in interface com.google.protobuf.Message
      Specified by:
      toBuilder in interface com.google.protobuf.MessageLite
    • newBuilderForType

      protected ApiConfigSource.Builder newBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent)
      Overrides:
      newBuilderForType in class com.google.protobuf.AbstractMessage
    • getDefaultInstance

      public static ApiConfigSource getDefaultInstance()
    • parser

      public static com.google.protobuf.Parser<ApiConfigSource> parser()
    • getParserForType

      public com.google.protobuf.Parser<ApiConfigSource> getParserForType()
      Specified by:
      getParserForType in interface com.google.protobuf.Message
      Specified by:
      getParserForType in interface com.google.protobuf.MessageLite
      Overrides:
      getParserForType in class com.google.protobuf.GeneratedMessage
    • getDefaultInstanceForType

      public ApiConfigSource getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder