All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.envoyproxy.envoy.config.route.v3.VirtualCluster Maven / Gradle / Ivy

There is a newer version: 1.0.46
Show newest version
// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: envoy/config/route/v3/route_components.proto

package io.envoyproxy.envoy.config.route.v3;

/**
 * 
 * A virtual cluster is a way of specifying a regex matching rule against
 * certain important endpoints such that statistics are generated explicitly for
 * the matched requests. The reason this is useful is that when doing
 * prefix/path matching Envoy does not always know what the application
 * considers to be an endpoint. Thus, it’s impossible for Envoy to generically
 * emit per endpoint statistics. However, often systems have highly critical
 * endpoints that they wish to get “perfect” statistics on. Virtual cluster
 * statistics are perfect in the sense that they are emitted on the downstream
 * side such that they include network level failures.
 * Documentation for :ref:`virtual cluster statistics <config_http_filters_router_vcluster_stats>`.
 * .. note::
 *    Virtual clusters are a useful tool, but we do not recommend setting up a virtual cluster for
 *    every application endpoint. This is both not easily maintainable and as well the matching and
 *    statistics output are not free.
 * 
* * Protobuf type {@code envoy.config.route.v3.VirtualCluster} */ public final class VirtualCluster extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:envoy.config.route.v3.VirtualCluster) VirtualClusterOrBuilder { private static final long serialVersionUID = 0L; // Use VirtualCluster.newBuilder() to construct. private VirtualCluster(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private VirtualCluster() { headers_ = java.util.Collections.emptyList(); name_ = ""; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { return new VirtualCluster(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private VirtualCluster( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { this(); if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 18: { java.lang.String s = input.readStringRequireUtf8(); name_ = s; break; } case 34: { if (!((mutable_bitField0_ & 0x00000001) != 0)) { headers_ = new java.util.ArrayList(); mutable_bitField0_ |= 0x00000001; } headers_.add( input.readMessage(io.envoyproxy.envoy.config.route.v3.HeaderMatcher.parser(), extensionRegistry)); break; } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { done = true; } break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (com.google.protobuf.UninitializedMessageException e) { throw e.asInvalidProtocolBufferException().setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { headers_ = java.util.Collections.unmodifiableList(headers_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return io.envoyproxy.envoy.config.route.v3.RouteComponentsProto.internal_static_envoy_config_route_v3_VirtualCluster_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return io.envoyproxy.envoy.config.route.v3.RouteComponentsProto.internal_static_envoy_config_route_v3_VirtualCluster_fieldAccessorTable .ensureFieldAccessorsInitialized( io.envoyproxy.envoy.config.route.v3.VirtualCluster.class, io.envoyproxy.envoy.config.route.v3.VirtualCluster.Builder.class); } public static final int HEADERS_FIELD_NUMBER = 4; private java.util.List headers_; /** *
   * Specifies a list of header matchers to use for matching requests. Each specified header must
   * match. The pseudo-headers ``:path`` and ``:method`` can be used to match the request path and
   * method, respectively.
   * 
* * repeated .envoy.config.route.v3.HeaderMatcher headers = 4; */ @java.lang.Override public java.util.List getHeadersList() { return headers_; } /** *
   * Specifies a list of header matchers to use for matching requests. Each specified header must
   * match. The pseudo-headers ``:path`` and ``:method`` can be used to match the request path and
   * method, respectively.
   * 
* * repeated .envoy.config.route.v3.HeaderMatcher headers = 4; */ @java.lang.Override public java.util.List getHeadersOrBuilderList() { return headers_; } /** *
   * Specifies a list of header matchers to use for matching requests. Each specified header must
   * match. The pseudo-headers ``:path`` and ``:method`` can be used to match the request path and
   * method, respectively.
   * 
* * repeated .envoy.config.route.v3.HeaderMatcher headers = 4; */ @java.lang.Override public int getHeadersCount() { return headers_.size(); } /** *
   * Specifies a list of header matchers to use for matching requests. Each specified header must
   * match. The pseudo-headers ``:path`` and ``:method`` can be used to match the request path and
   * method, respectively.
   * 
* * repeated .envoy.config.route.v3.HeaderMatcher headers = 4; */ @java.lang.Override public io.envoyproxy.envoy.config.route.v3.HeaderMatcher getHeaders(int index) { return headers_.get(index); } /** *
   * Specifies a list of header matchers to use for matching requests. Each specified header must
   * match. The pseudo-headers ``:path`` and ``:method`` can be used to match the request path and
   * method, respectively.
   * 
* * repeated .envoy.config.route.v3.HeaderMatcher headers = 4; */ @java.lang.Override public io.envoyproxy.envoy.config.route.v3.HeaderMatcherOrBuilder getHeadersOrBuilder( int index) { return headers_.get(index); } public static final int NAME_FIELD_NUMBER = 2; private volatile java.lang.Object name_; /** *
   * Specifies the name of the virtual cluster. The virtual cluster name as well
   * as the virtual host name are used when emitting statistics. The statistics are emitted by the
   * router filter and are documented :ref:`here <config_http_filters_router_stats>`.
   * 
* * string name = 2 [(.validate.rules) = { ... } * @return The name. */ @java.lang.Override public java.lang.String getName() { java.lang.Object ref = name_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); name_ = s; return s; } } /** *
   * Specifies the name of the virtual cluster. The virtual cluster name as well
   * as the virtual host name are used when emitting statistics. The statistics are emitted by the
   * router filter and are documented :ref:`here <config_http_filters_router_stats>`.
   * 
* * string name = 2 [(.validate.rules) = { ... } * @return The bytes for name. */ @java.lang.Override public com.google.protobuf.ByteString getNameBytes() { java.lang.Object ref = name_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); name_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_); } for (int i = 0; i < headers_.size(); i++) { output.writeMessage(4, headers_.get(i)); } unknownFields.writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_); } for (int i = 0; i < headers_.size(); i++) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(4, headers_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof io.envoyproxy.envoy.config.route.v3.VirtualCluster)) { return super.equals(obj); } io.envoyproxy.envoy.config.route.v3.VirtualCluster other = (io.envoyproxy.envoy.config.route.v3.VirtualCluster) obj; if (!getHeadersList() .equals(other.getHeadersList())) return false; if (!getName() .equals(other.getName())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); if (getHeadersCount() > 0) { hash = (37 * hash) + HEADERS_FIELD_NUMBER; hash = (53 * hash) + getHeadersList().hashCode(); } hash = (37 * hash) + NAME_FIELD_NUMBER; hash = (53 * hash) + getName().hashCode(); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } public static io.envoyproxy.envoy.config.route.v3.VirtualCluster parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static io.envoyproxy.envoy.config.route.v3.VirtualCluster parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static io.envoyproxy.envoy.config.route.v3.VirtualCluster parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static io.envoyproxy.envoy.config.route.v3.VirtualCluster parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static io.envoyproxy.envoy.config.route.v3.VirtualCluster parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static io.envoyproxy.envoy.config.route.v3.VirtualCluster parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static io.envoyproxy.envoy.config.route.v3.VirtualCluster parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static io.envoyproxy.envoy.config.route.v3.VirtualCluster parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } public static io.envoyproxy.envoy.config.route.v3.VirtualCluster parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } public static io.envoyproxy.envoy.config.route.v3.VirtualCluster parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static io.envoyproxy.envoy.config.route.v3.VirtualCluster parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static io.envoyproxy.envoy.config.route.v3.VirtualCluster parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(io.envoyproxy.envoy.config.route.v3.VirtualCluster prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
   * A virtual cluster is a way of specifying a regex matching rule against
   * certain important endpoints such that statistics are generated explicitly for
   * the matched requests. The reason this is useful is that when doing
   * prefix/path matching Envoy does not always know what the application
   * considers to be an endpoint. Thus, it’s impossible for Envoy to generically
   * emit per endpoint statistics. However, often systems have highly critical
   * endpoints that they wish to get “perfect” statistics on. Virtual cluster
   * statistics are perfect in the sense that they are emitted on the downstream
   * side such that they include network level failures.
   * Documentation for :ref:`virtual cluster statistics <config_http_filters_router_vcluster_stats>`.
   * .. note::
   *    Virtual clusters are a useful tool, but we do not recommend setting up a virtual cluster for
   *    every application endpoint. This is both not easily maintainable and as well the matching and
   *    statistics output are not free.
   * 
* * Protobuf type {@code envoy.config.route.v3.VirtualCluster} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:envoy.config.route.v3.VirtualCluster) io.envoyproxy.envoy.config.route.v3.VirtualClusterOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return io.envoyproxy.envoy.config.route.v3.RouteComponentsProto.internal_static_envoy_config_route_v3_VirtualCluster_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return io.envoyproxy.envoy.config.route.v3.RouteComponentsProto.internal_static_envoy_config_route_v3_VirtualCluster_fieldAccessorTable .ensureFieldAccessorsInitialized( io.envoyproxy.envoy.config.route.v3.VirtualCluster.class, io.envoyproxy.envoy.config.route.v3.VirtualCluster.Builder.class); } // Construct using io.envoyproxy.envoy.config.route.v3.VirtualCluster.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { getHeadersFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); if (headersBuilder_ == null) { headers_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); } else { headersBuilder_.clear(); } name_ = ""; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return io.envoyproxy.envoy.config.route.v3.RouteComponentsProto.internal_static_envoy_config_route_v3_VirtualCluster_descriptor; } @java.lang.Override public io.envoyproxy.envoy.config.route.v3.VirtualCluster getDefaultInstanceForType() { return io.envoyproxy.envoy.config.route.v3.VirtualCluster.getDefaultInstance(); } @java.lang.Override public io.envoyproxy.envoy.config.route.v3.VirtualCluster build() { io.envoyproxy.envoy.config.route.v3.VirtualCluster result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public io.envoyproxy.envoy.config.route.v3.VirtualCluster buildPartial() { io.envoyproxy.envoy.config.route.v3.VirtualCluster result = new io.envoyproxy.envoy.config.route.v3.VirtualCluster(this); int from_bitField0_ = bitField0_; if (headersBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { headers_ = java.util.Collections.unmodifiableList(headers_); bitField0_ = (bitField0_ & ~0x00000001); } result.headers_ = headers_; } else { result.headers_ = headersBuilder_.build(); } result.name_ = name_; onBuilt(); return result; } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField( com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof( com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof io.envoyproxy.envoy.config.route.v3.VirtualCluster) { return mergeFrom((io.envoyproxy.envoy.config.route.v3.VirtualCluster)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(io.envoyproxy.envoy.config.route.v3.VirtualCluster other) { if (other == io.envoyproxy.envoy.config.route.v3.VirtualCluster.getDefaultInstance()) return this; if (headersBuilder_ == null) { if (!other.headers_.isEmpty()) { if (headers_.isEmpty()) { headers_ = other.headers_; bitField0_ = (bitField0_ & ~0x00000001); } else { ensureHeadersIsMutable(); headers_.addAll(other.headers_); } onChanged(); } } else { if (!other.headers_.isEmpty()) { if (headersBuilder_.isEmpty()) { headersBuilder_.dispose(); headersBuilder_ = null; headers_ = other.headers_; bitField0_ = (bitField0_ & ~0x00000001); headersBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? getHeadersFieldBuilder() : null; } else { headersBuilder_.addAllMessages(other.headers_); } } } if (!other.getName().isEmpty()) { name_ = other.name_; onChanged(); } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { io.envoyproxy.envoy.config.route.v3.VirtualCluster parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (io.envoyproxy.envoy.config.route.v3.VirtualCluster) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private java.util.List headers_ = java.util.Collections.emptyList(); private void ensureHeadersIsMutable() { if (!((bitField0_ & 0x00000001) != 0)) { headers_ = new java.util.ArrayList(headers_); bitField0_ |= 0x00000001; } } private com.google.protobuf.RepeatedFieldBuilderV3< io.envoyproxy.envoy.config.route.v3.HeaderMatcher, io.envoyproxy.envoy.config.route.v3.HeaderMatcher.Builder, io.envoyproxy.envoy.config.route.v3.HeaderMatcherOrBuilder> headersBuilder_; /** *
     * Specifies a list of header matchers to use for matching requests. Each specified header must
     * match. The pseudo-headers ``:path`` and ``:method`` can be used to match the request path and
     * method, respectively.
     * 
