Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
* One or more labels that indicate a specific set of pods/VMs
* on which this gateway configuration should be applied.
* By default workloads are searched across all namespaces based on label selectors.
* This implies that a gateway resource in the namespace "foo" can select pods in
* the namespace "bar" based on labels.
* This behavior can be controlled via the `PILOT_SCOPE_GATEWAY_TO_NAMESPACE`
* environment variable in istiod. If this variable is set
* to true, the scope of label search is restricted to the configuration
* namespace in which the the resource is present. In other words, the Gateway
* resource must reside in the same namespace as the gateway workload
* instance.
* If selector is nil, the Gateway will be applied to all workloads.
*
* One or more labels that indicate a specific set of pods/VMs
* on which this gateway configuration should be applied.
* By default workloads are searched across all namespaces based on label selectors.
* This implies that a gateway resource in the namespace "foo" can select pods in
* the namespace "bar" based on labels.
* This behavior can be controlled via the `PILOT_SCOPE_GATEWAY_TO_NAMESPACE`
* environment variable in istiod. If this variable is set
* to true, the scope of label search is restricted to the configuration
* namespace in which the the resource is present. In other words, the Gateway
* resource must reside in the same namespace as the gateway workload
* instance.
* If selector is nil, the Gateway will be applied to all workloads.
*
* One or more labels that indicate a specific set of pods/VMs
* on which this gateway configuration should be applied.
* By default workloads are searched across all namespaces based on label selectors.
* This implies that a gateway resource in the namespace "foo" can select pods in
* the namespace "bar" based on labels.
* This behavior can be controlled via the `PILOT_SCOPE_GATEWAY_TO_NAMESPACE`
* environment variable in istiod. If this variable is set
* to true, the scope of label search is restricted to the configuration
* namespace in which the the resource is present. In other words, the Gateway
* resource must reside in the same namespace as the gateway workload
* instance.
* If selector is nil, the Gateway will be applied to all workloads.
*
* One or more labels that indicate a specific set of pods/VMs
* on which this gateway configuration should be applied.
* By default workloads are searched across all namespaces based on label selectors.
* This implies that a gateway resource in the namespace "foo" can select pods in
* the namespace "bar" based on labels.
* This behavior can be controlled via the `PILOT_SCOPE_GATEWAY_TO_NAMESPACE`
* environment variable in istiod. If this variable is set
* to true, the scope of label search is restricted to the configuration
* namespace in which the the resource is present. In other words, the Gateway
* resource must reside in the same namespace as the gateway workload
* instance.
* If selector is nil, the Gateway will be applied to all workloads.
*
* One or more labels that indicate a specific set of pods/VMs
* on which this gateway configuration should be applied.
* By default workloads are searched across all namespaces based on label selectors.
* This implies that a gateway resource in the namespace "foo" can select pods in
* the namespace "bar" based on labels.
* This behavior can be controlled via the `PILOT_SCOPE_GATEWAY_TO_NAMESPACE`
* environment variable in istiod. If this variable is set
* to true, the scope of label search is restricted to the configuration
* namespace in which the the resource is present. In other words, the Gateway
* resource must reside in the same namespace as the gateway workload
* instance.
* If selector is nil, the Gateway will be applied to all workloads.
*
*
* repeated .istio.networking.v1alpha3.Server servers = 1 [(.google.api.field_behavior) = REQUIRED];
*/
@java.lang.Override
public istio.networking.v1alpha3.GatewayOuterClass.ServerOrBuilder getServersOrBuilder(
int index) {
return servers_.get(index);
}
public static final int SELECTOR_FIELD_NUMBER = 2;
private static final class SelectorDefaultEntryHolder {
static final com.google.protobuf.MapEntry<
java.lang.String, java.lang.String> defaultEntry =
com.google.protobuf.MapEntry
.newDefaultInstance(
istio.networking.v1alpha3.GatewayOuterClass.internal_static_istio_networking_v1alpha3_Gateway_SelectorEntry_descriptor,
com.google.protobuf.WireFormat.FieldType.STRING,
"",
com.google.protobuf.WireFormat.FieldType.STRING,
"");
}
private com.google.protobuf.MapField<
java.lang.String, java.lang.String> selector_;
private com.google.protobuf.MapField
internalGetSelector() {
if (selector_ == null) {
return com.google.protobuf.MapField.emptyMapField(
SelectorDefaultEntryHolder.defaultEntry);
}
return selector_;
}
public int getSelectorCount() {
return internalGetSelector().getMap().size();
}
/**
*
* One or more labels that indicate a specific set of pods/VMs
* on which this gateway configuration should be applied.
* By default workloads are searched across all namespaces based on label selectors.
* This implies that a gateway resource in the namespace "foo" can select pods in
* the namespace "bar" based on labels.
* This behavior can be controlled via the `PILOT_SCOPE_GATEWAY_TO_NAMESPACE`
* environment variable in istiod. If this variable is set
* to true, the scope of label search is restricted to the configuration
* namespace in which the the resource is present. In other words, the Gateway
* resource must reside in the same namespace as the gateway workload
* instance.
* If selector is nil, the Gateway will be applied to all workloads.
*
*
* map<string, string> selector = 2 [(.google.api.field_behavior) = REQUIRED];
*/
@java.lang.Override
public boolean containsSelector(
java.lang.String key) {
if (key == null) { throw new java.lang.NullPointerException(); }
return internalGetSelector().getMap().containsKey(key);
}
/**
* Use {@link #getSelectorMap()} instead.
*/
@java.lang.Override
@java.lang.Deprecated
public java.util.Map getSelector() {
return getSelectorMap();
}
/**
*
* One or more labels that indicate a specific set of pods/VMs
* on which this gateway configuration should be applied.
* By default workloads are searched across all namespaces based on label selectors.
* This implies that a gateway resource in the namespace "foo" can select pods in
* the namespace "bar" based on labels.
* This behavior can be controlled via the `PILOT_SCOPE_GATEWAY_TO_NAMESPACE`
* environment variable in istiod. If this variable is set
* to true, the scope of label search is restricted to the configuration
* namespace in which the the resource is present. In other words, the Gateway
* resource must reside in the same namespace as the gateway workload
* instance.
* If selector is nil, the Gateway will be applied to all workloads.
*
* One or more labels that indicate a specific set of pods/VMs
* on which this gateway configuration should be applied.
* By default workloads are searched across all namespaces based on label selectors.
* This implies that a gateway resource in the namespace "foo" can select pods in
* the namespace "bar" based on labels.
* This behavior can be controlled via the `PILOT_SCOPE_GATEWAY_TO_NAMESPACE`
* environment variable in istiod. If this variable is set
* to true, the scope of label search is restricted to the configuration
* namespace in which the the resource is present. In other words, the Gateway
* resource must reside in the same namespace as the gateway workload
* instance.
* If selector is nil, the Gateway will be applied to all workloads.
*
* One or more labels that indicate a specific set of pods/VMs
* on which this gateway configuration should be applied.
* By default workloads are searched across all namespaces based on label selectors.
* This implies that a gateway resource in the namespace "foo" can select pods in
* the namespace "bar" based on labels.
* This behavior can be controlled via the `PILOT_SCOPE_GATEWAY_TO_NAMESPACE`
* environment variable in istiod. If this variable is set
* to true, the scope of label search is restricted to the configuration
* namespace in which the the resource is present. In other words, the Gateway
* resource must reside in the same namespace as the gateway workload
* instance.
* If selector is nil, the Gateway will be applied to all workloads.
*
*
* map<string, string> selector = 2 [(.google.api.field_behavior) = REQUIRED];
*/
@java.lang.Override
public java.lang.String getSelectorOrThrow(
java.lang.String key) {
if (key == null) { throw new java.lang.NullPointerException(); }
java.util.Map map =
internalGetSelector().getMap();
if (!map.containsKey(key)) {
throw new java.lang.IllegalArgumentException();
}
return map.get(key);
}
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 {
for (int i = 0; i < servers_.size(); i++) {
output.writeMessage(1, servers_.get(i));
}
com.google.protobuf.GeneratedMessageV3
.serializeStringMapTo(
output,
internalGetSelector(),
SelectorDefaultEntryHolder.defaultEntry,
2);
unknownFields.writeTo(output);
}
@java.lang.Override
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
for (int i = 0; i < servers_.size(); i++) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(1, servers_.get(i));
}
for (java.util.Map.Entry entry
: internalGetSelector().getMap().entrySet()) {
com.google.protobuf.MapEntry
selector__ = SelectorDefaultEntryHolder.defaultEntry.newBuilderForType()
.setKey(entry.getKey())
.setValue(entry.getValue())
.build();
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(2, selector__);
}
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 istio.networking.v1alpha3.GatewayOuterClass.Gateway)) {
return super.equals(obj);
}
istio.networking.v1alpha3.GatewayOuterClass.Gateway other = (istio.networking.v1alpha3.GatewayOuterClass.Gateway) obj;
if (!getServersList()
.equals(other.getServersList())) return false;
if (!internalGetSelector().equals(
other.internalGetSelector())) 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 (getServersCount() > 0) {
hash = (37 * hash) + SERVERS_FIELD_NUMBER;
hash = (53 * hash) + getServersList().hashCode();
}
if (!internalGetSelector().getMap().isEmpty()) {
hash = (37 * hash) + SELECTOR_FIELD_NUMBER;
hash = (53 * hash) + internalGetSelector().hashCode();
}
hash = (29 * hash) + unknownFields.hashCode();
memoizedHashCode = hash;
return hash;
}
public static istio.networking.v1alpha3.GatewayOuterClass.Gateway parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static istio.networking.v1alpha3.GatewayOuterClass.Gateway parseFrom(
java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static istio.networking.v1alpha3.GatewayOuterClass.Gateway parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static istio.networking.v1alpha3.GatewayOuterClass.Gateway parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static istio.networking.v1alpha3.GatewayOuterClass.Gateway parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static istio.networking.v1alpha3.GatewayOuterClass.Gateway parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static istio.networking.v1alpha3.GatewayOuterClass.Gateway parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static istio.networking.v1alpha3.GatewayOuterClass.Gateway 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 istio.networking.v1alpha3.GatewayOuterClass.Gateway parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static istio.networking.v1alpha3.GatewayOuterClass.Gateway 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 istio.networking.v1alpha3.GatewayOuterClass.Gateway parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static istio.networking.v1alpha3.GatewayOuterClass.Gateway 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(istio.networking.v1alpha3.GatewayOuterClass.Gateway 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;
}
/**
*
* Gateway describes a load balancer operating at the edge of the mesh
* receiving incoming or outgoing HTTP/TCP connections.
* <!-- crd generation tags
* +cue-gen:Gateway:groupName:networking.istio.io
* +cue-gen:Gateway:version:v1alpha3
* +cue-gen:Gateway:storageVersion
* +cue-gen:Gateway:annotations:helm.sh/resource-policy=keep
* +cue-gen:Gateway:labels:app=istio-pilot,chart=istio,heritage=Tiller,release=istio
* +cue-gen:Gateway:subresource:status
* +cue-gen:Gateway:scope:Namespaced
* +cue-gen:Gateway:resource:categories=istio-io,networking-istio-io,shortNames=gw
* +cue-gen:Gateway:preserveUnknownFields:false
* -->
* <!-- go code generation tags
* +kubetype-gen
* +kubetype-gen:groupVersion=networking.istio.io/v1alpha3
* +genclient
* +k8s:deepcopy-gen=true
* -->
*
*
* Protobuf type {@code istio.networking.v1alpha3.Gateway}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder implements
// @@protoc_insertion_point(builder_implements:istio.networking.v1alpha3.Gateway)
istio.networking.v1alpha3.GatewayOuterClass.GatewayOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return istio.networking.v1alpha3.GatewayOuterClass.internal_static_istio_networking_v1alpha3_Gateway_descriptor;
}
@SuppressWarnings({"rawtypes"})
protected com.google.protobuf.MapField internalGetMapField(
int number) {
switch (number) {
case 2:
return internalGetSelector();
default:
throw new RuntimeException(
"Invalid map field number: " + number);
}
}
@SuppressWarnings({"rawtypes"})
protected com.google.protobuf.MapField internalGetMutableMapField(
int number) {
switch (number) {
case 2:
return internalGetMutableSelector();
default:
throw new RuntimeException(
"Invalid map field number: " + number);
}
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return istio.networking.v1alpha3.GatewayOuterClass.internal_static_istio_networking_v1alpha3_Gateway_fieldAccessorTable
.ensureFieldAccessorsInitialized(
istio.networking.v1alpha3.GatewayOuterClass.Gateway.class, istio.networking.v1alpha3.GatewayOuterClass.Gateway.Builder.class);
}
// Construct using istio.networking.v1alpha3.GatewayOuterClass.Gateway.newBuilder()
private Builder() {
maybeForceBuilderInitialization();
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
maybeForceBuilderInitialization();
}
private void maybeForceBuilderInitialization() {
if (com.google.protobuf.GeneratedMessageV3
.alwaysUseFieldBuilders) {
getServersFieldBuilder();
}
}
@java.lang.Override
public Builder clear() {
super.clear();
if (serversBuilder_ == null) {
servers_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000001);
} else {
serversBuilder_.clear();
}
internalGetMutableSelector().clear();
return this;
}
@java.lang.Override
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return istio.networking.v1alpha3.GatewayOuterClass.internal_static_istio_networking_v1alpha3_Gateway_descriptor;
}
@java.lang.Override
public istio.networking.v1alpha3.GatewayOuterClass.Gateway getDefaultInstanceForType() {
return istio.networking.v1alpha3.GatewayOuterClass.Gateway.getDefaultInstance();
}
@java.lang.Override
public istio.networking.v1alpha3.GatewayOuterClass.Gateway build() {
istio.networking.v1alpha3.GatewayOuterClass.Gateway result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
@java.lang.Override
public istio.networking.v1alpha3.GatewayOuterClass.Gateway buildPartial() {
istio.networking.v1alpha3.GatewayOuterClass.Gateway result = new istio.networking.v1alpha3.GatewayOuterClass.Gateway(this);
int from_bitField0_ = bitField0_;
if (serversBuilder_ == null) {
if (((bitField0_ & 0x00000001) != 0)) {
servers_ = java.util.Collections.unmodifiableList(servers_);
bitField0_ = (bitField0_ & ~0x00000001);
}
result.servers_ = servers_;
} else {
result.servers_ = serversBuilder_.build();
}
result.selector_ = internalGetSelector();
result.selector_.makeImmutable();
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 istio.networking.v1alpha3.GatewayOuterClass.Gateway) {
return mergeFrom((istio.networking.v1alpha3.GatewayOuterClass.Gateway)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(istio.networking.v1alpha3.GatewayOuterClass.Gateway other) {
if (other == istio.networking.v1alpha3.GatewayOuterClass.Gateway.getDefaultInstance()) return this;
if (serversBuilder_ == null) {
if (!other.servers_.isEmpty()) {
if (servers_.isEmpty()) {
servers_ = other.servers_;
bitField0_ = (bitField0_ & ~0x00000001);
} else {
ensureServersIsMutable();
servers_.addAll(other.servers_);
}
onChanged();
}
} else {
if (!other.servers_.isEmpty()) {
if (serversBuilder_.isEmpty()) {
serversBuilder_.dispose();
serversBuilder_ = null;
servers_ = other.servers_;
bitField0_ = (bitField0_ & ~0x00000001);
serversBuilder_ =
com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
getServersFieldBuilder() : null;
} else {
serversBuilder_.addAllMessages(other.servers_);
}
}
}
internalGetMutableSelector().mergeFrom(
other.internalGetSelector());
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 {
istio.networking.v1alpha3.GatewayOuterClass.Gateway parsedMessage = null;
try {
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
parsedMessage = (istio.networking.v1alpha3.GatewayOuterClass.Gateway) e.getUnfinishedMessage();
throw e.unwrapIOException();
} finally {
if (parsedMessage != null) {
mergeFrom(parsedMessage);
}
}
return this;
}
private int bitField0_;
private java.util.List servers_ =
java.util.Collections.emptyList();
private void ensureServersIsMutable() {
if (!((bitField0_ & 0x00000001) != 0)) {
servers_ = new java.util.ArrayList(servers_);
bitField0_ |= 0x00000001;
}
}
private com.google.protobuf.RepeatedFieldBuilderV3<
istio.networking.v1alpha3.GatewayOuterClass.Server, istio.networking.v1alpha3.GatewayOuterClass.Server.Builder, istio.networking.v1alpha3.GatewayOuterClass.ServerOrBuilder> serversBuilder_;
/**
*
* One or more labels that indicate a specific set of pods/VMs
* on which this gateway configuration should be applied.
* By default workloads are searched across all namespaces based on label selectors.
* This implies that a gateway resource in the namespace "foo" can select pods in
* the namespace "bar" based on labels.
* This behavior can be controlled via the `PILOT_SCOPE_GATEWAY_TO_NAMESPACE`
* environment variable in istiod. If this variable is set
* to true, the scope of label search is restricted to the configuration
* namespace in which the the resource is present. In other words, the Gateway
* resource must reside in the same namespace as the gateway workload
* instance.
* If selector is nil, the Gateway will be applied to all workloads.
*
*
* map<string, string> selector = 2 [(.google.api.field_behavior) = REQUIRED];
*/
@java.lang.Override
public boolean containsSelector(
java.lang.String key) {
if (key == null) { throw new java.lang.NullPointerException(); }
return internalGetSelector().getMap().containsKey(key);
}
/**
* Use {@link #getSelectorMap()} instead.
*/
@java.lang.Override
@java.lang.Deprecated
public java.util.Map getSelector() {
return getSelectorMap();
}
/**
*
* One or more labels that indicate a specific set of pods/VMs
* on which this gateway configuration should be applied.
* By default workloads are searched across all namespaces based on label selectors.
* This implies that a gateway resource in the namespace "foo" can select pods in
* the namespace "bar" based on labels.
* This behavior can be controlled via the `PILOT_SCOPE_GATEWAY_TO_NAMESPACE`
* environment variable in istiod. If this variable is set
* to true, the scope of label search is restricted to the configuration
* namespace in which the the resource is present. In other words, the Gateway
* resource must reside in the same namespace as the gateway workload
* instance.
* If selector is nil, the Gateway will be applied to all workloads.
*
* One or more labels that indicate a specific set of pods/VMs
* on which this gateway configuration should be applied.
* By default workloads are searched across all namespaces based on label selectors.
* This implies that a gateway resource in the namespace "foo" can select pods in
* the namespace "bar" based on labels.
* This behavior can be controlled via the `PILOT_SCOPE_GATEWAY_TO_NAMESPACE`
* environment variable in istiod. If this variable is set
* to true, the scope of label search is restricted to the configuration
* namespace in which the the resource is present. In other words, the Gateway
* resource must reside in the same namespace as the gateway workload
* instance.
* If selector is nil, the Gateway will be applied to all workloads.
*
* One or more labels that indicate a specific set of pods/VMs
* on which this gateway configuration should be applied.
* By default workloads are searched across all namespaces based on label selectors.
* This implies that a gateway resource in the namespace "foo" can select pods in
* the namespace "bar" based on labels.
* This behavior can be controlled via the `PILOT_SCOPE_GATEWAY_TO_NAMESPACE`
* environment variable in istiod. If this variable is set
* to true, the scope of label search is restricted to the configuration
* namespace in which the the resource is present. In other words, the Gateway
* resource must reside in the same namespace as the gateway workload
* instance.
* If selector is nil, the Gateway will be applied to all workloads.
*
*
* map<string, string> selector = 2 [(.google.api.field_behavior) = REQUIRED];
*/
@java.lang.Override
public java.lang.String getSelectorOrThrow(
java.lang.String key) {
if (key == null) { throw new java.lang.NullPointerException(); }
java.util.Map map =
internalGetSelector().getMap();
if (!map.containsKey(key)) {
throw new java.lang.IllegalArgumentException();
}
return map.get(key);
}
public Builder clearSelector() {
internalGetMutableSelector().getMutableMap()
.clear();
return this;
}
/**
*
* One or more labels that indicate a specific set of pods/VMs
* on which this gateway configuration should be applied.
* By default workloads are searched across all namespaces based on label selectors.
* This implies that a gateway resource in the namespace "foo" can select pods in
* the namespace "bar" based on labels.
* This behavior can be controlled via the `PILOT_SCOPE_GATEWAY_TO_NAMESPACE`
* environment variable in istiod. If this variable is set
* to true, the scope of label search is restricted to the configuration
* namespace in which the the resource is present. In other words, the Gateway
* resource must reside in the same namespace as the gateway workload
* instance.
* If selector is nil, the Gateway will be applied to all workloads.
*
*
* map<string, string> selector = 2 [(.google.api.field_behavior) = REQUIRED];
*/
public Builder removeSelector(
java.lang.String key) {
if (key == null) { throw new java.lang.NullPointerException(); }
internalGetMutableSelector().getMutableMap()
.remove(key);
return this;
}
/**
* Use alternate mutation accessors instead.
*/
@java.lang.Deprecated
public java.util.Map
getMutableSelector() {
return internalGetMutableSelector().getMutableMap();
}
/**
*
* One or more labels that indicate a specific set of pods/VMs
* on which this gateway configuration should be applied.
* By default workloads are searched across all namespaces based on label selectors.
* This implies that a gateway resource in the namespace "foo" can select pods in
* the namespace "bar" based on labels.
* This behavior can be controlled via the `PILOT_SCOPE_GATEWAY_TO_NAMESPACE`
* environment variable in istiod. If this variable is set
* to true, the scope of label search is restricted to the configuration
* namespace in which the the resource is present. In other words, the Gateway
* resource must reside in the same namespace as the gateway workload
* instance.
* If selector is nil, the Gateway will be applied to all workloads.
*
*
* map<string, string> selector = 2 [(.google.api.field_behavior) = REQUIRED];
*/
public Builder putSelector(
java.lang.String key,
java.lang.String value) {
if (key == null) { throw new java.lang.NullPointerException(); }
if (value == null) { throw new java.lang.NullPointerException(); }
internalGetMutableSelector().getMutableMap()
.put(key, value);
return this;
}
/**
*
* One or more labels that indicate a specific set of pods/VMs
* on which this gateway configuration should be applied.
* By default workloads are searched across all namespaces based on label selectors.
* This implies that a gateway resource in the namespace "foo" can select pods in
* the namespace "bar" based on labels.
* This behavior can be controlled via the `PILOT_SCOPE_GATEWAY_TO_NAMESPACE`
* environment variable in istiod. If this variable is set
* to true, the scope of label search is restricted to the configuration
* namespace in which the the resource is present. In other words, the Gateway
* resource must reside in the same namespace as the gateway workload
* instance.
* If selector is nil, the Gateway will be applied to all workloads.
*
*
* map<string, string> selector = 2 [(.google.api.field_behavior) = REQUIRED];
*/
public Builder putAllSelector(
java.util.Map values) {
internalGetMutableSelector().getMutableMap()
.putAll(values);
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:istio.networking.v1alpha3.Gateway)
}
// @@protoc_insertion_point(class_scope:istio.networking.v1alpha3.Gateway)
private static final istio.networking.v1alpha3.GatewayOuterClass.Gateway DEFAULT_INSTANCE;
static {
DEFAULT_INSTANCE = new istio.networking.v1alpha3.GatewayOuterClass.Gateway();
}
public static istio.networking.v1alpha3.GatewayOuterClass.Gateway getDefaultInstance() {
return DEFAULT_INSTANCE;
}
private static final com.google.protobuf.Parser
PARSER = new com.google.protobuf.AbstractParser() {
@java.lang.Override
public Gateway parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return new Gateway(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 istio.networking.v1alpha3.GatewayOuterClass.Gateway getDefaultInstanceForType() {
return DEFAULT_INSTANCE;
}
}
public interface ServerOrBuilder extends
// @@protoc_insertion_point(interface_extends:istio.networking.v1alpha3.Server)
com.google.protobuf.MessageOrBuilder {
/**
*
* The Port on which the proxy should listen for incoming
* connections.
*
*
* .istio.networking.v1alpha3.Port port = 1 [(.google.api.field_behavior) = REQUIRED];
* @return Whether the port field is set.
*/
boolean hasPort();
/**
*
* The Port on which the proxy should listen for incoming
* connections.
*
*
* .istio.networking.v1alpha3.Port port = 1 [(.google.api.field_behavior) = REQUIRED];
* @return The port.
*/
istio.networking.v1alpha3.GatewayOuterClass.Port getPort();
/**
*
* The Port on which the proxy should listen for incoming
* connections.
*
* $hide_from_docs
* The ip or the Unix domain socket to which the listener should be bound
* to. Format: `x.x.x.x` or `unix:///path/to/uds` or `unix://@foobar`
* (Linux abstract namespace). When using Unix domain sockets, the port
* number should be 0.
*
* $hide_from_docs
* The ip or the Unix domain socket to which the listener should be bound
* to. Format: `x.x.x.x` or `unix:///path/to/uds` or `unix://@foobar`
* (Linux abstract namespace). When using Unix domain sockets, the port
* number should be 0.
*
*
* string bind = 4;
* @return The bytes for bind.
*/
com.google.protobuf.ByteString
getBindBytes();
/**
*
* One or more hosts exposed by this gateway.
* While typically applicable to
* HTTP services, it can also be used for TCP services using TLS with SNI.
* A host is specified as a `dnsName` with an optional `namespace/` prefix.
* The `dnsName` should be specified using FQDN format, optionally including
* a wildcard character in the left-most component (e.g., `prod/*.example.com`).
* Set the `dnsName` to `*` to select all `VirtualService` hosts from the
* specified namespace (e.g.,`prod/*`).
* The `namespace` can be set to `*` or `.`, representing any or the current
* namespace, respectively. For example, `*/foo.example.com` selects the
* service from any available namespace while `./foo.example.com` only selects
* the service from the namespace of the sidecar. The default, if no `namespace/`
* is specified, is `*/`, that is, select services from any namespace.
* Any associated `DestinationRule` in the selected namespace will also be used.
* A `VirtualService` must be bound to the gateway and must have one or
* more hosts that match the hosts specified in a server. The match
* could be an exact match or a suffix match with the server's hosts. For
* example, if the server's hosts specifies `*.example.com`, a
* `VirtualService` with hosts `dev.example.com` or `prod.example.com` will
* match. However, a `VirtualService` with host `example.com` or
* `newexample.com` will not match.
* NOTE: Only virtual services exported to the gateway's namespace
* (e.g., `exportTo` value of `*`) can be referenced.
* Private configurations (e.g., `exportTo` set to `.`) will not be
* available. Refer to the `exportTo` setting in `VirtualService`,
* `DestinationRule`, and `ServiceEntry` configurations for details.
*
*
* repeated string hosts = 2 [(.google.api.field_behavior) = REQUIRED];
* @return A list containing the hosts.
*/
java.util.List
getHostsList();
/**
*
* One or more hosts exposed by this gateway.
* While typically applicable to
* HTTP services, it can also be used for TCP services using TLS with SNI.
* A host is specified as a `dnsName` with an optional `namespace/` prefix.
* The `dnsName` should be specified using FQDN format, optionally including
* a wildcard character in the left-most component (e.g., `prod/*.example.com`).
* Set the `dnsName` to `*` to select all `VirtualService` hosts from the
* specified namespace (e.g.,`prod/*`).
* The `namespace` can be set to `*` or `.`, representing any or the current
* namespace, respectively. For example, `*/foo.example.com` selects the
* service from any available namespace while `./foo.example.com` only selects
* the service from the namespace of the sidecar. The default, if no `namespace/`
* is specified, is `*/`, that is, select services from any namespace.
* Any associated `DestinationRule` in the selected namespace will also be used.
* A `VirtualService` must be bound to the gateway and must have one or
* more hosts that match the hosts specified in a server. The match
* could be an exact match or a suffix match with the server's hosts. For
* example, if the server's hosts specifies `*.example.com`, a
* `VirtualService` with hosts `dev.example.com` or `prod.example.com` will
* match. However, a `VirtualService` with host `example.com` or
* `newexample.com` will not match.
* NOTE: Only virtual services exported to the gateway's namespace
* (e.g., `exportTo` value of `*`) can be referenced.
* Private configurations (e.g., `exportTo` set to `.`) will not be
* available. Refer to the `exportTo` setting in `VirtualService`,
* `DestinationRule`, and `ServiceEntry` configurations for details.
*
*
* repeated string hosts = 2 [(.google.api.field_behavior) = REQUIRED];
* @return The count of hosts.
*/
int getHostsCount();
/**
*
* One or more hosts exposed by this gateway.
* While typically applicable to
* HTTP services, it can also be used for TCP services using TLS with SNI.
* A host is specified as a `dnsName` with an optional `namespace/` prefix.
* The `dnsName` should be specified using FQDN format, optionally including
* a wildcard character in the left-most component (e.g., `prod/*.example.com`).
* Set the `dnsName` to `*` to select all `VirtualService` hosts from the
* specified namespace (e.g.,`prod/*`).
* The `namespace` can be set to `*` or `.`, representing any or the current
* namespace, respectively. For example, `*/foo.example.com` selects the
* service from any available namespace while `./foo.example.com` only selects
* the service from the namespace of the sidecar. The default, if no `namespace/`
* is specified, is `*/`, that is, select services from any namespace.
* Any associated `DestinationRule` in the selected namespace will also be used.
* A `VirtualService` must be bound to the gateway and must have one or
* more hosts that match the hosts specified in a server. The match
* could be an exact match or a suffix match with the server's hosts. For
* example, if the server's hosts specifies `*.example.com`, a
* `VirtualService` with hosts `dev.example.com` or `prod.example.com` will
* match. However, a `VirtualService` with host `example.com` or
* `newexample.com` will not match.
* NOTE: Only virtual services exported to the gateway's namespace
* (e.g., `exportTo` value of `*`) can be referenced.
* Private configurations (e.g., `exportTo` set to `.`) will not be
* available. Refer to the `exportTo` setting in `VirtualService`,
* `DestinationRule`, and `ServiceEntry` configurations for details.
*
*
* repeated string hosts = 2 [(.google.api.field_behavior) = REQUIRED];
* @param index The index of the element to return.
* @return The hosts at the given index.
*/
java.lang.String getHosts(int index);
/**
*
* One or more hosts exposed by this gateway.
* While typically applicable to
* HTTP services, it can also be used for TCP services using TLS with SNI.
* A host is specified as a `dnsName` with an optional `namespace/` prefix.
* The `dnsName` should be specified using FQDN format, optionally including
* a wildcard character in the left-most component (e.g., `prod/*.example.com`).
* Set the `dnsName` to `*` to select all `VirtualService` hosts from the
* specified namespace (e.g.,`prod/*`).
* The `namespace` can be set to `*` or `.`, representing any or the current
* namespace, respectively. For example, `*/foo.example.com` selects the
* service from any available namespace while `./foo.example.com` only selects
* the service from the namespace of the sidecar. The default, if no `namespace/`
* is specified, is `*/`, that is, select services from any namespace.
* Any associated `DestinationRule` in the selected namespace will also be used.
* A `VirtualService` must be bound to the gateway and must have one or
* more hosts that match the hosts specified in a server. The match
* could be an exact match or a suffix match with the server's hosts. For
* example, if the server's hosts specifies `*.example.com`, a
* `VirtualService` with hosts `dev.example.com` or `prod.example.com` will
* match. However, a `VirtualService` with host `example.com` or
* `newexample.com` will not match.
* NOTE: Only virtual services exported to the gateway's namespace
* (e.g., `exportTo` value of `*`) can be referenced.
* Private configurations (e.g., `exportTo` set to `.`) will not be
* available. Refer to the `exportTo` setting in `VirtualService`,
* `DestinationRule`, and `ServiceEntry` configurations for details.
*
*
* repeated string hosts = 2 [(.google.api.field_behavior) = REQUIRED];
* @param index The index of the value to return.
* @return The bytes of the hosts at the given index.
*/
com.google.protobuf.ByteString
getHostsBytes(int index);
/**
*
* Set of TLS related options that govern the server's behavior. Use
* these options to control if all http requests should be redirected to
* https, and the TLS modes to use.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings tls = 3;
* @return Whether the tls field is set.
*/
boolean hasTls();
/**
*
* Set of TLS related options that govern the server's behavior. Use
* these options to control if all http requests should be redirected to
* https, and the TLS modes to use.
*
* Set of TLS related options that govern the server's behavior. Use
* these options to control if all http requests should be redirected to
* https, and the TLS modes to use.
*
* The loopback IP endpoint or Unix domain socket to which traffic should
* be forwarded to by default. Format should be `127.0.0.1:PORT` or
* `unix:///path/to/socket` or `unix://@foobar` (Linux abstract namespace).
* NOT IMPLEMENTED.
* $hide_from_docs
*
* The loopback IP endpoint or Unix domain socket to which traffic should
* be forwarded to by default. Format should be `127.0.0.1:PORT` or
* `unix:///path/to/socket` or `unix://@foobar` (Linux abstract namespace).
* NOT IMPLEMENTED.
* $hide_from_docs
*
*
* string default_endpoint = 5;
* @return The bytes for defaultEndpoint.
*/
com.google.protobuf.ByteString
getDefaultEndpointBytes();
/**
*
* An optional name of the server, when set must be unique across all servers.
* This will be used for variety of purposes like prefixing stats generated with
* this name etc.
*
*
* string name = 6;
* @return The name.
*/
java.lang.String getName();
/**
*
* An optional name of the server, when set must be unique across all servers.
* This will be used for variety of purposes like prefixing stats generated with
* this name etc.
*
*
* string name = 6;
* @return The bytes for name.
*/
com.google.protobuf.ByteString
getNameBytes();
}
/**
*
*
* Protobuf type {@code istio.networking.v1alpha3.Server}
*/
public static final class Server extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:istio.networking.v1alpha3.Server)
ServerOrBuilder {
private static final long serialVersionUID = 0L;
// Use Server.newBuilder() to construct.
private Server(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
super(builder);
}
private Server() {
bind_ = "";
hosts_ = com.google.protobuf.LazyStringArrayList.EMPTY;
defaultEndpoint_ = "";
name_ = "";
}
@java.lang.Override
@SuppressWarnings({"unused"})
protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new Server();
}
@java.lang.Override
public final com.google.protobuf.UnknownFieldSet
getUnknownFields() {
return this.unknownFields;
}
private Server(
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 10: {
istio.networking.v1alpha3.GatewayOuterClass.Port.Builder subBuilder = null;
if (port_ != null) {
subBuilder = port_.toBuilder();
}
port_ = input.readMessage(istio.networking.v1alpha3.GatewayOuterClass.Port.parser(), extensionRegistry);
if (subBuilder != null) {
subBuilder.mergeFrom(port_);
port_ = subBuilder.buildPartial();
}
break;
}
case 18: {
java.lang.String s = input.readStringRequireUtf8();
if (!((mutable_bitField0_ & 0x00000001) != 0)) {
hosts_ = new com.google.protobuf.LazyStringArrayList();
mutable_bitField0_ |= 0x00000001;
}
hosts_.add(s);
break;
}
case 26: {
istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.Builder subBuilder = null;
if (tls_ != null) {
subBuilder = tls_.toBuilder();
}
tls_ = input.readMessage(istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.parser(), extensionRegistry);
if (subBuilder != null) {
subBuilder.mergeFrom(tls_);
tls_ = subBuilder.buildPartial();
}
break;
}
case 34: {
java.lang.String s = input.readStringRequireUtf8();
bind_ = s;
break;
}
case 42: {
java.lang.String s = input.readStringRequireUtf8();
defaultEndpoint_ = s;
break;
}
case 50: {
java.lang.String s = input.readStringRequireUtf8();
name_ = s;
break;
}
default: {
if (!parseUnknownField(
input, unknownFields, extensionRegistry, tag)) {
done = true;
}
break;
}
}
}
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(this);
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(
e).setUnfinishedMessage(this);
} finally {
if (((mutable_bitField0_ & 0x00000001) != 0)) {
hosts_ = hosts_.getUnmodifiableView();
}
this.unknownFields = unknownFields.build();
makeExtensionsImmutable();
}
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return istio.networking.v1alpha3.GatewayOuterClass.internal_static_istio_networking_v1alpha3_Server_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return istio.networking.v1alpha3.GatewayOuterClass.internal_static_istio_networking_v1alpha3_Server_fieldAccessorTable
.ensureFieldAccessorsInitialized(
istio.networking.v1alpha3.GatewayOuterClass.Server.class, istio.networking.v1alpha3.GatewayOuterClass.Server.Builder.class);
}
public static final int PORT_FIELD_NUMBER = 1;
private istio.networking.v1alpha3.GatewayOuterClass.Port port_;
/**
*
* The Port on which the proxy should listen for incoming
* connections.
*
*
* .istio.networking.v1alpha3.Port port = 1 [(.google.api.field_behavior) = REQUIRED];
* @return Whether the port field is set.
*/
@java.lang.Override
public boolean hasPort() {
return port_ != null;
}
/**
*
* The Port on which the proxy should listen for incoming
* connections.
*
*
* .istio.networking.v1alpha3.Port port = 1 [(.google.api.field_behavior) = REQUIRED];
* @return The port.
*/
@java.lang.Override
public istio.networking.v1alpha3.GatewayOuterClass.Port getPort() {
return port_ == null ? istio.networking.v1alpha3.GatewayOuterClass.Port.getDefaultInstance() : port_;
}
/**
*
* The Port on which the proxy should listen for incoming
* connections.
*
*
* .istio.networking.v1alpha3.Port port = 1 [(.google.api.field_behavior) = REQUIRED];
*/
@java.lang.Override
public istio.networking.v1alpha3.GatewayOuterClass.PortOrBuilder getPortOrBuilder() {
return getPort();
}
public static final int BIND_FIELD_NUMBER = 4;
private volatile java.lang.Object bind_;
/**
*
* $hide_from_docs
* The ip or the Unix domain socket to which the listener should be bound
* to. Format: `x.x.x.x` or `unix:///path/to/uds` or `unix://@foobar`
* (Linux abstract namespace). When using Unix domain sockets, the port
* number should be 0.
*
* $hide_from_docs
* The ip or the Unix domain socket to which the listener should be bound
* to. Format: `x.x.x.x` or `unix:///path/to/uds` or `unix://@foobar`
* (Linux abstract namespace). When using Unix domain sockets, the port
* number should be 0.
*
*
* string bind = 4;
* @return The bytes for bind.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getBindBytes() {
java.lang.Object ref = bind_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
bind_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int HOSTS_FIELD_NUMBER = 2;
private com.google.protobuf.LazyStringList hosts_;
/**
*
* One or more hosts exposed by this gateway.
* While typically applicable to
* HTTP services, it can also be used for TCP services using TLS with SNI.
* A host is specified as a `dnsName` with an optional `namespace/` prefix.
* The `dnsName` should be specified using FQDN format, optionally including
* a wildcard character in the left-most component (e.g., `prod/*.example.com`).
* Set the `dnsName` to `*` to select all `VirtualService` hosts from the
* specified namespace (e.g.,`prod/*`).
* The `namespace` can be set to `*` or `.`, representing any or the current
* namespace, respectively. For example, `*/foo.example.com` selects the
* service from any available namespace while `./foo.example.com` only selects
* the service from the namespace of the sidecar. The default, if no `namespace/`
* is specified, is `*/`, that is, select services from any namespace.
* Any associated `DestinationRule` in the selected namespace will also be used.
* A `VirtualService` must be bound to the gateway and must have one or
* more hosts that match the hosts specified in a server. The match
* could be an exact match or a suffix match with the server's hosts. For
* example, if the server's hosts specifies `*.example.com`, a
* `VirtualService` with hosts `dev.example.com` or `prod.example.com` will
* match. However, a `VirtualService` with host `example.com` or
* `newexample.com` will not match.
* NOTE: Only virtual services exported to the gateway's namespace
* (e.g., `exportTo` value of `*`) can be referenced.
* Private configurations (e.g., `exportTo` set to `.`) will not be
* available. Refer to the `exportTo` setting in `VirtualService`,
* `DestinationRule`, and `ServiceEntry` configurations for details.
*
*
* repeated string hosts = 2 [(.google.api.field_behavior) = REQUIRED];
* @return A list containing the hosts.
*/
public com.google.protobuf.ProtocolStringList
getHostsList() {
return hosts_;
}
/**
*
* One or more hosts exposed by this gateway.
* While typically applicable to
* HTTP services, it can also be used for TCP services using TLS with SNI.
* A host is specified as a `dnsName` with an optional `namespace/` prefix.
* The `dnsName` should be specified using FQDN format, optionally including
* a wildcard character in the left-most component (e.g., `prod/*.example.com`).
* Set the `dnsName` to `*` to select all `VirtualService` hosts from the
* specified namespace (e.g.,`prod/*`).
* The `namespace` can be set to `*` or `.`, representing any or the current
* namespace, respectively. For example, `*/foo.example.com` selects the
* service from any available namespace while `./foo.example.com` only selects
* the service from the namespace of the sidecar. The default, if no `namespace/`
* is specified, is `*/`, that is, select services from any namespace.
* Any associated `DestinationRule` in the selected namespace will also be used.
* A `VirtualService` must be bound to the gateway and must have one or
* more hosts that match the hosts specified in a server. The match
* could be an exact match or a suffix match with the server's hosts. For
* example, if the server's hosts specifies `*.example.com`, a
* `VirtualService` with hosts `dev.example.com` or `prod.example.com` will
* match. However, a `VirtualService` with host `example.com` or
* `newexample.com` will not match.
* NOTE: Only virtual services exported to the gateway's namespace
* (e.g., `exportTo` value of `*`) can be referenced.
* Private configurations (e.g., `exportTo` set to `.`) will not be
* available. Refer to the `exportTo` setting in `VirtualService`,
* `DestinationRule`, and `ServiceEntry` configurations for details.
*
*
* repeated string hosts = 2 [(.google.api.field_behavior) = REQUIRED];
* @return The count of hosts.
*/
public int getHostsCount() {
return hosts_.size();
}
/**
*
* One or more hosts exposed by this gateway.
* While typically applicable to
* HTTP services, it can also be used for TCP services using TLS with SNI.
* A host is specified as a `dnsName` with an optional `namespace/` prefix.
* The `dnsName` should be specified using FQDN format, optionally including
* a wildcard character in the left-most component (e.g., `prod/*.example.com`).
* Set the `dnsName` to `*` to select all `VirtualService` hosts from the
* specified namespace (e.g.,`prod/*`).
* The `namespace` can be set to `*` or `.`, representing any or the current
* namespace, respectively. For example, `*/foo.example.com` selects the
* service from any available namespace while `./foo.example.com` only selects
* the service from the namespace of the sidecar. The default, if no `namespace/`
* is specified, is `*/`, that is, select services from any namespace.
* Any associated `DestinationRule` in the selected namespace will also be used.
* A `VirtualService` must be bound to the gateway and must have one or
* more hosts that match the hosts specified in a server. The match
* could be an exact match or a suffix match with the server's hosts. For
* example, if the server's hosts specifies `*.example.com`, a
* `VirtualService` with hosts `dev.example.com` or `prod.example.com` will
* match. However, a `VirtualService` with host `example.com` or
* `newexample.com` will not match.
* NOTE: Only virtual services exported to the gateway's namespace
* (e.g., `exportTo` value of `*`) can be referenced.
* Private configurations (e.g., `exportTo` set to `.`) will not be
* available. Refer to the `exportTo` setting in `VirtualService`,
* `DestinationRule`, and `ServiceEntry` configurations for details.
*
*
* repeated string hosts = 2 [(.google.api.field_behavior) = REQUIRED];
* @param index The index of the element to return.
* @return The hosts at the given index.
*/
public java.lang.String getHosts(int index) {
return hosts_.get(index);
}
/**
*
* One or more hosts exposed by this gateway.
* While typically applicable to
* HTTP services, it can also be used for TCP services using TLS with SNI.
* A host is specified as a `dnsName` with an optional `namespace/` prefix.
* The `dnsName` should be specified using FQDN format, optionally including
* a wildcard character in the left-most component (e.g., `prod/*.example.com`).
* Set the `dnsName` to `*` to select all `VirtualService` hosts from the
* specified namespace (e.g.,`prod/*`).
* The `namespace` can be set to `*` or `.`, representing any or the current
* namespace, respectively. For example, `*/foo.example.com` selects the
* service from any available namespace while `./foo.example.com` only selects
* the service from the namespace of the sidecar. The default, if no `namespace/`
* is specified, is `*/`, that is, select services from any namespace.
* Any associated `DestinationRule` in the selected namespace will also be used.
* A `VirtualService` must be bound to the gateway and must have one or
* more hosts that match the hosts specified in a server. The match
* could be an exact match or a suffix match with the server's hosts. For
* example, if the server's hosts specifies `*.example.com`, a
* `VirtualService` with hosts `dev.example.com` or `prod.example.com` will
* match. However, a `VirtualService` with host `example.com` or
* `newexample.com` will not match.
* NOTE: Only virtual services exported to the gateway's namespace
* (e.g., `exportTo` value of `*`) can be referenced.
* Private configurations (e.g., `exportTo` set to `.`) will not be
* available. Refer to the `exportTo` setting in `VirtualService`,
* `DestinationRule`, and `ServiceEntry` configurations for details.
*
*
* repeated string hosts = 2 [(.google.api.field_behavior) = REQUIRED];
* @param index The index of the value to return.
* @return The bytes of the hosts at the given index.
*/
public com.google.protobuf.ByteString
getHostsBytes(int index) {
return hosts_.getByteString(index);
}
public static final int TLS_FIELD_NUMBER = 3;
private istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings tls_;
/**
*
* Set of TLS related options that govern the server's behavior. Use
* these options to control if all http requests should be redirected to
* https, and the TLS modes to use.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings tls = 3;
* @return Whether the tls field is set.
*/
@java.lang.Override
public boolean hasTls() {
return tls_ != null;
}
/**
*
* Set of TLS related options that govern the server's behavior. Use
* these options to control if all http requests should be redirected to
* https, and the TLS modes to use.
*
* Set of TLS related options that govern the server's behavior. Use
* these options to control if all http requests should be redirected to
* https, and the TLS modes to use.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings tls = 3;
*/
@java.lang.Override
public istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettingsOrBuilder getTlsOrBuilder() {
return getTls();
}
public static final int DEFAULT_ENDPOINT_FIELD_NUMBER = 5;
private volatile java.lang.Object defaultEndpoint_;
/**
*
* The loopback IP endpoint or Unix domain socket to which traffic should
* be forwarded to by default. Format should be `127.0.0.1:PORT` or
* `unix:///path/to/socket` or `unix://@foobar` (Linux abstract namespace).
* NOT IMPLEMENTED.
* $hide_from_docs
*
* The loopback IP endpoint or Unix domain socket to which traffic should
* be forwarded to by default. Format should be `127.0.0.1:PORT` or
* `unix:///path/to/socket` or `unix://@foobar` (Linux abstract namespace).
* NOT IMPLEMENTED.
* $hide_from_docs
*
*
* string default_endpoint = 5;
* @return The bytes for defaultEndpoint.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getDefaultEndpointBytes() {
java.lang.Object ref = defaultEndpoint_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
defaultEndpoint_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int NAME_FIELD_NUMBER = 6;
private volatile java.lang.Object name_;
/**
*
* An optional name of the server, when set must be unique across all servers.
* This will be used for variety of purposes like prefixing stats generated with
* this name etc.
*
*
* string name = 6;
* @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;
}
}
/**
*
* An optional name of the server, when set must be unique across all servers.
* This will be used for variety of purposes like prefixing stats generated with
* this name etc.
*
*
* string name = 6;
* @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 (port_ != null) {
output.writeMessage(1, getPort());
}
for (int i = 0; i < hosts_.size(); i++) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 2, hosts_.getRaw(i));
}
if (tls_ != null) {
output.writeMessage(3, getTls());
}
if (!getBindBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 4, bind_);
}
if (!getDefaultEndpointBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 5, defaultEndpoint_);
}
if (!getNameBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 6, name_);
}
unknownFields.writeTo(output);
}
@java.lang.Override
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
if (port_ != null) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(1, getPort());
}
{
int dataSize = 0;
for (int i = 0; i < hosts_.size(); i++) {
dataSize += computeStringSizeNoTag(hosts_.getRaw(i));
}
size += dataSize;
size += 1 * getHostsList().size();
}
if (tls_ != null) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(3, getTls());
}
if (!getBindBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, bind_);
}
if (!getDefaultEndpointBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, defaultEndpoint_);
}
if (!getNameBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, name_);
}
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 istio.networking.v1alpha3.GatewayOuterClass.Server)) {
return super.equals(obj);
}
istio.networking.v1alpha3.GatewayOuterClass.Server other = (istio.networking.v1alpha3.GatewayOuterClass.Server) obj;
if (hasPort() != other.hasPort()) return false;
if (hasPort()) {
if (!getPort()
.equals(other.getPort())) return false;
}
if (!getBind()
.equals(other.getBind())) return false;
if (!getHostsList()
.equals(other.getHostsList())) return false;
if (hasTls() != other.hasTls()) return false;
if (hasTls()) {
if (!getTls()
.equals(other.getTls())) return false;
}
if (!getDefaultEndpoint()
.equals(other.getDefaultEndpoint())) 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 (hasPort()) {
hash = (37 * hash) + PORT_FIELD_NUMBER;
hash = (53 * hash) + getPort().hashCode();
}
hash = (37 * hash) + BIND_FIELD_NUMBER;
hash = (53 * hash) + getBind().hashCode();
if (getHostsCount() > 0) {
hash = (37 * hash) + HOSTS_FIELD_NUMBER;
hash = (53 * hash) + getHostsList().hashCode();
}
if (hasTls()) {
hash = (37 * hash) + TLS_FIELD_NUMBER;
hash = (53 * hash) + getTls().hashCode();
}
hash = (37 * hash) + DEFAULT_ENDPOINT_FIELD_NUMBER;
hash = (53 * hash) + getDefaultEndpoint().hashCode();
hash = (37 * hash) + NAME_FIELD_NUMBER;
hash = (53 * hash) + getName().hashCode();
hash = (29 * hash) + unknownFields.hashCode();
memoizedHashCode = hash;
return hash;
}
public static istio.networking.v1alpha3.GatewayOuterClass.Server parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static istio.networking.v1alpha3.GatewayOuterClass.Server parseFrom(
java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static istio.networking.v1alpha3.GatewayOuterClass.Server parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static istio.networking.v1alpha3.GatewayOuterClass.Server parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static istio.networking.v1alpha3.GatewayOuterClass.Server parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static istio.networking.v1alpha3.GatewayOuterClass.Server parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static istio.networking.v1alpha3.GatewayOuterClass.Server parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static istio.networking.v1alpha3.GatewayOuterClass.Server 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 istio.networking.v1alpha3.GatewayOuterClass.Server parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static istio.networking.v1alpha3.GatewayOuterClass.Server 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 istio.networking.v1alpha3.GatewayOuterClass.Server parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static istio.networking.v1alpha3.GatewayOuterClass.Server 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(istio.networking.v1alpha3.GatewayOuterClass.Server 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;
}
/**
*
* $hide_from_docs
* The ip or the Unix domain socket to which the listener should be bound
* to. Format: `x.x.x.x` or `unix:///path/to/uds` or `unix://@foobar`
* (Linux abstract namespace). When using Unix domain sockets, the port
* number should be 0.
*
* $hide_from_docs
* The ip or the Unix domain socket to which the listener should be bound
* to. Format: `x.x.x.x` or `unix:///path/to/uds` or `unix://@foobar`
* (Linux abstract namespace). When using Unix domain sockets, the port
* number should be 0.
*
*
* string bind = 4;
* @return The bytes for bind.
*/
public com.google.protobuf.ByteString
getBindBytes() {
java.lang.Object ref = bind_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
bind_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
*
* $hide_from_docs
* The ip or the Unix domain socket to which the listener should be bound
* to. Format: `x.x.x.x` or `unix:///path/to/uds` or `unix://@foobar`
* (Linux abstract namespace). When using Unix domain sockets, the port
* number should be 0.
*
*
* string bind = 4;
* @param value The bind to set.
* @return This builder for chaining.
*/
public Builder setBind(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
bind_ = value;
onChanged();
return this;
}
/**
*
* $hide_from_docs
* The ip or the Unix domain socket to which the listener should be bound
* to. Format: `x.x.x.x` or `unix:///path/to/uds` or `unix://@foobar`
* (Linux abstract namespace). When using Unix domain sockets, the port
* number should be 0.
*
*
* string bind = 4;
* @return This builder for chaining.
*/
public Builder clearBind() {
bind_ = getDefaultInstance().getBind();
onChanged();
return this;
}
/**
*
* $hide_from_docs
* The ip or the Unix domain socket to which the listener should be bound
* to. Format: `x.x.x.x` or `unix:///path/to/uds` or `unix://@foobar`
* (Linux abstract namespace). When using Unix domain sockets, the port
* number should be 0.
*
*
* string bind = 4;
* @param value The bytes for bind to set.
* @return This builder for chaining.
*/
public Builder setBindBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
bind_ = value;
onChanged();
return this;
}
private com.google.protobuf.LazyStringList hosts_ = com.google.protobuf.LazyStringArrayList.EMPTY;
private void ensureHostsIsMutable() {
if (!((bitField0_ & 0x00000001) != 0)) {
hosts_ = new com.google.protobuf.LazyStringArrayList(hosts_);
bitField0_ |= 0x00000001;
}
}
/**
*
* One or more hosts exposed by this gateway.
* While typically applicable to
* HTTP services, it can also be used for TCP services using TLS with SNI.
* A host is specified as a `dnsName` with an optional `namespace/` prefix.
* The `dnsName` should be specified using FQDN format, optionally including
* a wildcard character in the left-most component (e.g., `prod/*.example.com`).
* Set the `dnsName` to `*` to select all `VirtualService` hosts from the
* specified namespace (e.g.,`prod/*`).
* The `namespace` can be set to `*` or `.`, representing any or the current
* namespace, respectively. For example, `*/foo.example.com` selects the
* service from any available namespace while `./foo.example.com` only selects
* the service from the namespace of the sidecar. The default, if no `namespace/`
* is specified, is `*/`, that is, select services from any namespace.
* Any associated `DestinationRule` in the selected namespace will also be used.
* A `VirtualService` must be bound to the gateway and must have one or
* more hosts that match the hosts specified in a server. The match
* could be an exact match or a suffix match with the server's hosts. For
* example, if the server's hosts specifies `*.example.com`, a
* `VirtualService` with hosts `dev.example.com` or `prod.example.com` will
* match. However, a `VirtualService` with host `example.com` or
* `newexample.com` will not match.
* NOTE: Only virtual services exported to the gateway's namespace
* (e.g., `exportTo` value of `*`) can be referenced.
* Private configurations (e.g., `exportTo` set to `.`) will not be
* available. Refer to the `exportTo` setting in `VirtualService`,
* `DestinationRule`, and `ServiceEntry` configurations for details.
*
*
* repeated string hosts = 2 [(.google.api.field_behavior) = REQUIRED];
* @return A list containing the hosts.
*/
public com.google.protobuf.ProtocolStringList
getHostsList() {
return hosts_.getUnmodifiableView();
}
/**
*
* One or more hosts exposed by this gateway.
* While typically applicable to
* HTTP services, it can also be used for TCP services using TLS with SNI.
* A host is specified as a `dnsName` with an optional `namespace/` prefix.
* The `dnsName` should be specified using FQDN format, optionally including
* a wildcard character in the left-most component (e.g., `prod/*.example.com`).
* Set the `dnsName` to `*` to select all `VirtualService` hosts from the
* specified namespace (e.g.,`prod/*`).
* The `namespace` can be set to `*` or `.`, representing any or the current
* namespace, respectively. For example, `*/foo.example.com` selects the
* service from any available namespace while `./foo.example.com` only selects
* the service from the namespace of the sidecar. The default, if no `namespace/`
* is specified, is `*/`, that is, select services from any namespace.
* Any associated `DestinationRule` in the selected namespace will also be used.
* A `VirtualService` must be bound to the gateway and must have one or
* more hosts that match the hosts specified in a server. The match
* could be an exact match or a suffix match with the server's hosts. For
* example, if the server's hosts specifies `*.example.com`, a
* `VirtualService` with hosts `dev.example.com` or `prod.example.com` will
* match. However, a `VirtualService` with host `example.com` or
* `newexample.com` will not match.
* NOTE: Only virtual services exported to the gateway's namespace
* (e.g., `exportTo` value of `*`) can be referenced.
* Private configurations (e.g., `exportTo` set to `.`) will not be
* available. Refer to the `exportTo` setting in `VirtualService`,
* `DestinationRule`, and `ServiceEntry` configurations for details.
*
*
* repeated string hosts = 2 [(.google.api.field_behavior) = REQUIRED];
* @return The count of hosts.
*/
public int getHostsCount() {
return hosts_.size();
}
/**
*
* One or more hosts exposed by this gateway.
* While typically applicable to
* HTTP services, it can also be used for TCP services using TLS with SNI.
* A host is specified as a `dnsName` with an optional `namespace/` prefix.
* The `dnsName` should be specified using FQDN format, optionally including
* a wildcard character in the left-most component (e.g., `prod/*.example.com`).
* Set the `dnsName` to `*` to select all `VirtualService` hosts from the
* specified namespace (e.g.,`prod/*`).
* The `namespace` can be set to `*` or `.`, representing any or the current
* namespace, respectively. For example, `*/foo.example.com` selects the
* service from any available namespace while `./foo.example.com` only selects
* the service from the namespace of the sidecar. The default, if no `namespace/`
* is specified, is `*/`, that is, select services from any namespace.
* Any associated `DestinationRule` in the selected namespace will also be used.
* A `VirtualService` must be bound to the gateway and must have one or
* more hosts that match the hosts specified in a server. The match
* could be an exact match or a suffix match with the server's hosts. For
* example, if the server's hosts specifies `*.example.com`, a
* `VirtualService` with hosts `dev.example.com` or `prod.example.com` will
* match. However, a `VirtualService` with host `example.com` or
* `newexample.com` will not match.
* NOTE: Only virtual services exported to the gateway's namespace
* (e.g., `exportTo` value of `*`) can be referenced.
* Private configurations (e.g., `exportTo` set to `.`) will not be
* available. Refer to the `exportTo` setting in `VirtualService`,
* `DestinationRule`, and `ServiceEntry` configurations for details.
*
*
* repeated string hosts = 2 [(.google.api.field_behavior) = REQUIRED];
* @param index The index of the element to return.
* @return The hosts at the given index.
*/
public java.lang.String getHosts(int index) {
return hosts_.get(index);
}
/**
*
* One or more hosts exposed by this gateway.
* While typically applicable to
* HTTP services, it can also be used for TCP services using TLS with SNI.
* A host is specified as a `dnsName` with an optional `namespace/` prefix.
* The `dnsName` should be specified using FQDN format, optionally including
* a wildcard character in the left-most component (e.g., `prod/*.example.com`).
* Set the `dnsName` to `*` to select all `VirtualService` hosts from the
* specified namespace (e.g.,`prod/*`).
* The `namespace` can be set to `*` or `.`, representing any or the current
* namespace, respectively. For example, `*/foo.example.com` selects the
* service from any available namespace while `./foo.example.com` only selects
* the service from the namespace of the sidecar. The default, if no `namespace/`
* is specified, is `*/`, that is, select services from any namespace.
* Any associated `DestinationRule` in the selected namespace will also be used.
* A `VirtualService` must be bound to the gateway and must have one or
* more hosts that match the hosts specified in a server. The match
* could be an exact match or a suffix match with the server's hosts. For
* example, if the server's hosts specifies `*.example.com`, a
* `VirtualService` with hosts `dev.example.com` or `prod.example.com` will
* match. However, a `VirtualService` with host `example.com` or
* `newexample.com` will not match.
* NOTE: Only virtual services exported to the gateway's namespace
* (e.g., `exportTo` value of `*`) can be referenced.
* Private configurations (e.g., `exportTo` set to `.`) will not be
* available. Refer to the `exportTo` setting in `VirtualService`,
* `DestinationRule`, and `ServiceEntry` configurations for details.
*
*
* repeated string hosts = 2 [(.google.api.field_behavior) = REQUIRED];
* @param index The index of the value to return.
* @return The bytes of the hosts at the given index.
*/
public com.google.protobuf.ByteString
getHostsBytes(int index) {
return hosts_.getByteString(index);
}
/**
*
* One or more hosts exposed by this gateway.
* While typically applicable to
* HTTP services, it can also be used for TCP services using TLS with SNI.
* A host is specified as a `dnsName` with an optional `namespace/` prefix.
* The `dnsName` should be specified using FQDN format, optionally including
* a wildcard character in the left-most component (e.g., `prod/*.example.com`).
* Set the `dnsName` to `*` to select all `VirtualService` hosts from the
* specified namespace (e.g.,`prod/*`).
* The `namespace` can be set to `*` or `.`, representing any or the current
* namespace, respectively. For example, `*/foo.example.com` selects the
* service from any available namespace while `./foo.example.com` only selects
* the service from the namespace of the sidecar. The default, if no `namespace/`
* is specified, is `*/`, that is, select services from any namespace.
* Any associated `DestinationRule` in the selected namespace will also be used.
* A `VirtualService` must be bound to the gateway and must have one or
* more hosts that match the hosts specified in a server. The match
* could be an exact match or a suffix match with the server's hosts. For
* example, if the server's hosts specifies `*.example.com`, a
* `VirtualService` with hosts `dev.example.com` or `prod.example.com` will
* match. However, a `VirtualService` with host `example.com` or
* `newexample.com` will not match.
* NOTE: Only virtual services exported to the gateway's namespace
* (e.g., `exportTo` value of `*`) can be referenced.
* Private configurations (e.g., `exportTo` set to `.`) will not be
* available. Refer to the `exportTo` setting in `VirtualService`,
* `DestinationRule`, and `ServiceEntry` configurations for details.
*
*
* repeated string hosts = 2 [(.google.api.field_behavior) = REQUIRED];
* @param index The index to set the value at.
* @param value The hosts to set.
* @return This builder for chaining.
*/
public Builder setHosts(
int index, java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
ensureHostsIsMutable();
hosts_.set(index, value);
onChanged();
return this;
}
/**
*
* One or more hosts exposed by this gateway.
* While typically applicable to
* HTTP services, it can also be used for TCP services using TLS with SNI.
* A host is specified as a `dnsName` with an optional `namespace/` prefix.
* The `dnsName` should be specified using FQDN format, optionally including
* a wildcard character in the left-most component (e.g., `prod/*.example.com`).
* Set the `dnsName` to `*` to select all `VirtualService` hosts from the
* specified namespace (e.g.,`prod/*`).
* The `namespace` can be set to `*` or `.`, representing any or the current
* namespace, respectively. For example, `*/foo.example.com` selects the
* service from any available namespace while `./foo.example.com` only selects
* the service from the namespace of the sidecar. The default, if no `namespace/`
* is specified, is `*/`, that is, select services from any namespace.
* Any associated `DestinationRule` in the selected namespace will also be used.
* A `VirtualService` must be bound to the gateway and must have one or
* more hosts that match the hosts specified in a server. The match
* could be an exact match or a suffix match with the server's hosts. For
* example, if the server's hosts specifies `*.example.com`, a
* `VirtualService` with hosts `dev.example.com` or `prod.example.com` will
* match. However, a `VirtualService` with host `example.com` or
* `newexample.com` will not match.
* NOTE: Only virtual services exported to the gateway's namespace
* (e.g., `exportTo` value of `*`) can be referenced.
* Private configurations (e.g., `exportTo` set to `.`) will not be
* available. Refer to the `exportTo` setting in `VirtualService`,
* `DestinationRule`, and `ServiceEntry` configurations for details.
*
*
* repeated string hosts = 2 [(.google.api.field_behavior) = REQUIRED];
* @param value The hosts to add.
* @return This builder for chaining.
*/
public Builder addHosts(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
ensureHostsIsMutable();
hosts_.add(value);
onChanged();
return this;
}
/**
*
* One or more hosts exposed by this gateway.
* While typically applicable to
* HTTP services, it can also be used for TCP services using TLS with SNI.
* A host is specified as a `dnsName` with an optional `namespace/` prefix.
* The `dnsName` should be specified using FQDN format, optionally including
* a wildcard character in the left-most component (e.g., `prod/*.example.com`).
* Set the `dnsName` to `*` to select all `VirtualService` hosts from the
* specified namespace (e.g.,`prod/*`).
* The `namespace` can be set to `*` or `.`, representing any or the current
* namespace, respectively. For example, `*/foo.example.com` selects the
* service from any available namespace while `./foo.example.com` only selects
* the service from the namespace of the sidecar. The default, if no `namespace/`
* is specified, is `*/`, that is, select services from any namespace.
* Any associated `DestinationRule` in the selected namespace will also be used.
* A `VirtualService` must be bound to the gateway and must have one or
* more hosts that match the hosts specified in a server. The match
* could be an exact match or a suffix match with the server's hosts. For
* example, if the server's hosts specifies `*.example.com`, a
* `VirtualService` with hosts `dev.example.com` or `prod.example.com` will
* match. However, a `VirtualService` with host `example.com` or
* `newexample.com` will not match.
* NOTE: Only virtual services exported to the gateway's namespace
* (e.g., `exportTo` value of `*`) can be referenced.
* Private configurations (e.g., `exportTo` set to `.`) will not be
* available. Refer to the `exportTo` setting in `VirtualService`,
* `DestinationRule`, and `ServiceEntry` configurations for details.
*
*
* repeated string hosts = 2 [(.google.api.field_behavior) = REQUIRED];
* @param values The hosts to add.
* @return This builder for chaining.
*/
public Builder addAllHosts(
java.lang.Iterable values) {
ensureHostsIsMutable();
com.google.protobuf.AbstractMessageLite.Builder.addAll(
values, hosts_);
onChanged();
return this;
}
/**
*
* One or more hosts exposed by this gateway.
* While typically applicable to
* HTTP services, it can also be used for TCP services using TLS with SNI.
* A host is specified as a `dnsName` with an optional `namespace/` prefix.
* The `dnsName` should be specified using FQDN format, optionally including
* a wildcard character in the left-most component (e.g., `prod/*.example.com`).
* Set the `dnsName` to `*` to select all `VirtualService` hosts from the
* specified namespace (e.g.,`prod/*`).
* The `namespace` can be set to `*` or `.`, representing any or the current
* namespace, respectively. For example, `*/foo.example.com` selects the
* service from any available namespace while `./foo.example.com` only selects
* the service from the namespace of the sidecar. The default, if no `namespace/`
* is specified, is `*/`, that is, select services from any namespace.
* Any associated `DestinationRule` in the selected namespace will also be used.
* A `VirtualService` must be bound to the gateway and must have one or
* more hosts that match the hosts specified in a server. The match
* could be an exact match or a suffix match with the server's hosts. For
* example, if the server's hosts specifies `*.example.com`, a
* `VirtualService` with hosts `dev.example.com` or `prod.example.com` will
* match. However, a `VirtualService` with host `example.com` or
* `newexample.com` will not match.
* NOTE: Only virtual services exported to the gateway's namespace
* (e.g., `exportTo` value of `*`) can be referenced.
* Private configurations (e.g., `exportTo` set to `.`) will not be
* available. Refer to the `exportTo` setting in `VirtualService`,
* `DestinationRule`, and `ServiceEntry` configurations for details.
*
* One or more hosts exposed by this gateway.
* While typically applicable to
* HTTP services, it can also be used for TCP services using TLS with SNI.
* A host is specified as a `dnsName` with an optional `namespace/` prefix.
* The `dnsName` should be specified using FQDN format, optionally including
* a wildcard character in the left-most component (e.g., `prod/*.example.com`).
* Set the `dnsName` to `*` to select all `VirtualService` hosts from the
* specified namespace (e.g.,`prod/*`).
* The `namespace` can be set to `*` or `.`, representing any or the current
* namespace, respectively. For example, `*/foo.example.com` selects the
* service from any available namespace while `./foo.example.com` only selects
* the service from the namespace of the sidecar. The default, if no `namespace/`
* is specified, is `*/`, that is, select services from any namespace.
* Any associated `DestinationRule` in the selected namespace will also be used.
* A `VirtualService` must be bound to the gateway and must have one or
* more hosts that match the hosts specified in a server. The match
* could be an exact match or a suffix match with the server's hosts. For
* example, if the server's hosts specifies `*.example.com`, a
* `VirtualService` with hosts `dev.example.com` or `prod.example.com` will
* match. However, a `VirtualService` with host `example.com` or
* `newexample.com` will not match.
* NOTE: Only virtual services exported to the gateway's namespace
* (e.g., `exportTo` value of `*`) can be referenced.
* Private configurations (e.g., `exportTo` set to `.`) will not be
* available. Refer to the `exportTo` setting in `VirtualService`,
* `DestinationRule`, and `ServiceEntry` configurations for details.
*
*
* repeated string hosts = 2 [(.google.api.field_behavior) = REQUIRED];
* @param value The bytes of the hosts to add.
* @return This builder for chaining.
*/
public Builder addHostsBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
ensureHostsIsMutable();
hosts_.add(value);
onChanged();
return this;
}
private istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings tls_;
private com.google.protobuf.SingleFieldBuilderV3<
istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings, istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.Builder, istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettingsOrBuilder> tlsBuilder_;
/**
*
* Set of TLS related options that govern the server's behavior. Use
* these options to control if all http requests should be redirected to
* https, and the TLS modes to use.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings tls = 3;
* @return Whether the tls field is set.
*/
public boolean hasTls() {
return tlsBuilder_ != null || tls_ != null;
}
/**
*
* Set of TLS related options that govern the server's behavior. Use
* these options to control if all http requests should be redirected to
* https, and the TLS modes to use.
*
* Set of TLS related options that govern the server's behavior. Use
* these options to control if all http requests should be redirected to
* https, and the TLS modes to use.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings tls = 3;
*/
public Builder setTls(istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings value) {
if (tlsBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
tls_ = value;
onChanged();
} else {
tlsBuilder_.setMessage(value);
}
return this;
}
/**
*
* Set of TLS related options that govern the server's behavior. Use
* these options to control if all http requests should be redirected to
* https, and the TLS modes to use.
*
* Set of TLS related options that govern the server's behavior. Use
* these options to control if all http requests should be redirected to
* https, and the TLS modes to use.
*
* Set of TLS related options that govern the server's behavior. Use
* these options to control if all http requests should be redirected to
* https, and the TLS modes to use.
*
* Set of TLS related options that govern the server's behavior. Use
* these options to control if all http requests should be redirected to
* https, and the TLS modes to use.
*
* Set of TLS related options that govern the server's behavior. Use
* these options to control if all http requests should be redirected to
* https, and the TLS modes to use.
*
* Set of TLS related options that govern the server's behavior. Use
* these options to control if all http requests should be redirected to
* https, and the TLS modes to use.
*
* The loopback IP endpoint or Unix domain socket to which traffic should
* be forwarded to by default. Format should be `127.0.0.1:PORT` or
* `unix:///path/to/socket` or `unix://@foobar` (Linux abstract namespace).
* NOT IMPLEMENTED.
* $hide_from_docs
*
* The loopback IP endpoint or Unix domain socket to which traffic should
* be forwarded to by default. Format should be `127.0.0.1:PORT` or
* `unix:///path/to/socket` or `unix://@foobar` (Linux abstract namespace).
* NOT IMPLEMENTED.
* $hide_from_docs
*
*
* string default_endpoint = 5;
* @return The bytes for defaultEndpoint.
*/
public com.google.protobuf.ByteString
getDefaultEndpointBytes() {
java.lang.Object ref = defaultEndpoint_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
defaultEndpoint_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
*
* The loopback IP endpoint or Unix domain socket to which traffic should
* be forwarded to by default. Format should be `127.0.0.1:PORT` or
* `unix:///path/to/socket` or `unix://@foobar` (Linux abstract namespace).
* NOT IMPLEMENTED.
* $hide_from_docs
*
*
* string default_endpoint = 5;
* @param value The defaultEndpoint to set.
* @return This builder for chaining.
*/
public Builder setDefaultEndpoint(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
defaultEndpoint_ = value;
onChanged();
return this;
}
/**
*
* The loopback IP endpoint or Unix domain socket to which traffic should
* be forwarded to by default. Format should be `127.0.0.1:PORT` or
* `unix:///path/to/socket` or `unix://@foobar` (Linux abstract namespace).
* NOT IMPLEMENTED.
* $hide_from_docs
*
*
* string default_endpoint = 5;
* @return This builder for chaining.
*/
public Builder clearDefaultEndpoint() {
defaultEndpoint_ = getDefaultInstance().getDefaultEndpoint();
onChanged();
return this;
}
/**
*
* The loopback IP endpoint or Unix domain socket to which traffic should
* be forwarded to by default. Format should be `127.0.0.1:PORT` or
* `unix:///path/to/socket` or `unix://@foobar` (Linux abstract namespace).
* NOT IMPLEMENTED.
* $hide_from_docs
*
*
* string default_endpoint = 5;
* @param value The bytes for defaultEndpoint to set.
* @return This builder for chaining.
*/
public Builder setDefaultEndpointBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
defaultEndpoint_ = value;
onChanged();
return this;
}
private java.lang.Object name_ = "";
/**
*
* An optional name of the server, when set must be unique across all servers.
* This will be used for variety of purposes like prefixing stats generated with
* this name etc.
*
*
* string name = 6;
* @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;
}
}
/**
*
* An optional name of the server, when set must be unique across all servers.
* This will be used for variety of purposes like prefixing stats generated with
* this name etc.
*
*
* string name = 6;
* @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;
}
}
/**
*
* An optional name of the server, when set must be unique across all servers.
* This will be used for variety of purposes like prefixing stats generated with
* this name etc.
*
*
* string name = 6;
* @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;
}
/**
*
* An optional name of the server, when set must be unique across all servers.
* This will be used for variety of purposes like prefixing stats generated with
* this name etc.
*
*
* string name = 6;
* @return This builder for chaining.
*/
public Builder clearName() {
name_ = getDefaultInstance().getName();
onChanged();
return this;
}
/**
*
* An optional name of the server, when set must be unique across all servers.
* This will be used for variety of purposes like prefixing stats generated with
* this name etc.
*
*
* string name = 6;
* @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:istio.networking.v1alpha3.Server)
}
// @@protoc_insertion_point(class_scope:istio.networking.v1alpha3.Server)
private static final istio.networking.v1alpha3.GatewayOuterClass.Server DEFAULT_INSTANCE;
static {
DEFAULT_INSTANCE = new istio.networking.v1alpha3.GatewayOuterClass.Server();
}
public static istio.networking.v1alpha3.GatewayOuterClass.Server getDefaultInstance() {
return DEFAULT_INSTANCE;
}
private static final com.google.protobuf.Parser
PARSER = new com.google.protobuf.AbstractParser() {
@java.lang.Override
public Server parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return new Server(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 istio.networking.v1alpha3.GatewayOuterClass.Server getDefaultInstanceForType() {
return DEFAULT_INSTANCE;
}
}
public interface PortOrBuilder extends
// @@protoc_insertion_point(interface_extends:istio.networking.v1alpha3.Port)
com.google.protobuf.MessageOrBuilder {
/**
*
* A valid non-negative integer port number.
*
*
* uint32 number = 1 [(.google.api.field_behavior) = REQUIRED];
* @return The number.
*/
int getNumber();
/**
*
* The protocol exposed on the port.
* MUST BE one of HTTP|HTTPS|GRPC|HTTP2|MONGO|TCP|TLS.
* TLS implies the connection will be routed based on the SNI header to
* the destination without terminating the TLS connection.
*
* The protocol exposed on the port.
* MUST BE one of HTTP|HTTPS|GRPC|HTTP2|MONGO|TCP|TLS.
* TLS implies the connection will be routed based on the SNI header to
* the destination without terminating the TLS connection.
*
*
* string protocol = 2 [(.google.api.field_behavior) = REQUIRED];
* @return The bytes for protocol.
*/
com.google.protobuf.ByteString
getProtocolBytes();
/**
*
* Label assigned to the port.
*
*
* string name = 3 [(.google.api.field_behavior) = REQUIRED];
* @return The name.
*/
java.lang.String getName();
/**
*
* Label assigned to the port.
*
*
* string name = 3 [(.google.api.field_behavior) = REQUIRED];
* @return The bytes for name.
*/
com.google.protobuf.ByteString
getNameBytes();
/**
*
* The port number on the endpoint where the traffic will be
* received. Applicable only when used with ServiceEntries.
*
*
* uint32 target_port = 4;
* @return The targetPort.
*/
int getTargetPort();
}
/**
*
* Port describes the properties of a specific port of a service.
*
*
* Protobuf type {@code istio.networking.v1alpha3.Port}
*/
public static final class Port extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:istio.networking.v1alpha3.Port)
PortOrBuilder {
private static final long serialVersionUID = 0L;
// Use Port.newBuilder() to construct.
private Port(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
super(builder);
}
private Port() {
protocol_ = "";
name_ = "";
}
@java.lang.Override
@SuppressWarnings({"unused"})
protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new Port();
}
@java.lang.Override
public final com.google.protobuf.UnknownFieldSet
getUnknownFields() {
return this.unknownFields;
}
private Port(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
this();
if (extensionRegistry == null) {
throw new java.lang.NullPointerException();
}
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 8: {
number_ = input.readUInt32();
break;
}
case 18: {
java.lang.String s = input.readStringRequireUtf8();
protocol_ = s;
break;
}
case 26: {
java.lang.String s = input.readStringRequireUtf8();
name_ = s;
break;
}
case 32: {
targetPort_ = input.readUInt32();
break;
}
default: {
if (!parseUnknownField(
input, unknownFields, extensionRegistry, tag)) {
done = true;
}
break;
}
}
}
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(this);
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(
e).setUnfinishedMessage(this);
} finally {
this.unknownFields = unknownFields.build();
makeExtensionsImmutable();
}
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return istio.networking.v1alpha3.GatewayOuterClass.internal_static_istio_networking_v1alpha3_Port_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return istio.networking.v1alpha3.GatewayOuterClass.internal_static_istio_networking_v1alpha3_Port_fieldAccessorTable
.ensureFieldAccessorsInitialized(
istio.networking.v1alpha3.GatewayOuterClass.Port.class, istio.networking.v1alpha3.GatewayOuterClass.Port.Builder.class);
}
public static final int NUMBER_FIELD_NUMBER = 1;
private int number_;
/**
*
* A valid non-negative integer port number.
*
*
* uint32 number = 1 [(.google.api.field_behavior) = REQUIRED];
* @return The number.
*/
@java.lang.Override
public int getNumber() {
return number_;
}
public static final int PROTOCOL_FIELD_NUMBER = 2;
private volatile java.lang.Object protocol_;
/**
*
* The protocol exposed on the port.
* MUST BE one of HTTP|HTTPS|GRPC|HTTP2|MONGO|TCP|TLS.
* TLS implies the connection will be routed based on the SNI header to
* the destination without terminating the TLS connection.
*
* The protocol exposed on the port.
* MUST BE one of HTTP|HTTPS|GRPC|HTTP2|MONGO|TCP|TLS.
* TLS implies the connection will be routed based on the SNI header to
* the destination without terminating the TLS connection.
*
*
* string protocol = 2 [(.google.api.field_behavior) = REQUIRED];
* @return The bytes for protocol.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getProtocolBytes() {
java.lang.Object ref = protocol_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
protocol_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int NAME_FIELD_NUMBER = 3;
private volatile java.lang.Object name_;
/**
*
* Port describes the properties of a specific port of a service.
*
*
* Protobuf type {@code istio.networking.v1alpha3.Port}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder implements
// @@protoc_insertion_point(builder_implements:istio.networking.v1alpha3.Port)
istio.networking.v1alpha3.GatewayOuterClass.PortOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return istio.networking.v1alpha3.GatewayOuterClass.internal_static_istio_networking_v1alpha3_Port_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return istio.networking.v1alpha3.GatewayOuterClass.internal_static_istio_networking_v1alpha3_Port_fieldAccessorTable
.ensureFieldAccessorsInitialized(
istio.networking.v1alpha3.GatewayOuterClass.Port.class, istio.networking.v1alpha3.GatewayOuterClass.Port.Builder.class);
}
// Construct using istio.networking.v1alpha3.GatewayOuterClass.Port.newBuilder()
private Builder() {
maybeForceBuilderInitialization();
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
maybeForceBuilderInitialization();
}
private void maybeForceBuilderInitialization() {
if (com.google.protobuf.GeneratedMessageV3
.alwaysUseFieldBuilders) {
}
}
@java.lang.Override
public Builder clear() {
super.clear();
number_ = 0;
protocol_ = "";
name_ = "";
targetPort_ = 0;
return this;
}
@java.lang.Override
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return istio.networking.v1alpha3.GatewayOuterClass.internal_static_istio_networking_v1alpha3_Port_descriptor;
}
@java.lang.Override
public istio.networking.v1alpha3.GatewayOuterClass.Port getDefaultInstanceForType() {
return istio.networking.v1alpha3.GatewayOuterClass.Port.getDefaultInstance();
}
@java.lang.Override
public istio.networking.v1alpha3.GatewayOuterClass.Port build() {
istio.networking.v1alpha3.GatewayOuterClass.Port result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
@java.lang.Override
public istio.networking.v1alpha3.GatewayOuterClass.Port buildPartial() {
istio.networking.v1alpha3.GatewayOuterClass.Port result = new istio.networking.v1alpha3.GatewayOuterClass.Port(this);
result.number_ = number_;
result.protocol_ = protocol_;
result.name_ = name_;
result.targetPort_ = targetPort_;
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 istio.networking.v1alpha3.GatewayOuterClass.Port) {
return mergeFrom((istio.networking.v1alpha3.GatewayOuterClass.Port)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(istio.networking.v1alpha3.GatewayOuterClass.Port other) {
if (other == istio.networking.v1alpha3.GatewayOuterClass.Port.getDefaultInstance()) return this;
if (other.getNumber() != 0) {
setNumber(other.getNumber());
}
if (!other.getProtocol().isEmpty()) {
protocol_ = other.protocol_;
onChanged();
}
if (!other.getName().isEmpty()) {
name_ = other.name_;
onChanged();
}
if (other.getTargetPort() != 0) {
setTargetPort(other.getTargetPort());
}
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 {
istio.networking.v1alpha3.GatewayOuterClass.Port parsedMessage = null;
try {
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
parsedMessage = (istio.networking.v1alpha3.GatewayOuterClass.Port) e.getUnfinishedMessage();
throw e.unwrapIOException();
} finally {
if (parsedMessage != null) {
mergeFrom(parsedMessage);
}
}
return this;
}
private int number_ ;
/**
*
* A valid non-negative integer port number.
*
*
* uint32 number = 1 [(.google.api.field_behavior) = REQUIRED];
* @return The number.
*/
@java.lang.Override
public int getNumber() {
return number_;
}
/**
*
* A valid non-negative integer port number.
*
*
* uint32 number = 1 [(.google.api.field_behavior) = REQUIRED];
* @param value The number to set.
* @return This builder for chaining.
*/
public Builder setNumber(int value) {
number_ = value;
onChanged();
return this;
}
/**
*
* A valid non-negative integer port number.
*
*
* uint32 number = 1 [(.google.api.field_behavior) = REQUIRED];
* @return This builder for chaining.
*/
public Builder clearNumber() {
number_ = 0;
onChanged();
return this;
}
private java.lang.Object protocol_ = "";
/**
*
* The protocol exposed on the port.
* MUST BE one of HTTP|HTTPS|GRPC|HTTP2|MONGO|TCP|TLS.
* TLS implies the connection will be routed based on the SNI header to
* the destination without terminating the TLS connection.
*
* The protocol exposed on the port.
* MUST BE one of HTTP|HTTPS|GRPC|HTTP2|MONGO|TCP|TLS.
* TLS implies the connection will be routed based on the SNI header to
* the destination without terminating the TLS connection.
*
*
* string protocol = 2 [(.google.api.field_behavior) = REQUIRED];
* @return The bytes for protocol.
*/
public com.google.protobuf.ByteString
getProtocolBytes() {
java.lang.Object ref = protocol_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
protocol_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
*
* The protocol exposed on the port.
* MUST BE one of HTTP|HTTPS|GRPC|HTTP2|MONGO|TCP|TLS.
* TLS implies the connection will be routed based on the SNI header to
* the destination without terminating the TLS connection.
*
*
* string protocol = 2 [(.google.api.field_behavior) = REQUIRED];
* @param value The protocol to set.
* @return This builder for chaining.
*/
public Builder setProtocol(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
protocol_ = value;
onChanged();
return this;
}
/**
*
* The protocol exposed on the port.
* MUST BE one of HTTP|HTTPS|GRPC|HTTP2|MONGO|TCP|TLS.
* TLS implies the connection will be routed based on the SNI header to
* the destination without terminating the TLS connection.
*
*
* string protocol = 2 [(.google.api.field_behavior) = REQUIRED];
* @return This builder for chaining.
*/
public Builder clearProtocol() {
protocol_ = getDefaultInstance().getProtocol();
onChanged();
return this;
}
/**
*
* The protocol exposed on the port.
* MUST BE one of HTTP|HTTPS|GRPC|HTTP2|MONGO|TCP|TLS.
* TLS implies the connection will be routed based on the SNI header to
* the destination without terminating the TLS connection.
*
*
* string protocol = 2 [(.google.api.field_behavior) = REQUIRED];
* @param value The bytes for protocol to set.
* @return This builder for chaining.
*/
public Builder setProtocolBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
protocol_ = value;
onChanged();
return this;
}
private java.lang.Object name_ = "";
/**
*
*
* string name = 3 [(.google.api.field_behavior) = REQUIRED];
* @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;
}
}
/**
*
* Label assigned to the port.
*
*
* string name = 3 [(.google.api.field_behavior) = REQUIRED];
* @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;
}
/**
*
* Label assigned to the port.
*
*
* string name = 3 [(.google.api.field_behavior) = REQUIRED];
* @return This builder for chaining.
*/
public Builder clearName() {
name_ = getDefaultInstance().getName();
onChanged();
return this;
}
/**
*
* Label assigned to the port.
*
*
* string name = 3 [(.google.api.field_behavior) = REQUIRED];
* @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;
}
private int targetPort_ ;
/**
*
* The port number on the endpoint where the traffic will be
* received. Applicable only when used with ServiceEntries.
*
*
* uint32 target_port = 4;
* @return The targetPort.
*/
@java.lang.Override
public int getTargetPort() {
return targetPort_;
}
/**
*
* The port number on the endpoint where the traffic will be
* received. Applicable only when used with ServiceEntries.
*
*
* uint32 target_port = 4;
* @param value The targetPort to set.
* @return This builder for chaining.
*/
public Builder setTargetPort(int value) {
targetPort_ = value;
onChanged();
return this;
}
/**
*
* The port number on the endpoint where the traffic will be
* received. Applicable only when used with ServiceEntries.
*
*
* uint32 target_port = 4;
* @return This builder for chaining.
*/
public Builder clearTargetPort() {
targetPort_ = 0;
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:istio.networking.v1alpha3.Port)
}
// @@protoc_insertion_point(class_scope:istio.networking.v1alpha3.Port)
private static final istio.networking.v1alpha3.GatewayOuterClass.Port DEFAULT_INSTANCE;
static {
DEFAULT_INSTANCE = new istio.networking.v1alpha3.GatewayOuterClass.Port();
}
public static istio.networking.v1alpha3.GatewayOuterClass.Port getDefaultInstance() {
return DEFAULT_INSTANCE;
}
private static final com.google.protobuf.Parser
PARSER = new com.google.protobuf.AbstractParser() {
@java.lang.Override
public Port parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return new Port(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 istio.networking.v1alpha3.GatewayOuterClass.Port getDefaultInstanceForType() {
return DEFAULT_INSTANCE;
}
}
public interface ServerTLSSettingsOrBuilder extends
// @@protoc_insertion_point(interface_extends:istio.networking.v1alpha3.ServerTLSSettings)
com.google.protobuf.MessageOrBuilder {
/**
*
* If set to true, the load balancer will send a 301 redirect for
* all http connections, asking the clients to use HTTPS.
*
* REQUIRED if mode is `SIMPLE` or `MUTUAL`. The path to the file
* holding the server's private key.
*
*
* string private_key = 4;
* @return The bytes for privateKey.
*/
com.google.protobuf.ByteString
getPrivateKeyBytes();
/**
*
* REQUIRED if mode is `MUTUAL`. The path to a file containing
* certificate authority certificates to use in verifying a presented
* client side certificate.
*
* REQUIRED if mode is `MUTUAL`. The path to a file containing
* certificate authority certificates to use in verifying a presented
* client side certificate.
*
*
* string ca_certificates = 5;
* @return The bytes for caCertificates.
*/
com.google.protobuf.ByteString
getCaCertificatesBytes();
/**
*
* For gateways running on Kubernetes, the name of the secret that
* holds the TLS certs including the CA certificates. Applicable
* only on Kubernetes. The secret (of type `generic`) should
* contain the following keys and values: `key:
* <privateKey>` and `cert: <serverCert>`. For mutual TLS,
* `cacert: <CACertificate>` can be provided in the same secret or
* a separate secret named `<secret>-cacert`.
* Secret of type tls for server certificates along with
* ca.crt key for CA certificates is also supported.
* Only one of server certificates and CA certificate
* or credentialName can be specified.
*
* For gateways running on Kubernetes, the name of the secret that
* holds the TLS certs including the CA certificates. Applicable
* only on Kubernetes. The secret (of type `generic`) should
* contain the following keys and values: `key:
* <privateKey>` and `cert: <serverCert>`. For mutual TLS,
* `cacert: <CACertificate>` can be provided in the same secret or
* a separate secret named `<secret>-cacert`.
* Secret of type tls for server certificates along with
* ca.crt key for CA certificates is also supported.
* Only one of server certificates and CA certificate
* or credentialName can be specified.
*
*
* string credential_name = 10;
* @return The bytes for credentialName.
*/
com.google.protobuf.ByteString
getCredentialNameBytes();
/**
*
* A list of alternate names to verify the subject identity in the
* certificate presented by the client.
*
*
* repeated string subject_alt_names = 6;
* @return A list containing the subjectAltNames.
*/
java.util.List
getSubjectAltNamesList();
/**
*
* A list of alternate names to verify the subject identity in the
* certificate presented by the client.
*
*
* repeated string subject_alt_names = 6;
* @return The count of subjectAltNames.
*/
int getSubjectAltNamesCount();
/**
*
* A list of alternate names to verify the subject identity in the
* certificate presented by the client.
*
*
* repeated string subject_alt_names = 6;
* @param index The index of the element to return.
* @return The subjectAltNames at the given index.
*/
java.lang.String getSubjectAltNames(int index);
/**
*
* A list of alternate names to verify the subject identity in the
* certificate presented by the client.
*
*
* repeated string subject_alt_names = 6;
* @param index The index of the value to return.
* @return The bytes of the subjectAltNames at the given index.
*/
com.google.protobuf.ByteString
getSubjectAltNamesBytes(int index);
/**
*
* An optional list of base64-encoded SHA-256 hashes of the SKPIs of
* authorized client certificates.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_spki = 11;
* @return A list containing the verifyCertificateSpki.
*/
java.util.List
getVerifyCertificateSpkiList();
/**
*
* An optional list of base64-encoded SHA-256 hashes of the SKPIs of
* authorized client certificates.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_spki = 11;
* @return The count of verifyCertificateSpki.
*/
int getVerifyCertificateSpkiCount();
/**
*
* An optional list of base64-encoded SHA-256 hashes of the SKPIs of
* authorized client certificates.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_spki = 11;
* @param index The index of the element to return.
* @return The verifyCertificateSpki at the given index.
*/
java.lang.String getVerifyCertificateSpki(int index);
/**
*
* An optional list of base64-encoded SHA-256 hashes of the SKPIs of
* authorized client certificates.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_spki = 11;
* @param index The index of the value to return.
* @return The bytes of the verifyCertificateSpki at the given index.
*/
com.google.protobuf.ByteString
getVerifyCertificateSpkiBytes(int index);
/**
*
* An optional list of hex-encoded SHA-256 hashes of the
* authorized client certificates. Both simple and colon separated
* formats are acceptable.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_hash = 12;
* @return A list containing the verifyCertificateHash.
*/
java.util.List
getVerifyCertificateHashList();
/**
*
* An optional list of hex-encoded SHA-256 hashes of the
* authorized client certificates. Both simple and colon separated
* formats are acceptable.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_hash = 12;
* @return The count of verifyCertificateHash.
*/
int getVerifyCertificateHashCount();
/**
*
* An optional list of hex-encoded SHA-256 hashes of the
* authorized client certificates. Both simple and colon separated
* formats are acceptable.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_hash = 12;
* @param index The index of the element to return.
* @return The verifyCertificateHash at the given index.
*/
java.lang.String getVerifyCertificateHash(int index);
/**
*
* An optional list of hex-encoded SHA-256 hashes of the
* authorized client certificates. Both simple and colon separated
* formats are acceptable.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_hash = 12;
* @param index The index of the value to return.
* @return The bytes of the verifyCertificateHash at the given index.
*/
com.google.protobuf.ByteString
getVerifyCertificateHashBytes(int index);
/**
*
* Optional: Minimum TLS protocol version.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings.TLSProtocol min_protocol_version = 7;
* @return The enum numeric value on the wire for minProtocolVersion.
*/
int getMinProtocolVersionValue();
/**
*
*
* .istio.networking.v1alpha3.ServerTLSSettings.TLSProtocol max_protocol_version = 8;
* @return The enum numeric value on the wire for maxProtocolVersion.
*/
int getMaxProtocolVersionValue();
/**
*
* Optional: If specified, only support the specified cipher list.
* Otherwise default to the default cipher list supported by Envoy.
*
*
* repeated string cipher_suites = 9;
* @return A list containing the cipherSuites.
*/
java.util.List
getCipherSuitesList();
/**
*
* Optional: If specified, only support the specified cipher list.
* Otherwise default to the default cipher list supported by Envoy.
*
*
* repeated string cipher_suites = 9;
* @return The count of cipherSuites.
*/
int getCipherSuitesCount();
/**
*
* Optional: If specified, only support the specified cipher list.
* Otherwise default to the default cipher list supported by Envoy.
*
*
* repeated string cipher_suites = 9;
* @param index The index of the element to return.
* @return The cipherSuites at the given index.
*/
java.lang.String getCipherSuites(int index);
/**
*
* Optional: If specified, only support the specified cipher list.
* Otherwise default to the default cipher list supported by Envoy.
*
*
* repeated string cipher_suites = 9;
* @param index The index of the value to return.
* @return The bytes of the cipherSuites at the given index.
*/
com.google.protobuf.ByteString
getCipherSuitesBytes(int index);
}
/**
* Protobuf type {@code istio.networking.v1alpha3.ServerTLSSettings}
*/
public static final class ServerTLSSettings extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:istio.networking.v1alpha3.ServerTLSSettings)
ServerTLSSettingsOrBuilder {
private static final long serialVersionUID = 0L;
// Use ServerTLSSettings.newBuilder() to construct.
private ServerTLSSettings(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
super(builder);
}
private ServerTLSSettings() {
mode_ = 0;
serverCertificate_ = "";
privateKey_ = "";
caCertificates_ = "";
credentialName_ = "";
subjectAltNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
verifyCertificateSpki_ = com.google.protobuf.LazyStringArrayList.EMPTY;
verifyCertificateHash_ = com.google.protobuf.LazyStringArrayList.EMPTY;
minProtocolVersion_ = 0;
maxProtocolVersion_ = 0;
cipherSuites_ = com.google.protobuf.LazyStringArrayList.EMPTY;
}
@java.lang.Override
@SuppressWarnings({"unused"})
protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new ServerTLSSettings();
}
@java.lang.Override
public final com.google.protobuf.UnknownFieldSet
getUnknownFields() {
return this.unknownFields;
}
private ServerTLSSettings(
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 8: {
httpsRedirect_ = input.readBool();
break;
}
case 16: {
int rawValue = input.readEnum();
mode_ = rawValue;
break;
}
case 26: {
java.lang.String s = input.readStringRequireUtf8();
serverCertificate_ = s;
break;
}
case 34: {
java.lang.String s = input.readStringRequireUtf8();
privateKey_ = s;
break;
}
case 42: {
java.lang.String s = input.readStringRequireUtf8();
caCertificates_ = s;
break;
}
case 50: {
java.lang.String s = input.readStringRequireUtf8();
if (!((mutable_bitField0_ & 0x00000001) != 0)) {
subjectAltNames_ = new com.google.protobuf.LazyStringArrayList();
mutable_bitField0_ |= 0x00000001;
}
subjectAltNames_.add(s);
break;
}
case 56: {
int rawValue = input.readEnum();
minProtocolVersion_ = rawValue;
break;
}
case 64: {
int rawValue = input.readEnum();
maxProtocolVersion_ = rawValue;
break;
}
case 74: {
java.lang.String s = input.readStringRequireUtf8();
if (!((mutable_bitField0_ & 0x00000008) != 0)) {
cipherSuites_ = new com.google.protobuf.LazyStringArrayList();
mutable_bitField0_ |= 0x00000008;
}
cipherSuites_.add(s);
break;
}
case 82: {
java.lang.String s = input.readStringRequireUtf8();
credentialName_ = s;
break;
}
case 90: {
java.lang.String s = input.readStringRequireUtf8();
if (!((mutable_bitField0_ & 0x00000002) != 0)) {
verifyCertificateSpki_ = new com.google.protobuf.LazyStringArrayList();
mutable_bitField0_ |= 0x00000002;
}
verifyCertificateSpki_.add(s);
break;
}
case 98: {
java.lang.String s = input.readStringRequireUtf8();
if (!((mutable_bitField0_ & 0x00000004) != 0)) {
verifyCertificateHash_ = new com.google.protobuf.LazyStringArrayList();
mutable_bitField0_ |= 0x00000004;
}
verifyCertificateHash_.add(s);
break;
}
default: {
if (!parseUnknownField(
input, unknownFields, extensionRegistry, tag)) {
done = true;
}
break;
}
}
}
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(this);
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(
e).setUnfinishedMessage(this);
} finally {
if (((mutable_bitField0_ & 0x00000001) != 0)) {
subjectAltNames_ = subjectAltNames_.getUnmodifiableView();
}
if (((mutable_bitField0_ & 0x00000008) != 0)) {
cipherSuites_ = cipherSuites_.getUnmodifiableView();
}
if (((mutable_bitField0_ & 0x00000002) != 0)) {
verifyCertificateSpki_ = verifyCertificateSpki_.getUnmodifiableView();
}
if (((mutable_bitField0_ & 0x00000004) != 0)) {
verifyCertificateHash_ = verifyCertificateHash_.getUnmodifiableView();
}
this.unknownFields = unknownFields.build();
makeExtensionsImmutable();
}
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return istio.networking.v1alpha3.GatewayOuterClass.internal_static_istio_networking_v1alpha3_ServerTLSSettings_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return istio.networking.v1alpha3.GatewayOuterClass.internal_static_istio_networking_v1alpha3_ServerTLSSettings_fieldAccessorTable
.ensureFieldAccessorsInitialized(
istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.class, istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.Builder.class);
}
/**
*
* The SNI string presented by the client will be used as the
* match criterion in a VirtualService TLS route to determine
* the destination service from the service registry.
*
*
* PASSTHROUGH = 0;
*/
PASSTHROUGH(0),
/**
*
* Secure connections with standard TLS semantics.
*
*
* SIMPLE = 1;
*/
SIMPLE(1),
/**
*
* Secure connections to the downstream using mutual TLS by
* presenting server certificates for authentication.
*
*
* MUTUAL = 2;
*/
MUTUAL(2),
/**
*
* Similar to the passthrough mode, except servers with this TLS
* mode do not require an associated VirtualService to map from
* the SNI value to service in the registry. The destination
* details such as the service/subset/port are encoded in the
* SNI value. The proxy will forward to the upstream (Envoy)
* cluster (a group of endpoints) specified by the SNI
* value. This server is typically used to provide connectivity
* between services in disparate L3 networks that otherwise do
* not have direct connectivity between their respective
* endpoints. Use of this mode assumes that both the source and
* the destination are using Istio mTLS to secure traffic.
*
* Secure connections from the downstream using mutual TLS by
* presenting server certificates for authentication. Compared
* to Mutual mode, this mode uses certificates, representing
* gateway workload identity, generated automatically by Istio
* for mTLS authentication. When this mode is used, all other
* fields in `TLSOptions` should be empty.
*
* The SNI string presented by the client will be used as the
* match criterion in a VirtualService TLS route to determine
* the destination service from the service registry.
*
*
* PASSTHROUGH = 0;
*/
public static final int PASSTHROUGH_VALUE = 0;
/**
*
* Secure connections with standard TLS semantics.
*
*
* SIMPLE = 1;
*/
public static final int SIMPLE_VALUE = 1;
/**
*
* Secure connections to the downstream using mutual TLS by
* presenting server certificates for authentication.
*
*
* MUTUAL = 2;
*/
public static final int MUTUAL_VALUE = 2;
/**
*
* Similar to the passthrough mode, except servers with this TLS
* mode do not require an associated VirtualService to map from
* the SNI value to service in the registry. The destination
* details such as the service/subset/port are encoded in the
* SNI value. The proxy will forward to the upstream (Envoy)
* cluster (a group of endpoints) specified by the SNI
* value. This server is typically used to provide connectivity
* between services in disparate L3 networks that otherwise do
* not have direct connectivity between their respective
* endpoints. Use of this mode assumes that both the source and
* the destination are using Istio mTLS to secure traffic.
*
*
* AUTO_PASSTHROUGH = 3;
*/
public static final int AUTO_PASSTHROUGH_VALUE = 3;
/**
*
* Secure connections from the downstream using mutual TLS by
* presenting server certificates for authentication. Compared
* to Mutual mode, this mode uses certificates, representing
* gateway workload identity, generated automatically by Istio
* for mTLS authentication. When this mode is used, all other
* fields in `TLSOptions` should be empty.
*
*
* ISTIO_MUTUAL = 4;
*/
public static final int ISTIO_MUTUAL_VALUE = 4;
public final int getNumber() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalArgumentException(
"Can't get the number of an unknown enum value.");
}
return value;
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
* @deprecated Use {@link #forNumber(int)} instead.
*/
@java.lang.Deprecated
public static TLSmode valueOf(int value) {
return forNumber(value);
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
*/
public static TLSmode forNumber(int value) {
switch (value) {
case 0: return PASSTHROUGH;
case 1: return SIMPLE;
case 2: return MUTUAL;
case 3: return AUTO_PASSTHROUGH;
case 4: return ISTIO_MUTUAL;
default: return null;
}
}
public static com.google.protobuf.Internal.EnumLiteMap
internalGetValueMap() {
return internalValueMap;
}
private static final com.google.protobuf.Internal.EnumLiteMap<
TLSmode> internalValueMap =
new com.google.protobuf.Internal.EnumLiteMap() {
public TLSmode findValueByNumber(int number) {
return TLSmode.forNumber(number);
}
};
public final com.google.protobuf.Descriptors.EnumValueDescriptor
getValueDescriptor() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalStateException(
"Can't get the descriptor of an unrecognized enum value.");
}
return getDescriptor().getValues().get(ordinal());
}
public final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptorForType() {
return getDescriptor();
}
public static final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptor() {
return istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.getDescriptor().getEnumTypes().get(0);
}
private static final TLSmode[] VALUES = values();
public static TLSmode valueOf(
com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
if (desc.getType() != getDescriptor()) {
throw new java.lang.IllegalArgumentException(
"EnumValueDescriptor is not for this type.");
}
if (desc.getIndex() == -1) {
return UNRECOGNIZED;
}
return VALUES[desc.getIndex()];
}
private final int value;
private TLSmode(int value) {
this.value = value;
}
// @@protoc_insertion_point(enum_scope:istio.networking.v1alpha3.ServerTLSSettings.TLSmode)
}
/**
*
*
* TLS_AUTO = 0;
*/
public static final int TLS_AUTO_VALUE = 0;
/**
*
* TLS version 1.0
*
*
* TLSV1_0 = 1;
*/
public static final int TLSV1_0_VALUE = 1;
/**
*
* TLS version 1.1
*
*
* TLSV1_1 = 2;
*/
public static final int TLSV1_1_VALUE = 2;
/**
*
* TLS version 1.2
*
*
* TLSV1_2 = 3;
*/
public static final int TLSV1_2_VALUE = 3;
/**
*
* TLS version 1.3
*
*
* TLSV1_3 = 4;
*/
public static final int TLSV1_3_VALUE = 4;
public final int getNumber() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalArgumentException(
"Can't get the number of an unknown enum value.");
}
return value;
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
* @deprecated Use {@link #forNumber(int)} instead.
*/
@java.lang.Deprecated
public static TLSProtocol valueOf(int value) {
return forNumber(value);
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
*/
public static TLSProtocol forNumber(int value) {
switch (value) {
case 0: return TLS_AUTO;
case 1: return TLSV1_0;
case 2: return TLSV1_1;
case 3: return TLSV1_2;
case 4: return TLSV1_3;
default: return null;
}
}
public static com.google.protobuf.Internal.EnumLiteMap
internalGetValueMap() {
return internalValueMap;
}
private static final com.google.protobuf.Internal.EnumLiteMap<
TLSProtocol> internalValueMap =
new com.google.protobuf.Internal.EnumLiteMap() {
public TLSProtocol findValueByNumber(int number) {
return TLSProtocol.forNumber(number);
}
};
public final com.google.protobuf.Descriptors.EnumValueDescriptor
getValueDescriptor() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalStateException(
"Can't get the descriptor of an unrecognized enum value.");
}
return getDescriptor().getValues().get(ordinal());
}
public final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptorForType() {
return getDescriptor();
}
public static final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptor() {
return istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.getDescriptor().getEnumTypes().get(1);
}
private static final TLSProtocol[] VALUES = values();
public static TLSProtocol valueOf(
com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
if (desc.getType() != getDescriptor()) {
throw new java.lang.IllegalArgumentException(
"EnumValueDescriptor is not for this type.");
}
if (desc.getIndex() == -1) {
return UNRECOGNIZED;
}
return VALUES[desc.getIndex()];
}
private final int value;
private TLSProtocol(int value) {
this.value = value;
}
// @@protoc_insertion_point(enum_scope:istio.networking.v1alpha3.ServerTLSSettings.TLSProtocol)
}
public static final int HTTPS_REDIRECT_FIELD_NUMBER = 1;
private boolean httpsRedirect_;
/**
*
* If set to true, the load balancer will send a 301 redirect for
* all http connections, asking the clients to use HTTPS.
*
*
* bool https_redirect = 1;
* @return The httpsRedirect.
*/
@java.lang.Override
public boolean getHttpsRedirect() {
return httpsRedirect_;
}
public static final int MODE_FIELD_NUMBER = 2;
private int mode_;
/**
*
* Optional: Indicates whether connections to this port should be
* secured using TLS. The value of this field determines how TLS is
* enforced.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings.TLSmode mode = 2;
* @return The enum numeric value on the wire for mode.
*/
@java.lang.Override public int getModeValue() {
return mode_;
}
/**
*
* Optional: Indicates whether connections to this port should be
* secured using TLS. The value of this field determines how TLS is
* enforced.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings.TLSmode mode = 2;
* @return The mode.
*/
@java.lang.Override public istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSmode getMode() {
@SuppressWarnings("deprecation")
istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSmode result = istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSmode.valueOf(mode_);
return result == null ? istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSmode.UNRECOGNIZED : result;
}
public static final int SERVER_CERTIFICATE_FIELD_NUMBER = 3;
private volatile java.lang.Object serverCertificate_;
/**
*
* REQUIRED if mode is `SIMPLE` or `MUTUAL`. The path to the file
* holding the server-side TLS certificate to use.
*
* REQUIRED if mode is `SIMPLE` or `MUTUAL`. The path to the file
* holding the server's private key.
*
*
* string private_key = 4;
* @return The bytes for privateKey.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getPrivateKeyBytes() {
java.lang.Object ref = privateKey_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
privateKey_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int CA_CERTIFICATES_FIELD_NUMBER = 5;
private volatile java.lang.Object caCertificates_;
/**
*
* REQUIRED if mode is `MUTUAL`. The path to a file containing
* certificate authority certificates to use in verifying a presented
* client side certificate.
*
* REQUIRED if mode is `MUTUAL`. The path to a file containing
* certificate authority certificates to use in verifying a presented
* client side certificate.
*
*
* string ca_certificates = 5;
* @return The bytes for caCertificates.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getCaCertificatesBytes() {
java.lang.Object ref = caCertificates_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
caCertificates_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int CREDENTIAL_NAME_FIELD_NUMBER = 10;
private volatile java.lang.Object credentialName_;
/**
*
* For gateways running on Kubernetes, the name of the secret that
* holds the TLS certs including the CA certificates. Applicable
* only on Kubernetes. The secret (of type `generic`) should
* contain the following keys and values: `key:
* <privateKey>` and `cert: <serverCert>`. For mutual TLS,
* `cacert: <CACertificate>` can be provided in the same secret or
* a separate secret named `<secret>-cacert`.
* Secret of type tls for server certificates along with
* ca.crt key for CA certificates is also supported.
* Only one of server certificates and CA certificate
* or credentialName can be specified.
*
* For gateways running on Kubernetes, the name of the secret that
* holds the TLS certs including the CA certificates. Applicable
* only on Kubernetes. The secret (of type `generic`) should
* contain the following keys and values: `key:
* <privateKey>` and `cert: <serverCert>`. For mutual TLS,
* `cacert: <CACertificate>` can be provided in the same secret or
* a separate secret named `<secret>-cacert`.
* Secret of type tls for server certificates along with
* ca.crt key for CA certificates is also supported.
* Only one of server certificates and CA certificate
* or credentialName can be specified.
*
*
* string credential_name = 10;
* @return The bytes for credentialName.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getCredentialNameBytes() {
java.lang.Object ref = credentialName_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
credentialName_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int SUBJECT_ALT_NAMES_FIELD_NUMBER = 6;
private com.google.protobuf.LazyStringList subjectAltNames_;
/**
*
* A list of alternate names to verify the subject identity in the
* certificate presented by the client.
*
*
* repeated string subject_alt_names = 6;
* @return A list containing the subjectAltNames.
*/
public com.google.protobuf.ProtocolStringList
getSubjectAltNamesList() {
return subjectAltNames_;
}
/**
*
* A list of alternate names to verify the subject identity in the
* certificate presented by the client.
*
*
* repeated string subject_alt_names = 6;
* @return The count of subjectAltNames.
*/
public int getSubjectAltNamesCount() {
return subjectAltNames_.size();
}
/**
*
* A list of alternate names to verify the subject identity in the
* certificate presented by the client.
*
*
* repeated string subject_alt_names = 6;
* @param index The index of the element to return.
* @return The subjectAltNames at the given index.
*/
public java.lang.String getSubjectAltNames(int index) {
return subjectAltNames_.get(index);
}
/**
*
* A list of alternate names to verify the subject identity in the
* certificate presented by the client.
*
*
* repeated string subject_alt_names = 6;
* @param index The index of the value to return.
* @return The bytes of the subjectAltNames at the given index.
*/
public com.google.protobuf.ByteString
getSubjectAltNamesBytes(int index) {
return subjectAltNames_.getByteString(index);
}
public static final int VERIFY_CERTIFICATE_SPKI_FIELD_NUMBER = 11;
private com.google.protobuf.LazyStringList verifyCertificateSpki_;
/**
*
* An optional list of base64-encoded SHA-256 hashes of the SKPIs of
* authorized client certificates.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_spki = 11;
* @return A list containing the verifyCertificateSpki.
*/
public com.google.protobuf.ProtocolStringList
getVerifyCertificateSpkiList() {
return verifyCertificateSpki_;
}
/**
*
* An optional list of base64-encoded SHA-256 hashes of the SKPIs of
* authorized client certificates.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_spki = 11;
* @return The count of verifyCertificateSpki.
*/
public int getVerifyCertificateSpkiCount() {
return verifyCertificateSpki_.size();
}
/**
*
* An optional list of base64-encoded SHA-256 hashes of the SKPIs of
* authorized client certificates.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_spki = 11;
* @param index The index of the element to return.
* @return The verifyCertificateSpki at the given index.
*/
public java.lang.String getVerifyCertificateSpki(int index) {
return verifyCertificateSpki_.get(index);
}
/**
*
* An optional list of base64-encoded SHA-256 hashes of the SKPIs of
* authorized client certificates.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_spki = 11;
* @param index The index of the value to return.
* @return The bytes of the verifyCertificateSpki at the given index.
*/
public com.google.protobuf.ByteString
getVerifyCertificateSpkiBytes(int index) {
return verifyCertificateSpki_.getByteString(index);
}
public static final int VERIFY_CERTIFICATE_HASH_FIELD_NUMBER = 12;
private com.google.protobuf.LazyStringList verifyCertificateHash_;
/**
*
* An optional list of hex-encoded SHA-256 hashes of the
* authorized client certificates. Both simple and colon separated
* formats are acceptable.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_hash = 12;
* @return A list containing the verifyCertificateHash.
*/
public com.google.protobuf.ProtocolStringList
getVerifyCertificateHashList() {
return verifyCertificateHash_;
}
/**
*
* An optional list of hex-encoded SHA-256 hashes of the
* authorized client certificates. Both simple and colon separated
* formats are acceptable.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_hash = 12;
* @return The count of verifyCertificateHash.
*/
public int getVerifyCertificateHashCount() {
return verifyCertificateHash_.size();
}
/**
*
* An optional list of hex-encoded SHA-256 hashes of the
* authorized client certificates. Both simple and colon separated
* formats are acceptable.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_hash = 12;
* @param index The index of the element to return.
* @return The verifyCertificateHash at the given index.
*/
public java.lang.String getVerifyCertificateHash(int index) {
return verifyCertificateHash_.get(index);
}
/**
*
* An optional list of hex-encoded SHA-256 hashes of the
* authorized client certificates. Both simple and colon separated
* formats are acceptable.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_hash = 12;
* @param index The index of the value to return.
* @return The bytes of the verifyCertificateHash at the given index.
*/
public com.google.protobuf.ByteString
getVerifyCertificateHashBytes(int index) {
return verifyCertificateHash_.getByteString(index);
}
public static final int MIN_PROTOCOL_VERSION_FIELD_NUMBER = 7;
private int minProtocolVersion_;
/**
*
* Optional: Minimum TLS protocol version.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings.TLSProtocol min_protocol_version = 7;
* @return The enum numeric value on the wire for minProtocolVersion.
*/
@java.lang.Override public int getMinProtocolVersionValue() {
return minProtocolVersion_;
}
/**
*
* Optional: Minimum TLS protocol version.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings.TLSProtocol min_protocol_version = 7;
* @return The minProtocolVersion.
*/
@java.lang.Override public istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSProtocol getMinProtocolVersion() {
@SuppressWarnings("deprecation")
istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSProtocol result = istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSProtocol.valueOf(minProtocolVersion_);
return result == null ? istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSProtocol.UNRECOGNIZED : result;
}
public static final int MAX_PROTOCOL_VERSION_FIELD_NUMBER = 8;
private int maxProtocolVersion_;
/**
*
* Optional: Maximum TLS protocol version.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings.TLSProtocol max_protocol_version = 8;
* @return The enum numeric value on the wire for maxProtocolVersion.
*/
@java.lang.Override public int getMaxProtocolVersionValue() {
return maxProtocolVersion_;
}
/**
*
* Optional: Maximum TLS protocol version.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings.TLSProtocol max_protocol_version = 8;
* @return The maxProtocolVersion.
*/
@java.lang.Override public istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSProtocol getMaxProtocolVersion() {
@SuppressWarnings("deprecation")
istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSProtocol result = istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSProtocol.valueOf(maxProtocolVersion_);
return result == null ? istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSProtocol.UNRECOGNIZED : result;
}
public static final int CIPHER_SUITES_FIELD_NUMBER = 9;
private com.google.protobuf.LazyStringList cipherSuites_;
/**
*
* Optional: If specified, only support the specified cipher list.
* Otherwise default to the default cipher list supported by Envoy.
*
*
* repeated string cipher_suites = 9;
* @return A list containing the cipherSuites.
*/
public com.google.protobuf.ProtocolStringList
getCipherSuitesList() {
return cipherSuites_;
}
/**
*
* Optional: If specified, only support the specified cipher list.
* Otherwise default to the default cipher list supported by Envoy.
*
*
* repeated string cipher_suites = 9;
* @return The count of cipherSuites.
*/
public int getCipherSuitesCount() {
return cipherSuites_.size();
}
/**
*
* Optional: If specified, only support the specified cipher list.
* Otherwise default to the default cipher list supported by Envoy.
*
*
* repeated string cipher_suites = 9;
* @param index The index of the element to return.
* @return The cipherSuites at the given index.
*/
public java.lang.String getCipherSuites(int index) {
return cipherSuites_.get(index);
}
/**
*
* Optional: If specified, only support the specified cipher list.
* Otherwise default to the default cipher list supported by Envoy.
*
*
* repeated string cipher_suites = 9;
* @param index The index of the value to return.
* @return The bytes of the cipherSuites at the given index.
*/
public com.google.protobuf.ByteString
getCipherSuitesBytes(int index) {
return cipherSuites_.getByteString(index);
}
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 (httpsRedirect_ != false) {
output.writeBool(1, httpsRedirect_);
}
if (mode_ != istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSmode.PASSTHROUGH.getNumber()) {
output.writeEnum(2, mode_);
}
if (!getServerCertificateBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 3, serverCertificate_);
}
if (!getPrivateKeyBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 4, privateKey_);
}
if (!getCaCertificatesBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 5, caCertificates_);
}
for (int i = 0; i < subjectAltNames_.size(); i++) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 6, subjectAltNames_.getRaw(i));
}
if (minProtocolVersion_ != istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSProtocol.TLS_AUTO.getNumber()) {
output.writeEnum(7, minProtocolVersion_);
}
if (maxProtocolVersion_ != istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSProtocol.TLS_AUTO.getNumber()) {
output.writeEnum(8, maxProtocolVersion_);
}
for (int i = 0; i < cipherSuites_.size(); i++) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 9, cipherSuites_.getRaw(i));
}
if (!getCredentialNameBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 10, credentialName_);
}
for (int i = 0; i < verifyCertificateSpki_.size(); i++) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 11, verifyCertificateSpki_.getRaw(i));
}
for (int i = 0; i < verifyCertificateHash_.size(); i++) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 12, verifyCertificateHash_.getRaw(i));
}
unknownFields.writeTo(output);
}
@java.lang.Override
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
if (httpsRedirect_ != false) {
size += com.google.protobuf.CodedOutputStream
.computeBoolSize(1, httpsRedirect_);
}
if (mode_ != istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSmode.PASSTHROUGH.getNumber()) {
size += com.google.protobuf.CodedOutputStream
.computeEnumSize(2, mode_);
}
if (!getServerCertificateBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, serverCertificate_);
}
if (!getPrivateKeyBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, privateKey_);
}
if (!getCaCertificatesBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, caCertificates_);
}
{
int dataSize = 0;
for (int i = 0; i < subjectAltNames_.size(); i++) {
dataSize += computeStringSizeNoTag(subjectAltNames_.getRaw(i));
}
size += dataSize;
size += 1 * getSubjectAltNamesList().size();
}
if (minProtocolVersion_ != istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSProtocol.TLS_AUTO.getNumber()) {
size += com.google.protobuf.CodedOutputStream
.computeEnumSize(7, minProtocolVersion_);
}
if (maxProtocolVersion_ != istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSProtocol.TLS_AUTO.getNumber()) {
size += com.google.protobuf.CodedOutputStream
.computeEnumSize(8, maxProtocolVersion_);
}
{
int dataSize = 0;
for (int i = 0; i < cipherSuites_.size(); i++) {
dataSize += computeStringSizeNoTag(cipherSuites_.getRaw(i));
}
size += dataSize;
size += 1 * getCipherSuitesList().size();
}
if (!getCredentialNameBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(10, credentialName_);
}
{
int dataSize = 0;
for (int i = 0; i < verifyCertificateSpki_.size(); i++) {
dataSize += computeStringSizeNoTag(verifyCertificateSpki_.getRaw(i));
}
size += dataSize;
size += 1 * getVerifyCertificateSpkiList().size();
}
{
int dataSize = 0;
for (int i = 0; i < verifyCertificateHash_.size(); i++) {
dataSize += computeStringSizeNoTag(verifyCertificateHash_.getRaw(i));
}
size += dataSize;
size += 1 * getVerifyCertificateHashList().size();
}
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 istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings)) {
return super.equals(obj);
}
istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings other = (istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings) obj;
if (getHttpsRedirect()
!= other.getHttpsRedirect()) return false;
if (mode_ != other.mode_) return false;
if (!getServerCertificate()
.equals(other.getServerCertificate())) return false;
if (!getPrivateKey()
.equals(other.getPrivateKey())) return false;
if (!getCaCertificates()
.equals(other.getCaCertificates())) return false;
if (!getCredentialName()
.equals(other.getCredentialName())) return false;
if (!getSubjectAltNamesList()
.equals(other.getSubjectAltNamesList())) return false;
if (!getVerifyCertificateSpkiList()
.equals(other.getVerifyCertificateSpkiList())) return false;
if (!getVerifyCertificateHashList()
.equals(other.getVerifyCertificateHashList())) return false;
if (minProtocolVersion_ != other.minProtocolVersion_) return false;
if (maxProtocolVersion_ != other.maxProtocolVersion_) return false;
if (!getCipherSuitesList()
.equals(other.getCipherSuitesList())) 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();
hash = (37 * hash) + HTTPS_REDIRECT_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
getHttpsRedirect());
hash = (37 * hash) + MODE_FIELD_NUMBER;
hash = (53 * hash) + mode_;
hash = (37 * hash) + SERVER_CERTIFICATE_FIELD_NUMBER;
hash = (53 * hash) + getServerCertificate().hashCode();
hash = (37 * hash) + PRIVATE_KEY_FIELD_NUMBER;
hash = (53 * hash) + getPrivateKey().hashCode();
hash = (37 * hash) + CA_CERTIFICATES_FIELD_NUMBER;
hash = (53 * hash) + getCaCertificates().hashCode();
hash = (37 * hash) + CREDENTIAL_NAME_FIELD_NUMBER;
hash = (53 * hash) + getCredentialName().hashCode();
if (getSubjectAltNamesCount() > 0) {
hash = (37 * hash) + SUBJECT_ALT_NAMES_FIELD_NUMBER;
hash = (53 * hash) + getSubjectAltNamesList().hashCode();
}
if (getVerifyCertificateSpkiCount() > 0) {
hash = (37 * hash) + VERIFY_CERTIFICATE_SPKI_FIELD_NUMBER;
hash = (53 * hash) + getVerifyCertificateSpkiList().hashCode();
}
if (getVerifyCertificateHashCount() > 0) {
hash = (37 * hash) + VERIFY_CERTIFICATE_HASH_FIELD_NUMBER;
hash = (53 * hash) + getVerifyCertificateHashList().hashCode();
}
hash = (37 * hash) + MIN_PROTOCOL_VERSION_FIELD_NUMBER;
hash = (53 * hash) + minProtocolVersion_;
hash = (37 * hash) + MAX_PROTOCOL_VERSION_FIELD_NUMBER;
hash = (53 * hash) + maxProtocolVersion_;
if (getCipherSuitesCount() > 0) {
hash = (37 * hash) + CIPHER_SUITES_FIELD_NUMBER;
hash = (53 * hash) + getCipherSuitesList().hashCode();
}
hash = (29 * hash) + unknownFields.hashCode();
memoizedHashCode = hash;
return hash;
}
public static istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings parseFrom(
java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings 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 istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings 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 istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings 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(istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings 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;
}
/**
* Protobuf type {@code istio.networking.v1alpha3.ServerTLSSettings}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder implements
// @@protoc_insertion_point(builder_implements:istio.networking.v1alpha3.ServerTLSSettings)
istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettingsOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return istio.networking.v1alpha3.GatewayOuterClass.internal_static_istio_networking_v1alpha3_ServerTLSSettings_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return istio.networking.v1alpha3.GatewayOuterClass.internal_static_istio_networking_v1alpha3_ServerTLSSettings_fieldAccessorTable
.ensureFieldAccessorsInitialized(
istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.class, istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.Builder.class);
}
// Construct using istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.newBuilder()
private Builder() {
maybeForceBuilderInitialization();
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
maybeForceBuilderInitialization();
}
private void maybeForceBuilderInitialization() {
if (com.google.protobuf.GeneratedMessageV3
.alwaysUseFieldBuilders) {
}
}
@java.lang.Override
public Builder clear() {
super.clear();
httpsRedirect_ = false;
mode_ = 0;
serverCertificate_ = "";
privateKey_ = "";
caCertificates_ = "";
credentialName_ = "";
subjectAltNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
bitField0_ = (bitField0_ & ~0x00000001);
verifyCertificateSpki_ = com.google.protobuf.LazyStringArrayList.EMPTY;
bitField0_ = (bitField0_ & ~0x00000002);
verifyCertificateHash_ = com.google.protobuf.LazyStringArrayList.EMPTY;
bitField0_ = (bitField0_ & ~0x00000004);
minProtocolVersion_ = 0;
maxProtocolVersion_ = 0;
cipherSuites_ = com.google.protobuf.LazyStringArrayList.EMPTY;
bitField0_ = (bitField0_ & ~0x00000008);
return this;
}
@java.lang.Override
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return istio.networking.v1alpha3.GatewayOuterClass.internal_static_istio_networking_v1alpha3_ServerTLSSettings_descriptor;
}
@java.lang.Override
public istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings getDefaultInstanceForType() {
return istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.getDefaultInstance();
}
@java.lang.Override
public istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings build() {
istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
@java.lang.Override
public istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings buildPartial() {
istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings result = new istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings(this);
int from_bitField0_ = bitField0_;
result.httpsRedirect_ = httpsRedirect_;
result.mode_ = mode_;
result.serverCertificate_ = serverCertificate_;
result.privateKey_ = privateKey_;
result.caCertificates_ = caCertificates_;
result.credentialName_ = credentialName_;
if (((bitField0_ & 0x00000001) != 0)) {
subjectAltNames_ = subjectAltNames_.getUnmodifiableView();
bitField0_ = (bitField0_ & ~0x00000001);
}
result.subjectAltNames_ = subjectAltNames_;
if (((bitField0_ & 0x00000002) != 0)) {
verifyCertificateSpki_ = verifyCertificateSpki_.getUnmodifiableView();
bitField0_ = (bitField0_ & ~0x00000002);
}
result.verifyCertificateSpki_ = verifyCertificateSpki_;
if (((bitField0_ & 0x00000004) != 0)) {
verifyCertificateHash_ = verifyCertificateHash_.getUnmodifiableView();
bitField0_ = (bitField0_ & ~0x00000004);
}
result.verifyCertificateHash_ = verifyCertificateHash_;
result.minProtocolVersion_ = minProtocolVersion_;
result.maxProtocolVersion_ = maxProtocolVersion_;
if (((bitField0_ & 0x00000008) != 0)) {
cipherSuites_ = cipherSuites_.getUnmodifiableView();
bitField0_ = (bitField0_ & ~0x00000008);
}
result.cipherSuites_ = cipherSuites_;
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 istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings) {
return mergeFrom((istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings other) {
if (other == istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.getDefaultInstance()) return this;
if (other.getHttpsRedirect() != false) {
setHttpsRedirect(other.getHttpsRedirect());
}
if (other.mode_ != 0) {
setModeValue(other.getModeValue());
}
if (!other.getServerCertificate().isEmpty()) {
serverCertificate_ = other.serverCertificate_;
onChanged();
}
if (!other.getPrivateKey().isEmpty()) {
privateKey_ = other.privateKey_;
onChanged();
}
if (!other.getCaCertificates().isEmpty()) {
caCertificates_ = other.caCertificates_;
onChanged();
}
if (!other.getCredentialName().isEmpty()) {
credentialName_ = other.credentialName_;
onChanged();
}
if (!other.subjectAltNames_.isEmpty()) {
if (subjectAltNames_.isEmpty()) {
subjectAltNames_ = other.subjectAltNames_;
bitField0_ = (bitField0_ & ~0x00000001);
} else {
ensureSubjectAltNamesIsMutable();
subjectAltNames_.addAll(other.subjectAltNames_);
}
onChanged();
}
if (!other.verifyCertificateSpki_.isEmpty()) {
if (verifyCertificateSpki_.isEmpty()) {
verifyCertificateSpki_ = other.verifyCertificateSpki_;
bitField0_ = (bitField0_ & ~0x00000002);
} else {
ensureVerifyCertificateSpkiIsMutable();
verifyCertificateSpki_.addAll(other.verifyCertificateSpki_);
}
onChanged();
}
if (!other.verifyCertificateHash_.isEmpty()) {
if (verifyCertificateHash_.isEmpty()) {
verifyCertificateHash_ = other.verifyCertificateHash_;
bitField0_ = (bitField0_ & ~0x00000004);
} else {
ensureVerifyCertificateHashIsMutable();
verifyCertificateHash_.addAll(other.verifyCertificateHash_);
}
onChanged();
}
if (other.minProtocolVersion_ != 0) {
setMinProtocolVersionValue(other.getMinProtocolVersionValue());
}
if (other.maxProtocolVersion_ != 0) {
setMaxProtocolVersionValue(other.getMaxProtocolVersionValue());
}
if (!other.cipherSuites_.isEmpty()) {
if (cipherSuites_.isEmpty()) {
cipherSuites_ = other.cipherSuites_;
bitField0_ = (bitField0_ & ~0x00000008);
} else {
ensureCipherSuitesIsMutable();
cipherSuites_.addAll(other.cipherSuites_);
}
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 {
istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings parsedMessage = null;
try {
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
parsedMessage = (istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings) e.getUnfinishedMessage();
throw e.unwrapIOException();
} finally {
if (parsedMessage != null) {
mergeFrom(parsedMessage);
}
}
return this;
}
private int bitField0_;
private boolean httpsRedirect_ ;
/**
*
* If set to true, the load balancer will send a 301 redirect for
* all http connections, asking the clients to use HTTPS.
*
* If set to true, the load balancer will send a 301 redirect for
* all http connections, asking the clients to use HTTPS.
*
*
* bool https_redirect = 1;
* @param value The httpsRedirect to set.
* @return This builder for chaining.
*/
public Builder setHttpsRedirect(boolean value) {
httpsRedirect_ = value;
onChanged();
return this;
}
/**
*
* If set to true, the load balancer will send a 301 redirect for
* all http connections, asking the clients to use HTTPS.
*
*
* bool https_redirect = 1;
* @return This builder for chaining.
*/
public Builder clearHttpsRedirect() {
httpsRedirect_ = false;
onChanged();
return this;
}
private int mode_ = 0;
/**
*
* Optional: Indicates whether connections to this port should be
* secured using TLS. The value of this field determines how TLS is
* enforced.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings.TLSmode mode = 2;
* @return The enum numeric value on the wire for mode.
*/
@java.lang.Override public int getModeValue() {
return mode_;
}
/**
*
* Optional: Indicates whether connections to this port should be
* secured using TLS. The value of this field determines how TLS is
* enforced.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings.TLSmode mode = 2;
* @param value The enum numeric value on the wire for mode to set.
* @return This builder for chaining.
*/
public Builder setModeValue(int value) {
mode_ = value;
onChanged();
return this;
}
/**
*
* Optional: Indicates whether connections to this port should be
* secured using TLS. The value of this field determines how TLS is
* enforced.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings.TLSmode mode = 2;
* @return The mode.
*/
@java.lang.Override
public istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSmode getMode() {
@SuppressWarnings("deprecation")
istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSmode result = istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSmode.valueOf(mode_);
return result == null ? istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSmode.UNRECOGNIZED : result;
}
/**
*
* Optional: Indicates whether connections to this port should be
* secured using TLS. The value of this field determines how TLS is
* enforced.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings.TLSmode mode = 2;
* @param value The mode to set.
* @return This builder for chaining.
*/
public Builder setMode(istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSmode value) {
if (value == null) {
throw new NullPointerException();
}
mode_ = value.getNumber();
onChanged();
return this;
}
/**
*
* Optional: Indicates whether connections to this port should be
* secured using TLS. The value of this field determines how TLS is
* enforced.
*
* REQUIRED if mode is `SIMPLE` or `MUTUAL`. The path to the file
* holding the server's private key.
*
*
* string private_key = 4;
* @return The bytes for privateKey.
*/
public com.google.protobuf.ByteString
getPrivateKeyBytes() {
java.lang.Object ref = privateKey_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
privateKey_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
*
* REQUIRED if mode is `SIMPLE` or `MUTUAL`. The path to the file
* holding the server's private key.
*
*
* string private_key = 4;
* @param value The privateKey to set.
* @return This builder for chaining.
*/
public Builder setPrivateKey(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
privateKey_ = value;
onChanged();
return this;
}
/**
*
* REQUIRED if mode is `SIMPLE` or `MUTUAL`. The path to the file
* holding the server's private key.
*
*
* string private_key = 4;
* @return This builder for chaining.
*/
public Builder clearPrivateKey() {
privateKey_ = getDefaultInstance().getPrivateKey();
onChanged();
return this;
}
/**
*
* REQUIRED if mode is `SIMPLE` or `MUTUAL`. The path to the file
* holding the server's private key.
*
*
* string private_key = 4;
* @param value The bytes for privateKey to set.
* @return This builder for chaining.
*/
public Builder setPrivateKeyBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
privateKey_ = value;
onChanged();
return this;
}
private java.lang.Object caCertificates_ = "";
/**
*
* REQUIRED if mode is `MUTUAL`. The path to a file containing
* certificate authority certificates to use in verifying a presented
* client side certificate.
*
* REQUIRED if mode is `MUTUAL`. The path to a file containing
* certificate authority certificates to use in verifying a presented
* client side certificate.
*
*
* string ca_certificates = 5;
* @return The bytes for caCertificates.
*/
public com.google.protobuf.ByteString
getCaCertificatesBytes() {
java.lang.Object ref = caCertificates_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
caCertificates_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
*
* REQUIRED if mode is `MUTUAL`. The path to a file containing
* certificate authority certificates to use in verifying a presented
* client side certificate.
*
*
* string ca_certificates = 5;
* @param value The caCertificates to set.
* @return This builder for chaining.
*/
public Builder setCaCertificates(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
caCertificates_ = value;
onChanged();
return this;
}
/**
*
* REQUIRED if mode is `MUTUAL`. The path to a file containing
* certificate authority certificates to use in verifying a presented
* client side certificate.
*
*
* string ca_certificates = 5;
* @return This builder for chaining.
*/
public Builder clearCaCertificates() {
caCertificates_ = getDefaultInstance().getCaCertificates();
onChanged();
return this;
}
/**
*
* REQUIRED if mode is `MUTUAL`. The path to a file containing
* certificate authority certificates to use in verifying a presented
* client side certificate.
*
*
* string ca_certificates = 5;
* @param value The bytes for caCertificates to set.
* @return This builder for chaining.
*/
public Builder setCaCertificatesBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
caCertificates_ = value;
onChanged();
return this;
}
private java.lang.Object credentialName_ = "";
/**
*
* For gateways running on Kubernetes, the name of the secret that
* holds the TLS certs including the CA certificates. Applicable
* only on Kubernetes. The secret (of type `generic`) should
* contain the following keys and values: `key:
* <privateKey>` and `cert: <serverCert>`. For mutual TLS,
* `cacert: <CACertificate>` can be provided in the same secret or
* a separate secret named `<secret>-cacert`.
* Secret of type tls for server certificates along with
* ca.crt key for CA certificates is also supported.
* Only one of server certificates and CA certificate
* or credentialName can be specified.
*
* For gateways running on Kubernetes, the name of the secret that
* holds the TLS certs including the CA certificates. Applicable
* only on Kubernetes. The secret (of type `generic`) should
* contain the following keys and values: `key:
* <privateKey>` and `cert: <serverCert>`. For mutual TLS,
* `cacert: <CACertificate>` can be provided in the same secret or
* a separate secret named `<secret>-cacert`.
* Secret of type tls for server certificates along with
* ca.crt key for CA certificates is also supported.
* Only one of server certificates and CA certificate
* or credentialName can be specified.
*
*
* string credential_name = 10;
* @return The bytes for credentialName.
*/
public com.google.protobuf.ByteString
getCredentialNameBytes() {
java.lang.Object ref = credentialName_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
credentialName_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
*
* For gateways running on Kubernetes, the name of the secret that
* holds the TLS certs including the CA certificates. Applicable
* only on Kubernetes. The secret (of type `generic`) should
* contain the following keys and values: `key:
* <privateKey>` and `cert: <serverCert>`. For mutual TLS,
* `cacert: <CACertificate>` can be provided in the same secret or
* a separate secret named `<secret>-cacert`.
* Secret of type tls for server certificates along with
* ca.crt key for CA certificates is also supported.
* Only one of server certificates and CA certificate
* or credentialName can be specified.
*
*
* string credential_name = 10;
* @param value The credentialName to set.
* @return This builder for chaining.
*/
public Builder setCredentialName(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
credentialName_ = value;
onChanged();
return this;
}
/**
*
* For gateways running on Kubernetes, the name of the secret that
* holds the TLS certs including the CA certificates. Applicable
* only on Kubernetes. The secret (of type `generic`) should
* contain the following keys and values: `key:
* <privateKey>` and `cert: <serverCert>`. For mutual TLS,
* `cacert: <CACertificate>` can be provided in the same secret or
* a separate secret named `<secret>-cacert`.
* Secret of type tls for server certificates along with
* ca.crt key for CA certificates is also supported.
* Only one of server certificates and CA certificate
* or credentialName can be specified.
*
*
* string credential_name = 10;
* @return This builder for chaining.
*/
public Builder clearCredentialName() {
credentialName_ = getDefaultInstance().getCredentialName();
onChanged();
return this;
}
/**
*
* For gateways running on Kubernetes, the name of the secret that
* holds the TLS certs including the CA certificates. Applicable
* only on Kubernetes. The secret (of type `generic`) should
* contain the following keys and values: `key:
* <privateKey>` and `cert: <serverCert>`. For mutual TLS,
* `cacert: <CACertificate>` can be provided in the same secret or
* a separate secret named `<secret>-cacert`.
* Secret of type tls for server certificates along with
* ca.crt key for CA certificates is also supported.
* Only one of server certificates and CA certificate
* or credentialName can be specified.
*
*
* string credential_name = 10;
* @param value The bytes for credentialName to set.
* @return This builder for chaining.
*/
public Builder setCredentialNameBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
credentialName_ = value;
onChanged();
return this;
}
private com.google.protobuf.LazyStringList subjectAltNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
private void ensureSubjectAltNamesIsMutable() {
if (!((bitField0_ & 0x00000001) != 0)) {
subjectAltNames_ = new com.google.protobuf.LazyStringArrayList(subjectAltNames_);
bitField0_ |= 0x00000001;
}
}
/**
*
* A list of alternate names to verify the subject identity in the
* certificate presented by the client.
*
*
* repeated string subject_alt_names = 6;
* @return A list containing the subjectAltNames.
*/
public com.google.protobuf.ProtocolStringList
getSubjectAltNamesList() {
return subjectAltNames_.getUnmodifiableView();
}
/**
*
* A list of alternate names to verify the subject identity in the
* certificate presented by the client.
*
*
* repeated string subject_alt_names = 6;
* @return The count of subjectAltNames.
*/
public int getSubjectAltNamesCount() {
return subjectAltNames_.size();
}
/**
*
* A list of alternate names to verify the subject identity in the
* certificate presented by the client.
*
*
* repeated string subject_alt_names = 6;
* @param index The index of the element to return.
* @return The subjectAltNames at the given index.
*/
public java.lang.String getSubjectAltNames(int index) {
return subjectAltNames_.get(index);
}
/**
*
* A list of alternate names to verify the subject identity in the
* certificate presented by the client.
*
*
* repeated string subject_alt_names = 6;
* @param index The index of the value to return.
* @return The bytes of the subjectAltNames at the given index.
*/
public com.google.protobuf.ByteString
getSubjectAltNamesBytes(int index) {
return subjectAltNames_.getByteString(index);
}
/**
*
* A list of alternate names to verify the subject identity in the
* certificate presented by the client.
*
*
* repeated string subject_alt_names = 6;
* @param index The index to set the value at.
* @param value The subjectAltNames to set.
* @return This builder for chaining.
*/
public Builder setSubjectAltNames(
int index, java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
ensureSubjectAltNamesIsMutable();
subjectAltNames_.set(index, value);
onChanged();
return this;
}
/**
*
* A list of alternate names to verify the subject identity in the
* certificate presented by the client.
*
*
* repeated string subject_alt_names = 6;
* @param value The subjectAltNames to add.
* @return This builder for chaining.
*/
public Builder addSubjectAltNames(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
ensureSubjectAltNamesIsMutable();
subjectAltNames_.add(value);
onChanged();
return this;
}
/**
*
* A list of alternate names to verify the subject identity in the
* certificate presented by the client.
*
*
* repeated string subject_alt_names = 6;
* @param values The subjectAltNames to add.
* @return This builder for chaining.
*/
public Builder addAllSubjectAltNames(
java.lang.Iterable values) {
ensureSubjectAltNamesIsMutable();
com.google.protobuf.AbstractMessageLite.Builder.addAll(
values, subjectAltNames_);
onChanged();
return this;
}
/**
*
* A list of alternate names to verify the subject identity in the
* certificate presented by the client.
*
* A list of alternate names to verify the subject identity in the
* certificate presented by the client.
*
*
* repeated string subject_alt_names = 6;
* @param value The bytes of the subjectAltNames to add.
* @return This builder for chaining.
*/
public Builder addSubjectAltNamesBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
ensureSubjectAltNamesIsMutable();
subjectAltNames_.add(value);
onChanged();
return this;
}
private com.google.protobuf.LazyStringList verifyCertificateSpki_ = com.google.protobuf.LazyStringArrayList.EMPTY;
private void ensureVerifyCertificateSpkiIsMutable() {
if (!((bitField0_ & 0x00000002) != 0)) {
verifyCertificateSpki_ = new com.google.protobuf.LazyStringArrayList(verifyCertificateSpki_);
bitField0_ |= 0x00000002;
}
}
/**
*
* An optional list of base64-encoded SHA-256 hashes of the SKPIs of
* authorized client certificates.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_spki = 11;
* @return A list containing the verifyCertificateSpki.
*/
public com.google.protobuf.ProtocolStringList
getVerifyCertificateSpkiList() {
return verifyCertificateSpki_.getUnmodifiableView();
}
/**
*
* An optional list of base64-encoded SHA-256 hashes of the SKPIs of
* authorized client certificates.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_spki = 11;
* @return The count of verifyCertificateSpki.
*/
public int getVerifyCertificateSpkiCount() {
return verifyCertificateSpki_.size();
}
/**
*
* An optional list of base64-encoded SHA-256 hashes of the SKPIs of
* authorized client certificates.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_spki = 11;
* @param index The index of the element to return.
* @return The verifyCertificateSpki at the given index.
*/
public java.lang.String getVerifyCertificateSpki(int index) {
return verifyCertificateSpki_.get(index);
}
/**
*
* An optional list of base64-encoded SHA-256 hashes of the SKPIs of
* authorized client certificates.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_spki = 11;
* @param index The index of the value to return.
* @return The bytes of the verifyCertificateSpki at the given index.
*/
public com.google.protobuf.ByteString
getVerifyCertificateSpkiBytes(int index) {
return verifyCertificateSpki_.getByteString(index);
}
/**
*
* An optional list of base64-encoded SHA-256 hashes of the SKPIs of
* authorized client certificates.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_spki = 11;
* @param index The index to set the value at.
* @param value The verifyCertificateSpki to set.
* @return This builder for chaining.
*/
public Builder setVerifyCertificateSpki(
int index, java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
ensureVerifyCertificateSpkiIsMutable();
verifyCertificateSpki_.set(index, value);
onChanged();
return this;
}
/**
*
* An optional list of base64-encoded SHA-256 hashes of the SKPIs of
* authorized client certificates.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_spki = 11;
* @param value The verifyCertificateSpki to add.
* @return This builder for chaining.
*/
public Builder addVerifyCertificateSpki(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
ensureVerifyCertificateSpkiIsMutable();
verifyCertificateSpki_.add(value);
onChanged();
return this;
}
/**
*
* An optional list of base64-encoded SHA-256 hashes of the SKPIs of
* authorized client certificates.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_spki = 11;
* @param values The verifyCertificateSpki to add.
* @return This builder for chaining.
*/
public Builder addAllVerifyCertificateSpki(
java.lang.Iterable values) {
ensureVerifyCertificateSpkiIsMutable();
com.google.protobuf.AbstractMessageLite.Builder.addAll(
values, verifyCertificateSpki_);
onChanged();
return this;
}
/**
*
* An optional list of base64-encoded SHA-256 hashes of the SKPIs of
* authorized client certificates.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
* An optional list of base64-encoded SHA-256 hashes of the SKPIs of
* authorized client certificates.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_spki = 11;
* @param value The bytes of the verifyCertificateSpki to add.
* @return This builder for chaining.
*/
public Builder addVerifyCertificateSpkiBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
ensureVerifyCertificateSpkiIsMutable();
verifyCertificateSpki_.add(value);
onChanged();
return this;
}
private com.google.protobuf.LazyStringList verifyCertificateHash_ = com.google.protobuf.LazyStringArrayList.EMPTY;
private void ensureVerifyCertificateHashIsMutable() {
if (!((bitField0_ & 0x00000004) != 0)) {
verifyCertificateHash_ = new com.google.protobuf.LazyStringArrayList(verifyCertificateHash_);
bitField0_ |= 0x00000004;
}
}
/**
*
* An optional list of hex-encoded SHA-256 hashes of the
* authorized client certificates. Both simple and colon separated
* formats are acceptable.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_hash = 12;
* @return A list containing the verifyCertificateHash.
*/
public com.google.protobuf.ProtocolStringList
getVerifyCertificateHashList() {
return verifyCertificateHash_.getUnmodifiableView();
}
/**
*
* An optional list of hex-encoded SHA-256 hashes of the
* authorized client certificates. Both simple and colon separated
* formats are acceptable.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_hash = 12;
* @return The count of verifyCertificateHash.
*/
public int getVerifyCertificateHashCount() {
return verifyCertificateHash_.size();
}
/**
*
* An optional list of hex-encoded SHA-256 hashes of the
* authorized client certificates. Both simple and colon separated
* formats are acceptable.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_hash = 12;
* @param index The index of the element to return.
* @return The verifyCertificateHash at the given index.
*/
public java.lang.String getVerifyCertificateHash(int index) {
return verifyCertificateHash_.get(index);
}
/**
*
* An optional list of hex-encoded SHA-256 hashes of the
* authorized client certificates. Both simple and colon separated
* formats are acceptable.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_hash = 12;
* @param index The index of the value to return.
* @return The bytes of the verifyCertificateHash at the given index.
*/
public com.google.protobuf.ByteString
getVerifyCertificateHashBytes(int index) {
return verifyCertificateHash_.getByteString(index);
}
/**
*
* An optional list of hex-encoded SHA-256 hashes of the
* authorized client certificates. Both simple and colon separated
* formats are acceptable.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_hash = 12;
* @param index The index to set the value at.
* @param value The verifyCertificateHash to set.
* @return This builder for chaining.
*/
public Builder setVerifyCertificateHash(
int index, java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
ensureVerifyCertificateHashIsMutable();
verifyCertificateHash_.set(index, value);
onChanged();
return this;
}
/**
*
* An optional list of hex-encoded SHA-256 hashes of the
* authorized client certificates. Both simple and colon separated
* formats are acceptable.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_hash = 12;
* @param value The verifyCertificateHash to add.
* @return This builder for chaining.
*/
public Builder addVerifyCertificateHash(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
ensureVerifyCertificateHashIsMutable();
verifyCertificateHash_.add(value);
onChanged();
return this;
}
/**
*
* An optional list of hex-encoded SHA-256 hashes of the
* authorized client certificates. Both simple and colon separated
* formats are acceptable.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_hash = 12;
* @param values The verifyCertificateHash to add.
* @return This builder for chaining.
*/
public Builder addAllVerifyCertificateHash(
java.lang.Iterable values) {
ensureVerifyCertificateHashIsMutable();
com.google.protobuf.AbstractMessageLite.Builder.addAll(
values, verifyCertificateHash_);
onChanged();
return this;
}
/**
*
* An optional list of hex-encoded SHA-256 hashes of the
* authorized client certificates. Both simple and colon separated
* formats are acceptable.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
* An optional list of hex-encoded SHA-256 hashes of the
* authorized client certificates. Both simple and colon separated
* formats are acceptable.
* Note: When both verify_certificate_hash and verify_certificate_spki
* are specified, a hash matching either value will result in the
* certificate being accepted.
*
*
* repeated string verify_certificate_hash = 12;
* @param value The bytes of the verifyCertificateHash to add.
* @return This builder for chaining.
*/
public Builder addVerifyCertificateHashBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
ensureVerifyCertificateHashIsMutable();
verifyCertificateHash_.add(value);
onChanged();
return this;
}
private int minProtocolVersion_ = 0;
/**
*
* Optional: Minimum TLS protocol version.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings.TLSProtocol min_protocol_version = 7;
* @return The enum numeric value on the wire for minProtocolVersion.
*/
@java.lang.Override public int getMinProtocolVersionValue() {
return minProtocolVersion_;
}
/**
*
* Optional: Minimum TLS protocol version.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings.TLSProtocol min_protocol_version = 7;
* @param value The enum numeric value on the wire for minProtocolVersion to set.
* @return This builder for chaining.
*/
public Builder setMinProtocolVersionValue(int value) {
minProtocolVersion_ = value;
onChanged();
return this;
}
/**
*
* Optional: Minimum TLS protocol version.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings.TLSProtocol min_protocol_version = 7;
* @return The minProtocolVersion.
*/
@java.lang.Override
public istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSProtocol getMinProtocolVersion() {
@SuppressWarnings("deprecation")
istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSProtocol result = istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSProtocol.valueOf(minProtocolVersion_);
return result == null ? istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSProtocol.UNRECOGNIZED : result;
}
/**
*
* Optional: Minimum TLS protocol version.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings.TLSProtocol min_protocol_version = 7;
* @param value The minProtocolVersion to set.
* @return This builder for chaining.
*/
public Builder setMinProtocolVersion(istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSProtocol value) {
if (value == null) {
throw new NullPointerException();
}
minProtocolVersion_ = value.getNumber();
onChanged();
return this;
}
/**
*
* Optional: Minimum TLS protocol version.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings.TLSProtocol min_protocol_version = 7;
* @return This builder for chaining.
*/
public Builder clearMinProtocolVersion() {
minProtocolVersion_ = 0;
onChanged();
return this;
}
private int maxProtocolVersion_ = 0;
/**
*
* Optional: Maximum TLS protocol version.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings.TLSProtocol max_protocol_version = 8;
* @return The enum numeric value on the wire for maxProtocolVersion.
*/
@java.lang.Override public int getMaxProtocolVersionValue() {
return maxProtocolVersion_;
}
/**
*
* Optional: Maximum TLS protocol version.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings.TLSProtocol max_protocol_version = 8;
* @param value The enum numeric value on the wire for maxProtocolVersion to set.
* @return This builder for chaining.
*/
public Builder setMaxProtocolVersionValue(int value) {
maxProtocolVersion_ = value;
onChanged();
return this;
}
/**
*
* Optional: Maximum TLS protocol version.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings.TLSProtocol max_protocol_version = 8;
* @return The maxProtocolVersion.
*/
@java.lang.Override
public istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSProtocol getMaxProtocolVersion() {
@SuppressWarnings("deprecation")
istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSProtocol result = istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSProtocol.valueOf(maxProtocolVersion_);
return result == null ? istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSProtocol.UNRECOGNIZED : result;
}
/**
*
* Optional: Maximum TLS protocol version.
*
*
* .istio.networking.v1alpha3.ServerTLSSettings.TLSProtocol max_protocol_version = 8;
* @param value The maxProtocolVersion to set.
* @return This builder for chaining.
*/
public Builder setMaxProtocolVersion(istio.networking.v1alpha3.GatewayOuterClass.ServerTLSSettings.TLSProtocol value) {
if (value == null) {
throw new NullPointerException();
}
maxProtocolVersion_ = value.getNumber();
onChanged();
return this;
}
/**
*
* Optional: If specified, only support the specified cipher list.
* Otherwise default to the default cipher list supported by Envoy.
*
*
* repeated string cipher_suites = 9;
* @return A list containing the cipherSuites.
*/
public com.google.protobuf.ProtocolStringList
getCipherSuitesList() {
return cipherSuites_.getUnmodifiableView();
}
/**
*
* Optional: If specified, only support the specified cipher list.
* Otherwise default to the default cipher list supported by Envoy.
*
*
* repeated string cipher_suites = 9;
* @return The count of cipherSuites.
*/
public int getCipherSuitesCount() {
return cipherSuites_.size();
}
/**
*
* Optional: If specified, only support the specified cipher list.
* Otherwise default to the default cipher list supported by Envoy.
*
*
* repeated string cipher_suites = 9;
* @param index The index of the element to return.
* @return The cipherSuites at the given index.
*/
public java.lang.String getCipherSuites(int index) {
return cipherSuites_.get(index);
}
/**
*
* Optional: If specified, only support the specified cipher list.
* Otherwise default to the default cipher list supported by Envoy.
*
*
* repeated string cipher_suites = 9;
* @param index The index of the value to return.
* @return The bytes of the cipherSuites at the given index.
*/
public com.google.protobuf.ByteString
getCipherSuitesBytes(int index) {
return cipherSuites_.getByteString(index);
}
/**
*
* Optional: If specified, only support the specified cipher list.
* Otherwise default to the default cipher list supported by Envoy.
*
*
* repeated string cipher_suites = 9;
* @param index The index to set the value at.
* @param value The cipherSuites to set.
* @return This builder for chaining.
*/
public Builder setCipherSuites(
int index, java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
ensureCipherSuitesIsMutable();
cipherSuites_.set(index, value);
onChanged();
return this;
}
/**
*
* Optional: If specified, only support the specified cipher list.
* Otherwise default to the default cipher list supported by Envoy.
*
*
* repeated string cipher_suites = 9;
* @param value The cipherSuites to add.
* @return This builder for chaining.
*/
public Builder addCipherSuites(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
ensureCipherSuitesIsMutable();
cipherSuites_.add(value);
onChanged();
return this;
}
/**
*
* Optional: If specified, only support the specified cipher list.
* Otherwise default to the default cipher list supported by Envoy.
*
*
* repeated string cipher_suites = 9;
* @param values The cipherSuites to add.
* @return This builder for chaining.
*/
public Builder addAllCipherSuites(
java.lang.Iterable values) {
ensureCipherSuitesIsMutable();
com.google.protobuf.AbstractMessageLite.Builder.addAll(
values, cipherSuites_);
onChanged();
return this;
}
/**
*
* Optional: If specified, only support the specified cipher list.
* Otherwise default to the default cipher list supported by Envoy.
*