Package namespace.cloud.compute.v1beta
Class Compute.Ingress.Builder
java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<Compute.Ingress.Builder>
com.google.protobuf.GeneratedMessage.Builder<Compute.Ingress.Builder>
namespace.cloud.compute.v1beta.Compute.Ingress.Builder
- All Implemented Interfaces:
com.google.protobuf.Message.Builder,com.google.protobuf.MessageLite.Builder,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder,Cloneable,Compute.IngressOrBuilder
- Enclosing class:
Compute.Ingress
public static final class Compute.Ingress.Builder
extends com.google.protobuf.GeneratedMessage.Builder<Compute.Ingress.Builder>
implements Compute.IngressOrBuilder
Describes a platform-managed, Internet-facing endpoint that routes traffic to a service running inside an instance. Use CreateInstanceRequest.ingresses for ports exposed directly by the instance, including native applications on platforms such as macOS. Use ContainerRequest.export_ports for ports owned by containers. Traffic and TLS boundaries: ``` HTTP [client] --HTTPS------> [Namespace ingress] --HTTP--> [backend] TCP [client] --TLS/mTLS---> [Namespace ingress] --TCP---> [backend] TLS [client] --TLS (routed by SNI, not terminated)------> [backend] ``` Each generated server name routes only to its declared instance and port; no other instance ports are exposed by that ingress. In HTTP and TCP modes, TLS terminates at Namespace and the ingress-to-backend protocol is cleartext HTTP or TCP. TLS passthrough preserves end-to-end encryption: Namespace uses the SNI hostname for routing but does not terminate TLS. HTTP requests require a valid Namespace bearer token with access to the instance by default. HttpMatchRule can explicitly make matching requests unauthenticated. TCP defaults to requiring a Namespace-issued mTLS client certificate with access to the instance; NONE allows any TLS client to connect. In TLS passthrough mode the backend is responsible for server and client authentication.Protobuf type
namespace.cloud.compute.v1beta.Ingress-
Method Summary
Modifier and TypeMethodDescriptionaddAllHttpMatchRule(Iterable<? extends Compute.HttpMatchRule> values) HTTP routing and authentication rules.addHttpMatchRule(int index, Compute.HttpMatchRule value) HTTP routing and authentication rules.addHttpMatchRule(int index, Compute.HttpMatchRule.Builder builderForValue) HTTP routing and authentication rules.HTTP routing and authentication rules.addHttpMatchRule(Compute.HttpMatchRule.Builder builderForValue) HTTP routing and authentication rules.HTTP routing and authentication rules.addHttpMatchRuleBuilder(int index) HTTP routing and authentication rules.build()clear()Configures client authentication in TCP mode.HTTP routing and authentication rules.The ingress behavior.The name used to generate the Internet-facing server name.The port the instance is listening on.Routes all first-level subdomains of the instance wildcard domain to this ingress.Configures client authentication in TCP mode.intConfigures client authentication in TCP mode.static final com.google.protobuf.Descriptors.Descriptorcom.google.protobuf.Descriptors.DescriptorgetHttpMatchRule(int index) HTTP routing and authentication rules.getHttpMatchRuleBuilder(int index) HTTP routing and authentication rules.HTTP routing and authentication rules.intHTTP routing and authentication rules.HTTP routing and authentication rules.getHttpMatchRuleOrBuilder(int index) HTTP routing and authentication rules.List<? extends Compute.HttpMatchRuleOrBuilder> HTTP routing and authentication rules.getMode()The ingress behavior.intThe ingress behavior.getName()The name used to generate the Internet-facing server name.com.google.protobuf.ByteStringThe name used to generate the Internet-facing server name.intgetPort()The port the instance is listening on.booleanRoutes all first-level subdomains of the instance wildcard domain to this ingress.protected com.google.protobuf.GeneratedMessage.FieldAccessorTablefinal booleanmergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) mergeFrom(com.google.protobuf.Message other) mergeFrom(Compute.Ingress other) removeHttpMatchRule(int index) HTTP routing and authentication rules.Configures client authentication in TCP mode.setClientAuthenticationValue(int value) Configures client authentication in TCP mode.setHttpMatchRule(int index, Compute.HttpMatchRule value) HTTP routing and authentication rules.setHttpMatchRule(int index, Compute.HttpMatchRule.Builder builderForValue) HTTP routing and authentication rules.setMode(Compute.Ingress.Mode value) The ingress behavior.setModeValue(int value) The ingress behavior.The name used to generate the Internet-facing server name.setNameBytes(com.google.protobuf.ByteString value) The name used to generate the Internet-facing server name.setPort(int value) The port the instance is listening on.setWildcard(boolean value) Routes all first-level subdomains of the instance wildcard domain to this ingress.Methods inherited from class com.google.protobuf.GeneratedMessage.Builder
addRepeatedField, clearField, clearOneof, clone, getAllFields, getField, getFieldBuilder, getOneofFieldDescriptor, getParentForChildren, getRepeatedField, getRepeatedFieldBuilder, getRepeatedFieldCount, getUnknownFields, getUnknownFieldSetBuilder, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, internalGetMutableMapField, internalGetMutableMapFieldReflection, isClean, markClean, mergeUnknownFields, mergeUnknownLengthDelimitedField, mergeUnknownVarintField, newBuilderForField, onBuilt, onChanged, parseUnknownField, setField, setRepeatedField, setUnknownFields, setUnknownFieldSetBuilder, setUnknownFieldsProto3Methods inherited from class com.google.protobuf.AbstractMessage.Builder
findInitializationErrors, getInitializationErrorString, internalMergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toStringMethods inherited from class com.google.protobuf.AbstractMessageLite.Builder
addAll, addAll, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, newUninitializedMessageExceptionMethods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.google.protobuf.Message.Builder
mergeDelimitedFrom, mergeDelimitedFromMethods inherited from interface com.google.protobuf.MessageLite.Builder
mergeFromMethods inherited from interface com.google.protobuf.MessageOrBuilder
findInitializationErrors, getAllFields, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
-
Method Details
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() -
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()- Specified by:
internalGetFieldAccessorTablein classcom.google.protobuf.GeneratedMessage.Builder<Compute.Ingress.Builder>
-
clear
- Specified by:
clearin interfacecom.google.protobuf.Message.Builder- Specified by:
clearin interfacecom.google.protobuf.MessageLite.Builder- Overrides:
clearin classcom.google.protobuf.GeneratedMessage.Builder<Compute.Ingress.Builder>
-
getDescriptorForType
public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()- Specified by:
getDescriptorForTypein interfacecom.google.protobuf.Message.Builder- Specified by:
getDescriptorForTypein interfacecom.google.protobuf.MessageOrBuilder- Overrides:
getDescriptorForTypein classcom.google.protobuf.GeneratedMessage.Builder<Compute.Ingress.Builder>
-
getDefaultInstanceForType
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-
build
- Specified by:
buildin interfacecom.google.protobuf.Message.Builder- Specified by:
buildin interfacecom.google.protobuf.MessageLite.Builder
-
buildPartial
- Specified by:
buildPartialin interfacecom.google.protobuf.Message.Builder- Specified by:
buildPartialin interfacecom.google.protobuf.MessageLite.Builder
-
mergeFrom
- Specified by:
mergeFromin interfacecom.google.protobuf.Message.Builder- Overrides:
mergeFromin classcom.google.protobuf.AbstractMessage.Builder<Compute.Ingress.Builder>
-
mergeFrom
-
isInitialized
public final boolean isInitialized()- Specified by:
isInitializedin interfacecom.google.protobuf.MessageLiteOrBuilder- Overrides:
isInitializedin classcom.google.protobuf.GeneratedMessage.Builder<Compute.Ingress.Builder>
-
mergeFrom
public Compute.Ingress.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Specified by:
mergeFromin interfacecom.google.protobuf.Message.Builder- Specified by:
mergeFromin interfacecom.google.protobuf.MessageLite.Builder- Overrides:
mergeFromin classcom.google.protobuf.AbstractMessage.Builder<Compute.Ingress.Builder>- Throws:
IOException
-
getName
The name used to generate the Internet-facing server name.
string name = 1;- Specified by:
getNamein interfaceCompute.IngressOrBuilder- Returns:
- The name.
-
getNameBytes
public com.google.protobuf.ByteString getNameBytes()The name used to generate the Internet-facing server name.
string name = 1;- Specified by:
getNameBytesin interfaceCompute.IngressOrBuilder- Returns:
- The bytes for name.
-
setName
The name used to generate the Internet-facing server name.
string name = 1;- Parameters:
value- The name to set.- Returns:
- This builder for chaining.
-
clearName
The name used to generate the Internet-facing server name.
string name = 1;- Returns:
- This builder for chaining.
-
setNameBytes
The name used to generate the Internet-facing server name.
string name = 1;- Parameters:
value- The bytes for name to set.- Returns:
- This builder for chaining.
-
getModeValue
public int getModeValue()The ingress behavior. Must be set.
.namespace.cloud.compute.v1beta.Ingress.Mode mode = 2;- Specified by:
getModeValuein interfaceCompute.IngressOrBuilder- Returns:
- The enum numeric value on the wire for mode.
-
setModeValue
The ingress behavior. Must be set.
.namespace.cloud.compute.v1beta.Ingress.Mode mode = 2;- Parameters:
value- The enum numeric value on the wire for mode to set.- Returns:
- This builder for chaining.
-
getMode
The ingress behavior. Must be set.
.namespace.cloud.compute.v1beta.Ingress.Mode mode = 2;- Specified by:
getModein interfaceCompute.IngressOrBuilder- Returns:
- The mode.
-
setMode
The ingress behavior. Must be set.
.namespace.cloud.compute.v1beta.Ingress.Mode mode = 2;- Parameters:
value- The mode to set.- Returns:
- This builder for chaining.
-
clearMode
The ingress behavior. Must be set.
.namespace.cloud.compute.v1beta.Ingress.Mode mode = 2;- Returns:
- This builder for chaining.
-
getPort
public int getPort()The port the instance is listening on.
int32 port = 3;- Specified by:
getPortin interfaceCompute.IngressOrBuilder- Returns:
- The port.
-
setPort
The port the instance is listening on.
int32 port = 3;- Parameters:
value- The port to set.- Returns:
- This builder for chaining.
-
clearPort
The port the instance is listening on.
int32 port = 3;- Returns:
- This builder for chaining.
-
getHttpMatchRuleList
HTTP routing and authentication rules. Only supported in HTTP mode.
repeated .namespace.cloud.compute.v1beta.HttpMatchRule http_match_rule = 5;- Specified by:
getHttpMatchRuleListin interfaceCompute.IngressOrBuilder
-
getHttpMatchRuleCount
public int getHttpMatchRuleCount()HTTP routing and authentication rules. Only supported in HTTP mode.
repeated .namespace.cloud.compute.v1beta.HttpMatchRule http_match_rule = 5;- Specified by:
getHttpMatchRuleCountin interfaceCompute.IngressOrBuilder
-
getHttpMatchRule
HTTP routing and authentication rules. Only supported in HTTP mode.
repeated .namespace.cloud.compute.v1beta.HttpMatchRule http_match_rule = 5;- Specified by:
getHttpMatchRulein interfaceCompute.IngressOrBuilder
-
setHttpMatchRule
HTTP routing and authentication rules. Only supported in HTTP mode.
repeated .namespace.cloud.compute.v1beta.HttpMatchRule http_match_rule = 5; -
setHttpMatchRule
public Compute.Ingress.Builder setHttpMatchRule(int index, Compute.HttpMatchRule.Builder builderForValue) HTTP routing and authentication rules. Only supported in HTTP mode.
repeated .namespace.cloud.compute.v1beta.HttpMatchRule http_match_rule = 5; -
addHttpMatchRule
HTTP routing and authentication rules. Only supported in HTTP mode.
repeated .namespace.cloud.compute.v1beta.HttpMatchRule http_match_rule = 5; -
addHttpMatchRule
HTTP routing and authentication rules. Only supported in HTTP mode.
repeated .namespace.cloud.compute.v1beta.HttpMatchRule http_match_rule = 5; -
addHttpMatchRule
HTTP routing and authentication rules. Only supported in HTTP mode.
repeated .namespace.cloud.compute.v1beta.HttpMatchRule http_match_rule = 5; -
addHttpMatchRule
public Compute.Ingress.Builder addHttpMatchRule(int index, Compute.HttpMatchRule.Builder builderForValue) HTTP routing and authentication rules. Only supported in HTTP mode.
repeated .namespace.cloud.compute.v1beta.HttpMatchRule http_match_rule = 5; -
addAllHttpMatchRule
public Compute.Ingress.Builder addAllHttpMatchRule(Iterable<? extends Compute.HttpMatchRule> values) HTTP routing and authentication rules. Only supported in HTTP mode.
repeated .namespace.cloud.compute.v1beta.HttpMatchRule http_match_rule = 5; -
clearHttpMatchRule
HTTP routing and authentication rules. Only supported in HTTP mode.
repeated .namespace.cloud.compute.v1beta.HttpMatchRule http_match_rule = 5; -
removeHttpMatchRule
HTTP routing and authentication rules. Only supported in HTTP mode.
repeated .namespace.cloud.compute.v1beta.HttpMatchRule http_match_rule = 5; -
getHttpMatchRuleBuilder
HTTP routing and authentication rules. Only supported in HTTP mode.
repeated .namespace.cloud.compute.v1beta.HttpMatchRule http_match_rule = 5; -
getHttpMatchRuleOrBuilder
HTTP routing and authentication rules. Only supported in HTTP mode.
repeated .namespace.cloud.compute.v1beta.HttpMatchRule http_match_rule = 5;- Specified by:
getHttpMatchRuleOrBuilderin interfaceCompute.IngressOrBuilder
-
getHttpMatchRuleOrBuilderList
HTTP routing and authentication rules. Only supported in HTTP mode.
repeated .namespace.cloud.compute.v1beta.HttpMatchRule http_match_rule = 5;- Specified by:
getHttpMatchRuleOrBuilderListin interfaceCompute.IngressOrBuilder
-
addHttpMatchRuleBuilder
HTTP routing and authentication rules. Only supported in HTTP mode.
repeated .namespace.cloud.compute.v1beta.HttpMatchRule http_match_rule = 5; -
addHttpMatchRuleBuilder
HTTP routing and authentication rules. Only supported in HTTP mode.
repeated .namespace.cloud.compute.v1beta.HttpMatchRule http_match_rule = 5; -
getHttpMatchRuleBuilderList
HTTP routing and authentication rules. Only supported in HTTP mode.
repeated .namespace.cloud.compute.v1beta.HttpMatchRule http_match_rule = 5; -
getWildcard
public boolean getWildcard()Routes all first-level subdomains of the instance wildcard domain to this ingress. Requires the instance wildcard domain to be enabled via experimental.enable_wildcard_domain. Only supported in HTTP mode and mutually exclusive with name.
bool wildcard = 6;- Specified by:
getWildcardin interfaceCompute.IngressOrBuilder- Returns:
- The wildcard.
-
setWildcard
Routes all first-level subdomains of the instance wildcard domain to this ingress. Requires the instance wildcard domain to be enabled via experimental.enable_wildcard_domain. Only supported in HTTP mode and mutually exclusive with name.
bool wildcard = 6;- Parameters:
value- The wildcard to set.- Returns:
- This builder for chaining.
-
clearWildcard
Routes all first-level subdomains of the instance wildcard domain to this ingress. Requires the instance wildcard domain to be enabled via experimental.enable_wildcard_domain. Only supported in HTTP mode and mutually exclusive with name.
bool wildcard = 6;- Returns:
- This builder for chaining.
-
getClientAuthenticationValue
public int getClientAuthenticationValue()Configures client authentication in TCP mode. MTLS is incompatible with TLS_PASSTHROUGH, where the backend terminates and authenticates TLS; NONE and UNSPECIFIED have equivalent behavior in passthrough mode. Must not be set in HTTP mode. TCP defaults to requiring mTLS.
.namespace.cloud.compute.v1beta.IngressClientAuthentication client_authentication = 7;- Specified by:
getClientAuthenticationValuein interfaceCompute.IngressOrBuilder- Returns:
- The enum numeric value on the wire for clientAuthentication.
-
setClientAuthenticationValue
Configures client authentication in TCP mode. MTLS is incompatible with TLS_PASSTHROUGH, where the backend terminates and authenticates TLS; NONE and UNSPECIFIED have equivalent behavior in passthrough mode. Must not be set in HTTP mode. TCP defaults to requiring mTLS.
.namespace.cloud.compute.v1beta.IngressClientAuthentication client_authentication = 7;- Parameters:
value- The enum numeric value on the wire for clientAuthentication to set.- Returns:
- This builder for chaining.
-
getClientAuthentication
Configures client authentication in TCP mode. MTLS is incompatible with TLS_PASSTHROUGH, where the backend terminates and authenticates TLS; NONE and UNSPECIFIED have equivalent behavior in passthrough mode. Must not be set in HTTP mode. TCP defaults to requiring mTLS.
.namespace.cloud.compute.v1beta.IngressClientAuthentication client_authentication = 7;- Specified by:
getClientAuthenticationin interfaceCompute.IngressOrBuilder- Returns:
- The clientAuthentication.
-
setClientAuthentication
Configures client authentication in TCP mode. MTLS is incompatible with TLS_PASSTHROUGH, where the backend terminates and authenticates TLS; NONE and UNSPECIFIED have equivalent behavior in passthrough mode. Must not be set in HTTP mode. TCP defaults to requiring mTLS.
.namespace.cloud.compute.v1beta.IngressClientAuthentication client_authentication = 7;- Parameters:
value- The clientAuthentication to set.- Returns:
- This builder for chaining.
-
clearClientAuthentication
Configures client authentication in TCP mode. MTLS is incompatible with TLS_PASSTHROUGH, where the backend terminates and authenticates TLS; NONE and UNSPECIFIED have equivalent behavior in passthrough mode. Must not be set in HTTP mode. TCP defaults to requiring mTLS.
.namespace.cloud.compute.v1beta.IngressClientAuthentication client_authentication = 7;- Returns:
- This builder for chaining.
-