* * repeated .envoy.config.route.v3.HeaderMatcher headers = 4; */ public java.util.List getHeadersList() { if (headersBuilder_ == null) { return java.util.Collections.unmodifiableList(headers_); } else { return headersBuilder_.getMessageList(); } } /** *
     * Specifies a list of header matchers to use for matching requests. Each specified header must
     * match. The pseudo-headers ``:path`` and ``:method`` can be used to match the request path and
     * method, respectively.
     * 
* * repeated .envoy.config.route.v3.HeaderMatcher headers = 4; */ public int getHeadersCount() { if (headersBuilder_ == null) { return headers_.size(); } else { return headersBuilder_.getCount(); } } /** *
     * Specifies a list of header matchers to use for matching requests. Each specified header must
     * match. The pseudo-headers ``:path`` and ``:method`` can be used to match the request path and
     * method, respectively.
     * 
* * repeated .envoy.config.route.v3.HeaderMatcher headers = 4; */ public io.envoyproxy.envoy.config.route.v3.HeaderMatcher getHeaders(int index) { if (headersBuilder_ == null) { return headers_.get(index); } else { return headersBuilder_.getMessage(index); } } /** *
     * Specifies a list of header matchers to use for matching requests. Each specified header must
     * match. The pseudo-headers ``:path`` and ``:method`` can be used to match the request path and
     * method, respectively.
     * 
* * repeated .envoy.config.route.v3.HeaderMatcher headers = 4; */ public Builder setHeaders( int index, io.envoyproxy.envoy.config.route.v3.HeaderMatcher value) { if (headersBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureHeadersIsMutable(); headers_.set(index, value); onChanged(); } else { headersBuilder_.setMessage(index, value); } return this; } /** *
     * Specifies a list of header matchers to use for matching requests. Each specified header must
     * match. The pseudo-headers ``:path`` and ``:method`` can be used to match the request path and
     * method, respectively.
     * 
* * repeated .envoy.config.route.v3.HeaderMatcher headers = 4; */ public Builder setHeaders( int index, io.envoyproxy.envoy.config.route.v3.HeaderMatcher.Builder builderForValue) { if (headersBuilder_ == null) { ensureHeadersIsMutable(); headers_.set(index, builderForValue.build()); onChanged(); } else { headersBuilder_.setMessage(index, builderForValue.build()); } return this; } /** *
     * Specifies a list of header matchers to use for matching requests. Each specified header must
     * match. The pseudo-headers ``:path`` and ``:method`` can be used to match the request path and
     * method, respectively.
     * 
* * repeated .envoy.config.route.v3.HeaderMatcher headers = 4; */ public Builder addHeaders(io.envoyproxy.envoy.config.route.v3.HeaderMatcher value) { if (headersBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureHeadersIsMutable(); headers_.add(value); onChanged(); } else { headersBuilder_.addMessage(value); } return this; } /** *
     * Specifies a list of header matchers to use for matching requests. Each specified header must
     * match. The pseudo-headers ``:path`` and ``:method`` can be used to match the request path and
     * method, respectively.
     * 
* * repeated .envoy.config.route.v3.HeaderMatcher headers = 4; */ public Builder addHeaders( int index, io.envoyproxy.envoy.config.route.v3.HeaderMatcher value) { if (headersBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureHeadersIsMutable(); headers_.add(index, value); onChanged(); } else { headersBuilder_.addMessage(index, value); } return this; } /** *
     * Specifies a list of header matchers to use for matching requests. Each specified header must
     * match. The pseudo-headers ``:path`` and ``:method`` can be used to match the request path and
     * method, respectively.
     * 
* * repeated .envoy.config.route.v3.HeaderMatcher headers = 4; */ public Builder addHeaders( io.envoyproxy.envoy.config.route.v3.HeaderMatcher.Builder builderForValue) { if (headersBuilder_ == null) { ensureHeadersIsMutable(); headers_.add(builderForValue.build()); onChanged(); } else { headersBuilder_.addMessage(builderForValue.build()); } return this; } /** *
     * Specifies a list of header matchers to use for matching requests. Each specified header must
     * match. The pseudo-headers ``:path`` and ``:method`` can be used to match the request path and
     * method, respectively.
     * 
* * repeated .envoy.config.route.v3.HeaderMatcher headers = 4; */ public Builder addHeaders( int index, io.envoyproxy.envoy.config.route.v3.HeaderMatcher.Builder builderForValue) { if (headersBuilder_ == null) { ensureHeadersIsMutable(); headers_.add(index, builderForValue.build()); onChanged(); } else { headersBuilder_.addMessage(index, builderForValue.build()); } return this; } /** *
     * Specifies a list of header matchers to use for matching requests. Each specified header must
     * match. The pseudo-headers ``:path`` and ``:method`` can be used to match the request path and
     * method, respectively.
     * 
* * repeated .envoy.config.route.v3.HeaderMatcher headers = 4; */ public Builder addAllHeaders( java.lang.Iterable values) { if (headersBuilder_ == null) { ensureHeadersIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, headers_); onChanged(); } else { headersBuilder_.addAllMessages(values); } return this; } /** *
     * Specifies a list of header matchers to use for matching requests. Each specified header must
     * match. The pseudo-headers ``:path`` and ``:method`` can be used to match the request path and
     * method, respectively.
     * 
* * repeated .envoy.config.route.v3.HeaderMatcher headers = 4; */ public Builder clearHeaders() { if (headersBuilder_ == null) { headers_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { headersBuilder_.clear(); } return this; } /** *
     * Specifies a list of header matchers to use for matching requests. Each specified header must
     * match. The pseudo-headers ``:path`` and ``:method`` can be used to match the request path and
     * method, respectively.
     * 
* * repeated .envoy.config.route.v3.HeaderMatcher headers = 4; */ public Builder removeHeaders(int index) { if (headersBuilder_ == null) { ensureHeadersIsMutable(); headers_.remove(index); onChanged(); } else { headersBuilder_.remove(index); } return this; } /** *
     * Specifies a list of header matchers to use for matching requests. Each specified header must
     * match. The pseudo-headers ``:path`` and ``:method`` can be used to match the request path and
     * method, respectively.
     * 
* * repeated .envoy.config.route.v3.HeaderMatcher headers = 4; */ public io.envoyproxy.envoy.config.route.v3.HeaderMatcher.Builder getHeadersBuilder( int index) { return getHeadersFieldBuilder().getBuilder(index); } /** *
     * Specifies a list of header matchers to use for matching requests. Each specified header must
     * match. The pseudo-headers ``:path`` and ``:method`` can be used to match the request path and
     * method, respectively.
     * 
* * repeated .envoy.config.route.v3.HeaderMatcher headers = 4; */ public io.envoyproxy.envoy.config.route.v3.HeaderMatcherOrBuilder getHeadersOrBuilder( int index) { if (headersBuilder_ == null) { return headers_.get(index); } else { return headersBuilder_.getMessageOrBuilder(index); } } /** *
     * Specifies a list of header matchers to use for matching requests. Each specified header must
     * match. The pseudo-headers ``:path`` and ``:method`` can be used to match the request path and
     * method, respectively.
     * 
* * repeated .envoy.config.route.v3.HeaderMatcher headers = 4; */ public java.util.List getHeadersOrBuilderList() { if (headersBuilder_ != null) { return headersBuilder_.getMessageOrBuilderList(); } else { return java.util.Collections.unmodifiableList(headers_); } } /** *
     * Specifies a list of header matchers to use for matching requests. Each specified header must
     * match. The pseudo-headers ``:path`` and ``:method`` can be used to match the request path and
     * method, respectively.
     * 
* * repeated .envoy.config.route.v3.HeaderMatcher headers = 4; */ public io.envoyproxy.envoy.config.route.v3.HeaderMatcher.Builder addHeadersBuilder() { return getHeadersFieldBuilder().addBuilder( io.envoyproxy.envoy.config.route.v3.HeaderMatcher.getDefaultInstance()); } /** *
     * Specifies a list of header matchers to use for matching requests. Each specified header must
     * match. The pseudo-headers ``:path`` and ``:method`` can be used to match the request path and
     * method, respectively.
     * 
* * repeated .envoy.config.route.v3.HeaderMatcher headers = 4; */ public io.envoyproxy.envoy.config.route.v3.HeaderMatcher.Builder addHeadersBuilder( int index) { return getHeadersFieldBuilder().addBuilder( index, io.envoyproxy.envoy.config.route.v3.HeaderMatcher.getDefaultInstance()); } /** *
     * Specifies a list of header matchers to use for matching requests. Each specified header must
     * match. The pseudo-headers ``:path`` and ``:method`` can be used to match the request path and
     * method, respectively.
     * 
* * repeated .envoy.config.route.v3.HeaderMatcher headers = 4; */ public java.util.List getHeadersBuilderList() { return getHeadersFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< io.envoyproxy.envoy.config.route.v3.HeaderMatcher, io.envoyproxy.envoy.config.route.v3.HeaderMatcher.Builder, io.envoyproxy.envoy.config.route.v3.HeaderMatcherOrBuilder> getHeadersFieldBuilder() { if (headersBuilder_ == null) { headersBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< io.envoyproxy.envoy.config.route.v3.HeaderMatcher, io.envoyproxy.envoy.config.route.v3.HeaderMatcher.Builder, io.envoyproxy.envoy.config.route.v3.HeaderMatcherOrBuilder>( headers_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); headers_ = null; } return headersBuilder_; } private java.lang.Object name_ = ""; /** *
     * Specifies the name of the virtual cluster. The virtual cluster name as well
     * as the virtual host name are used when emitting statistics. The statistics are emitted by the
     * router filter and are documented :ref:`here <config_http_filters_router_stats>`.
     * 
* * string name = 2 [(.validate.rules) = { ... } * @return The name. */ public java.lang.String getName() { java.lang.Object ref = name_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); name_ = s; return s; } else { return (java.lang.String) ref; } } /** *
     * Specifies the name of the virtual cluster. The virtual cluster name as well
     * as the virtual host name are used when emitting statistics. The statistics are emitted by the
     * router filter and are documented :ref:`here <config_http_filters_router_stats>`.
     * 
* * string name = 2 [(.validate.rules) = { ... } * @return The bytes for name. */ public com.google.protobuf.ByteString getNameBytes() { java.lang.Object ref = name_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); name_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
     * Specifies the name of the virtual cluster. The virtual cluster name as well
     * as the virtual host name are used when emitting statistics. The statistics are emitted by the
     * router filter and are documented :ref:`here <config_http_filters_router_stats>`.
     * 
* * string name = 2 [(.validate.rules) = { ... } * @param value The name to set. * @return This builder for chaining. */ public Builder setName( java.lang.String value) { if (value == null) { throw new NullPointerException(); } name_ = value; onChanged(); return this; } /** *
     * Specifies the name of the virtual cluster. The virtual cluster name as well
     * as the virtual host name are used when emitting statistics. The statistics are emitted by the
     * router filter and are documented :ref:`here <config_http_filters_router_stats>`.
     * 
* * string name = 2 [(.validate.rules) = { ... } * @return This builder for chaining. */ public Builder clearName() { name_ = getDefaultInstance().getName(); onChanged(); return this; } /** *
     * Specifies the name of the virtual cluster. The virtual cluster name as well
     * as the virtual host name are used when emitting statistics. The statistics are emitted by the
     * router filter and are documented :ref:`here <config_http_filters_router_stats>`.
     * 
* * string name = 2 [(.validate.rules) = { ... } * @param value The bytes for name to set. * @return This builder for chaining. */ public Builder setNameBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); name_ = value; onChanged(); return this; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:envoy.config.route.v3.VirtualCluster) } // @@protoc_insertion_point(class_scope:envoy.config.route.v3.VirtualCluster) private static final io.envoyproxy.envoy.config.route.v3.VirtualCluster DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new io.envoyproxy.envoy.config.route.v3.VirtualCluster(); } public static io.envoyproxy.envoy.config.route.v3.VirtualCluster getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public VirtualCluster parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new VirtualCluster(input, extensionRegistry); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public io.envoyproxy.envoy.config.route.v3.VirtualCluster getDefaultInstanceForType() { return DEFAULT_INSTANCE; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy