• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright 2020 Google LLC
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *     https://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 // Generated by the protocol buffer compiler.  DO NOT EDIT!
17 // source: google/cloud/compute/v1/compute.proto
18 
19 package com.google.cloud.compute.v1;
20 
21 public interface ForwardingRuleOrBuilder
22     extends
23     // @@protoc_insertion_point(interface_extends:google.cloud.compute.v1.ForwardingRule)
24     com.google.protobuf.MessageOrBuilder {
25 
26   /**
27    *
28    *
29    * <pre>
30    * IP address for which this forwarding rule accepts traffic. When a client sends traffic to this IP address, the forwarding rule directs the traffic to the referenced target or backendService. While creating a forwarding rule, specifying an IPAddress is required under the following circumstances: - When the target is set to targetGrpcProxy and validateForProxyless is set to true, the IPAddress should be set to 0.0.0.0. - When the target is a Private Service Connect Google APIs bundle, you must specify an IPAddress. Otherwise, you can optionally specify an IP address that references an existing static (reserved) IP address resource. When omitted, Google Cloud assigns an ephemeral IP address. Use one of the following formats to specify an IP address while creating a forwarding rule: * IP address number, as in `100.1.2.3` * IPv6 address range, as in `2600:1234::/96` * Full resource URL, as in https://www.googleapis.com/compute/v1/projects/ project_id/regions/region/addresses/address-name * Partial URL or by name, as in: - projects/project_id/regions/region/addresses/address-name - regions/region/addresses/address-name - global/addresses/address-name - address-name The forwarding rule's target or backendService, and in most cases, also the loadBalancingScheme, determine the type of IP address that you can use. For detailed information, see [IP address specifications](https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#ip_address_specifications). When reading an IPAddress, the API always returns the IP address number.
31    * </pre>
32    *
33    * <code>optional string I_p_address = 42976943;</code>
34    *
35    * @return Whether the iPAddress field is set.
36    */
hasIPAddress()37   boolean hasIPAddress();
38   /**
39    *
40    *
41    * <pre>
42    * IP address for which this forwarding rule accepts traffic. When a client sends traffic to this IP address, the forwarding rule directs the traffic to the referenced target or backendService. While creating a forwarding rule, specifying an IPAddress is required under the following circumstances: - When the target is set to targetGrpcProxy and validateForProxyless is set to true, the IPAddress should be set to 0.0.0.0. - When the target is a Private Service Connect Google APIs bundle, you must specify an IPAddress. Otherwise, you can optionally specify an IP address that references an existing static (reserved) IP address resource. When omitted, Google Cloud assigns an ephemeral IP address. Use one of the following formats to specify an IP address while creating a forwarding rule: * IP address number, as in `100.1.2.3` * IPv6 address range, as in `2600:1234::/96` * Full resource URL, as in https://www.googleapis.com/compute/v1/projects/ project_id/regions/region/addresses/address-name * Partial URL or by name, as in: - projects/project_id/regions/region/addresses/address-name - regions/region/addresses/address-name - global/addresses/address-name - address-name The forwarding rule's target or backendService, and in most cases, also the loadBalancingScheme, determine the type of IP address that you can use. For detailed information, see [IP address specifications](https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#ip_address_specifications). When reading an IPAddress, the API always returns the IP address number.
43    * </pre>
44    *
45    * <code>optional string I_p_address = 42976943;</code>
46    *
47    * @return The iPAddress.
48    */
getIPAddress()49   java.lang.String getIPAddress();
50   /**
51    *
52    *
53    * <pre>
54    * IP address for which this forwarding rule accepts traffic. When a client sends traffic to this IP address, the forwarding rule directs the traffic to the referenced target or backendService. While creating a forwarding rule, specifying an IPAddress is required under the following circumstances: - When the target is set to targetGrpcProxy and validateForProxyless is set to true, the IPAddress should be set to 0.0.0.0. - When the target is a Private Service Connect Google APIs bundle, you must specify an IPAddress. Otherwise, you can optionally specify an IP address that references an existing static (reserved) IP address resource. When omitted, Google Cloud assigns an ephemeral IP address. Use one of the following formats to specify an IP address while creating a forwarding rule: * IP address number, as in `100.1.2.3` * IPv6 address range, as in `2600:1234::/96` * Full resource URL, as in https://www.googleapis.com/compute/v1/projects/ project_id/regions/region/addresses/address-name * Partial URL or by name, as in: - projects/project_id/regions/region/addresses/address-name - regions/region/addresses/address-name - global/addresses/address-name - address-name The forwarding rule's target or backendService, and in most cases, also the loadBalancingScheme, determine the type of IP address that you can use. For detailed information, see [IP address specifications](https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#ip_address_specifications). When reading an IPAddress, the API always returns the IP address number.
55    * </pre>
56    *
57    * <code>optional string I_p_address = 42976943;</code>
58    *
59    * @return The bytes for iPAddress.
60    */
getIPAddressBytes()61   com.google.protobuf.ByteString getIPAddressBytes();
62 
63   /**
64    *
65    *
66    * <pre>
67    * The IP protocol to which this rule applies. For protocol forwarding, valid options are TCP, UDP, ESP, AH, SCTP, ICMP and L3_DEFAULT. The valid IP protocols are different for different load balancing products as described in [Load balancing features](https://cloud.google.com/load-balancing/docs/features#protocols_from_the_load_balancer_to_the_backends).
68    * Check the IPProtocolEnum enum for the list of possible values.
69    * </pre>
70    *
71    * <code>optional string I_p_protocol = 488094525;</code>
72    *
73    * @return Whether the iPProtocol field is set.
74    */
hasIPProtocol()75   boolean hasIPProtocol();
76   /**
77    *
78    *
79    * <pre>
80    * The IP protocol to which this rule applies. For protocol forwarding, valid options are TCP, UDP, ESP, AH, SCTP, ICMP and L3_DEFAULT. The valid IP protocols are different for different load balancing products as described in [Load balancing features](https://cloud.google.com/load-balancing/docs/features#protocols_from_the_load_balancer_to_the_backends).
81    * Check the IPProtocolEnum enum for the list of possible values.
82    * </pre>
83    *
84    * <code>optional string I_p_protocol = 488094525;</code>
85    *
86    * @return The iPProtocol.
87    */
getIPProtocol()88   java.lang.String getIPProtocol();
89   /**
90    *
91    *
92    * <pre>
93    * The IP protocol to which this rule applies. For protocol forwarding, valid options are TCP, UDP, ESP, AH, SCTP, ICMP and L3_DEFAULT. The valid IP protocols are different for different load balancing products as described in [Load balancing features](https://cloud.google.com/load-balancing/docs/features#protocols_from_the_load_balancer_to_the_backends).
94    * Check the IPProtocolEnum enum for the list of possible values.
95    * </pre>
96    *
97    * <code>optional string I_p_protocol = 488094525;</code>
98    *
99    * @return The bytes for iPProtocol.
100    */
getIPProtocolBytes()101   com.google.protobuf.ByteString getIPProtocolBytes();
102 
103   /**
104    *
105    *
106    * <pre>
107    * This field can only be used: - If IPProtocol is one of TCP, UDP, or SCTP. - By internal TCP/UDP load balancers, backend service-based network load balancers, and internal and external protocol forwarding. Set this field to true to allow packets addressed to any port or packets lacking destination port information (for example, UDP fragments after the first fragment) to be forwarded to the backends configured with this forwarding rule. The ports, port_range, and allPorts fields are mutually exclusive.
108    * </pre>
109    *
110    * <code>optional bool all_ports = 445175796;</code>
111    *
112    * @return Whether the allPorts field is set.
113    */
hasAllPorts()114   boolean hasAllPorts();
115   /**
116    *
117    *
118    * <pre>
119    * This field can only be used: - If IPProtocol is one of TCP, UDP, or SCTP. - By internal TCP/UDP load balancers, backend service-based network load balancers, and internal and external protocol forwarding. Set this field to true to allow packets addressed to any port or packets lacking destination port information (for example, UDP fragments after the first fragment) to be forwarded to the backends configured with this forwarding rule. The ports, port_range, and allPorts fields are mutually exclusive.
120    * </pre>
121    *
122    * <code>optional bool all_ports = 445175796;</code>
123    *
124    * @return The allPorts.
125    */
getAllPorts()126   boolean getAllPorts();
127 
128   /**
129    *
130    *
131    * <pre>
132    * This field is used along with the backend_service field for internal load balancing or with the target field for internal TargetInstance. If the field is set to TRUE, clients can access ILB from all regions. Otherwise only allows access from clients in the same region as the internal load balancer.
133    * </pre>
134    *
135    * <code>optional bool allow_global_access = 499409674;</code>
136    *
137    * @return Whether the allowGlobalAccess field is set.
138    */
hasAllowGlobalAccess()139   boolean hasAllowGlobalAccess();
140   /**
141    *
142    *
143    * <pre>
144    * This field is used along with the backend_service field for internal load balancing or with the target field for internal TargetInstance. If the field is set to TRUE, clients can access ILB from all regions. Otherwise only allows access from clients in the same region as the internal load balancer.
145    * </pre>
146    *
147    * <code>optional bool allow_global_access = 499409674;</code>
148    *
149    * @return The allowGlobalAccess.
150    */
getAllowGlobalAccess()151   boolean getAllowGlobalAccess();
152 
153   /**
154    *
155    *
156    * <pre>
157    * Identifies the backend service to which the forwarding rule sends traffic. Required for Internal TCP/UDP Load Balancing and Network Load Balancing; must be omitted for all other load balancer types.
158    * </pre>
159    *
160    * <code>optional string backend_service = 306946058;</code>
161    *
162    * @return Whether the backendService field is set.
163    */
hasBackendService()164   boolean hasBackendService();
165   /**
166    *
167    *
168    * <pre>
169    * Identifies the backend service to which the forwarding rule sends traffic. Required for Internal TCP/UDP Load Balancing and Network Load Balancing; must be omitted for all other load balancer types.
170    * </pre>
171    *
172    * <code>optional string backend_service = 306946058;</code>
173    *
174    * @return The backendService.
175    */
getBackendService()176   java.lang.String getBackendService();
177   /**
178    *
179    *
180    * <pre>
181    * Identifies the backend service to which the forwarding rule sends traffic. Required for Internal TCP/UDP Load Balancing and Network Load Balancing; must be omitted for all other load balancer types.
182    * </pre>
183    *
184    * <code>optional string backend_service = 306946058;</code>
185    *
186    * @return The bytes for backendService.
187    */
getBackendServiceBytes()188   com.google.protobuf.ByteString getBackendServiceBytes();
189 
190   /**
191    *
192    *
193    * <pre>
194    * [Output Only] The URL for the corresponding base Forwarding Rule. By base Forwarding Rule, we mean the Forwarding Rule that has the same IP address, protocol, and port settings with the current Forwarding Rule, but without sourceIPRanges specified. Always empty if the current Forwarding Rule does not have sourceIPRanges specified.
195    * </pre>
196    *
197    * <code>optional string base_forwarding_rule = 524873104;</code>
198    *
199    * @return Whether the baseForwardingRule field is set.
200    */
hasBaseForwardingRule()201   boolean hasBaseForwardingRule();
202   /**
203    *
204    *
205    * <pre>
206    * [Output Only] The URL for the corresponding base Forwarding Rule. By base Forwarding Rule, we mean the Forwarding Rule that has the same IP address, protocol, and port settings with the current Forwarding Rule, but without sourceIPRanges specified. Always empty if the current Forwarding Rule does not have sourceIPRanges specified.
207    * </pre>
208    *
209    * <code>optional string base_forwarding_rule = 524873104;</code>
210    *
211    * @return The baseForwardingRule.
212    */
getBaseForwardingRule()213   java.lang.String getBaseForwardingRule();
214   /**
215    *
216    *
217    * <pre>
218    * [Output Only] The URL for the corresponding base Forwarding Rule. By base Forwarding Rule, we mean the Forwarding Rule that has the same IP address, protocol, and port settings with the current Forwarding Rule, but without sourceIPRanges specified. Always empty if the current Forwarding Rule does not have sourceIPRanges specified.
219    * </pre>
220    *
221    * <code>optional string base_forwarding_rule = 524873104;</code>
222    *
223    * @return The bytes for baseForwardingRule.
224    */
getBaseForwardingRuleBytes()225   com.google.protobuf.ByteString getBaseForwardingRuleBytes();
226 
227   /**
228    *
229    *
230    * <pre>
231    * [Output Only] Creation timestamp in RFC3339 text format.
232    * </pre>
233    *
234    * <code>optional string creation_timestamp = 30525366;</code>
235    *
236    * @return Whether the creationTimestamp field is set.
237    */
hasCreationTimestamp()238   boolean hasCreationTimestamp();
239   /**
240    *
241    *
242    * <pre>
243    * [Output Only] Creation timestamp in RFC3339 text format.
244    * </pre>
245    *
246    * <code>optional string creation_timestamp = 30525366;</code>
247    *
248    * @return The creationTimestamp.
249    */
getCreationTimestamp()250   java.lang.String getCreationTimestamp();
251   /**
252    *
253    *
254    * <pre>
255    * [Output Only] Creation timestamp in RFC3339 text format.
256    * </pre>
257    *
258    * <code>optional string creation_timestamp = 30525366;</code>
259    *
260    * @return The bytes for creationTimestamp.
261    */
getCreationTimestampBytes()262   com.google.protobuf.ByteString getCreationTimestampBytes();
263 
264   /**
265    *
266    *
267    * <pre>
268    * An optional description of this resource. Provide this property when you create the resource.
269    * </pre>
270    *
271    * <code>optional string description = 422937596;</code>
272    *
273    * @return Whether the description field is set.
274    */
hasDescription()275   boolean hasDescription();
276   /**
277    *
278    *
279    * <pre>
280    * An optional description of this resource. Provide this property when you create the resource.
281    * </pre>
282    *
283    * <code>optional string description = 422937596;</code>
284    *
285    * @return The description.
286    */
getDescription()287   java.lang.String getDescription();
288   /**
289    *
290    *
291    * <pre>
292    * An optional description of this resource. Provide this property when you create the resource.
293    * </pre>
294    *
295    * <code>optional string description = 422937596;</code>
296    *
297    * @return The bytes for description.
298    */
getDescriptionBytes()299   com.google.protobuf.ByteString getDescriptionBytes();
300 
301   /**
302    *
303    *
304    * <pre>
305    * Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a ForwardingRule. Include the fingerprint in patch request to ensure that you do not overwrite changes that were applied from another concurrent request. To see the latest fingerprint, make a get() request to retrieve a ForwardingRule.
306    * </pre>
307    *
308    * <code>optional string fingerprint = 234678500;</code>
309    *
310    * @return Whether the fingerprint field is set.
311    */
hasFingerprint()312   boolean hasFingerprint();
313   /**
314    *
315    *
316    * <pre>
317    * Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a ForwardingRule. Include the fingerprint in patch request to ensure that you do not overwrite changes that were applied from another concurrent request. To see the latest fingerprint, make a get() request to retrieve a ForwardingRule.
318    * </pre>
319    *
320    * <code>optional string fingerprint = 234678500;</code>
321    *
322    * @return The fingerprint.
323    */
getFingerprint()324   java.lang.String getFingerprint();
325   /**
326    *
327    *
328    * <pre>
329    * Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a ForwardingRule. Include the fingerprint in patch request to ensure that you do not overwrite changes that were applied from another concurrent request. To see the latest fingerprint, make a get() request to retrieve a ForwardingRule.
330    * </pre>
331    *
332    * <code>optional string fingerprint = 234678500;</code>
333    *
334    * @return The bytes for fingerprint.
335    */
getFingerprintBytes()336   com.google.protobuf.ByteString getFingerprintBytes();
337 
338   /**
339    *
340    *
341    * <pre>
342    * [Output Only] The unique identifier for the resource. This identifier is defined by the server.
343    * </pre>
344    *
345    * <code>optional uint64 id = 3355;</code>
346    *
347    * @return Whether the id field is set.
348    */
hasId()349   boolean hasId();
350   /**
351    *
352    *
353    * <pre>
354    * [Output Only] The unique identifier for the resource. This identifier is defined by the server.
355    * </pre>
356    *
357    * <code>optional uint64 id = 3355;</code>
358    *
359    * @return The id.
360    */
getId()361   long getId();
362 
363   /**
364    *
365    *
366    * <pre>
367    * The IP Version that will be used by this forwarding rule. Valid options are IPV4 or IPV6.
368    * Check the IpVersion enum for the list of possible values.
369    * </pre>
370    *
371    * <code>optional string ip_version = 294959552;</code>
372    *
373    * @return Whether the ipVersion field is set.
374    */
hasIpVersion()375   boolean hasIpVersion();
376   /**
377    *
378    *
379    * <pre>
380    * The IP Version that will be used by this forwarding rule. Valid options are IPV4 or IPV6.
381    * Check the IpVersion enum for the list of possible values.
382    * </pre>
383    *
384    * <code>optional string ip_version = 294959552;</code>
385    *
386    * @return The ipVersion.
387    */
getIpVersion()388   java.lang.String getIpVersion();
389   /**
390    *
391    *
392    * <pre>
393    * The IP Version that will be used by this forwarding rule. Valid options are IPV4 or IPV6.
394    * Check the IpVersion enum for the list of possible values.
395    * </pre>
396    *
397    * <code>optional string ip_version = 294959552;</code>
398    *
399    * @return The bytes for ipVersion.
400    */
getIpVersionBytes()401   com.google.protobuf.ByteString getIpVersionBytes();
402 
403   /**
404    *
405    *
406    * <pre>
407    * Indicates whether or not this load balancer can be used as a collector for packet mirroring. To prevent mirroring loops, instances behind this load balancer will not have their traffic mirrored even if a PacketMirroring rule applies to them. This can only be set to true for load balancers that have their loadBalancingScheme set to INTERNAL.
408    * </pre>
409    *
410    * <code>optional bool is_mirroring_collector = 119255164;</code>
411    *
412    * @return Whether the isMirroringCollector field is set.
413    */
hasIsMirroringCollector()414   boolean hasIsMirroringCollector();
415   /**
416    *
417    *
418    * <pre>
419    * Indicates whether or not this load balancer can be used as a collector for packet mirroring. To prevent mirroring loops, instances behind this load balancer will not have their traffic mirrored even if a PacketMirroring rule applies to them. This can only be set to true for load balancers that have their loadBalancingScheme set to INTERNAL.
420    * </pre>
421    *
422    * <code>optional bool is_mirroring_collector = 119255164;</code>
423    *
424    * @return The isMirroringCollector.
425    */
getIsMirroringCollector()426   boolean getIsMirroringCollector();
427 
428   /**
429    *
430    *
431    * <pre>
432    * [Output Only] Type of the resource. Always compute#forwardingRule for Forwarding Rule resources.
433    * </pre>
434    *
435    * <code>optional string kind = 3292052;</code>
436    *
437    * @return Whether the kind field is set.
438    */
hasKind()439   boolean hasKind();
440   /**
441    *
442    *
443    * <pre>
444    * [Output Only] Type of the resource. Always compute#forwardingRule for Forwarding Rule resources.
445    * </pre>
446    *
447    * <code>optional string kind = 3292052;</code>
448    *
449    * @return The kind.
450    */
getKind()451   java.lang.String getKind();
452   /**
453    *
454    *
455    * <pre>
456    * [Output Only] Type of the resource. Always compute#forwardingRule for Forwarding Rule resources.
457    * </pre>
458    *
459    * <code>optional string kind = 3292052;</code>
460    *
461    * @return The bytes for kind.
462    */
getKindBytes()463   com.google.protobuf.ByteString getKindBytes();
464 
465   /**
466    *
467    *
468    * <pre>
469    * A fingerprint for the labels being applied to this resource, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a ForwardingRule.
470    * </pre>
471    *
472    * <code>optional string label_fingerprint = 178124825;</code>
473    *
474    * @return Whether the labelFingerprint field is set.
475    */
hasLabelFingerprint()476   boolean hasLabelFingerprint();
477   /**
478    *
479    *
480    * <pre>
481    * A fingerprint for the labels being applied to this resource, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a ForwardingRule.
482    * </pre>
483    *
484    * <code>optional string label_fingerprint = 178124825;</code>
485    *
486    * @return The labelFingerprint.
487    */
getLabelFingerprint()488   java.lang.String getLabelFingerprint();
489   /**
490    *
491    *
492    * <pre>
493    * A fingerprint for the labels being applied to this resource, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a ForwardingRule.
494    * </pre>
495    *
496    * <code>optional string label_fingerprint = 178124825;</code>
497    *
498    * @return The bytes for labelFingerprint.
499    */
getLabelFingerprintBytes()500   com.google.protobuf.ByteString getLabelFingerprintBytes();
501 
502   /**
503    *
504    *
505    * <pre>
506    * Labels for this resource. These can only be added or modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.
507    * </pre>
508    *
509    * <code>map&lt;string, string&gt; labels = 500195327;</code>
510    */
getLabelsCount()511   int getLabelsCount();
512   /**
513    *
514    *
515    * <pre>
516    * Labels for this resource. These can only be added or modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.
517    * </pre>
518    *
519    * <code>map&lt;string, string&gt; labels = 500195327;</code>
520    */
containsLabels(java.lang.String key)521   boolean containsLabels(java.lang.String key);
522   /** Use {@link #getLabelsMap()} instead. */
523   @java.lang.Deprecated
getLabels()524   java.util.Map<java.lang.String, java.lang.String> getLabels();
525   /**
526    *
527    *
528    * <pre>
529    * Labels for this resource. These can only be added or modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.
530    * </pre>
531    *
532    * <code>map&lt;string, string&gt; labels = 500195327;</code>
533    */
getLabelsMap()534   java.util.Map<java.lang.String, java.lang.String> getLabelsMap();
535   /**
536    *
537    *
538    * <pre>
539    * Labels for this resource. These can only be added or modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.
540    * </pre>
541    *
542    * <code>map&lt;string, string&gt; labels = 500195327;</code>
543    */
544   /* nullable */
getLabelsOrDefault( java.lang.String key, java.lang.String defaultValue)545   java.lang.String getLabelsOrDefault(
546       java.lang.String key,
547       /* nullable */
548       java.lang.String defaultValue);
549   /**
550    *
551    *
552    * <pre>
553    * Labels for this resource. These can only be added or modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.
554    * </pre>
555    *
556    * <code>map&lt;string, string&gt; labels = 500195327;</code>
557    */
getLabelsOrThrow(java.lang.String key)558   java.lang.String getLabelsOrThrow(java.lang.String key);
559 
560   /**
561    *
562    *
563    * <pre>
564    * Specifies the forwarding rule type. For more information about forwarding rules, refer to Forwarding rule concepts.
565    * Check the LoadBalancingScheme enum for the list of possible values.
566    * </pre>
567    *
568    * <code>optional string load_balancing_scheme = 363890244;</code>
569    *
570    * @return Whether the loadBalancingScheme field is set.
571    */
hasLoadBalancingScheme()572   boolean hasLoadBalancingScheme();
573   /**
574    *
575    *
576    * <pre>
577    * Specifies the forwarding rule type. For more information about forwarding rules, refer to Forwarding rule concepts.
578    * Check the LoadBalancingScheme enum for the list of possible values.
579    * </pre>
580    *
581    * <code>optional string load_balancing_scheme = 363890244;</code>
582    *
583    * @return The loadBalancingScheme.
584    */
getLoadBalancingScheme()585   java.lang.String getLoadBalancingScheme();
586   /**
587    *
588    *
589    * <pre>
590    * Specifies the forwarding rule type. For more information about forwarding rules, refer to Forwarding rule concepts.
591    * Check the LoadBalancingScheme enum for the list of possible values.
592    * </pre>
593    *
594    * <code>optional string load_balancing_scheme = 363890244;</code>
595    *
596    * @return The bytes for loadBalancingScheme.
597    */
getLoadBalancingSchemeBytes()598   com.google.protobuf.ByteString getLoadBalancingSchemeBytes();
599 
600   /**
601    *
602    *
603    * <pre>
604    * Opaque filter criteria used by load balancer to restrict routing configuration to a limited set of xDS compliant clients. In their xDS requests to load balancer, xDS clients present node metadata. When there is a match, the relevant configuration is made available to those proxies. Otherwise, all the resources (e.g. TargetHttpProxy, UrlMap) referenced by the ForwardingRule are not visible to those proxies. For each metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels provided in the metadata. If multiple metadataFilters are specified, all of them need to be satisfied in order to be considered a match. metadataFilters specified here will be applifed before those specified in the UrlMap that this ForwardingRule references. metadataFilters only applies to Loadbalancers that have their loadBalancingScheme set to INTERNAL_SELF_MANAGED.
605    * </pre>
606    *
607    * <code>repeated .google.cloud.compute.v1.MetadataFilter metadata_filters = 464725739;</code>
608    */
getMetadataFiltersList()609   java.util.List<com.google.cloud.compute.v1.MetadataFilter> getMetadataFiltersList();
610   /**
611    *
612    *
613    * <pre>
614    * Opaque filter criteria used by load balancer to restrict routing configuration to a limited set of xDS compliant clients. In their xDS requests to load balancer, xDS clients present node metadata. When there is a match, the relevant configuration is made available to those proxies. Otherwise, all the resources (e.g. TargetHttpProxy, UrlMap) referenced by the ForwardingRule are not visible to those proxies. For each metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels provided in the metadata. If multiple metadataFilters are specified, all of them need to be satisfied in order to be considered a match. metadataFilters specified here will be applifed before those specified in the UrlMap that this ForwardingRule references. metadataFilters only applies to Loadbalancers that have their loadBalancingScheme set to INTERNAL_SELF_MANAGED.
615    * </pre>
616    *
617    * <code>repeated .google.cloud.compute.v1.MetadataFilter metadata_filters = 464725739;</code>
618    */
getMetadataFilters(int index)619   com.google.cloud.compute.v1.MetadataFilter getMetadataFilters(int index);
620   /**
621    *
622    *
623    * <pre>
624    * Opaque filter criteria used by load balancer to restrict routing configuration to a limited set of xDS compliant clients. In their xDS requests to load balancer, xDS clients present node metadata. When there is a match, the relevant configuration is made available to those proxies. Otherwise, all the resources (e.g. TargetHttpProxy, UrlMap) referenced by the ForwardingRule are not visible to those proxies. For each metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels provided in the metadata. If multiple metadataFilters are specified, all of them need to be satisfied in order to be considered a match. metadataFilters specified here will be applifed before those specified in the UrlMap that this ForwardingRule references. metadataFilters only applies to Loadbalancers that have their loadBalancingScheme set to INTERNAL_SELF_MANAGED.
625    * </pre>
626    *
627    * <code>repeated .google.cloud.compute.v1.MetadataFilter metadata_filters = 464725739;</code>
628    */
getMetadataFiltersCount()629   int getMetadataFiltersCount();
630   /**
631    *
632    *
633    * <pre>
634    * Opaque filter criteria used by load balancer to restrict routing configuration to a limited set of xDS compliant clients. In their xDS requests to load balancer, xDS clients present node metadata. When there is a match, the relevant configuration is made available to those proxies. Otherwise, all the resources (e.g. TargetHttpProxy, UrlMap) referenced by the ForwardingRule are not visible to those proxies. For each metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels provided in the metadata. If multiple metadataFilters are specified, all of them need to be satisfied in order to be considered a match. metadataFilters specified here will be applifed before those specified in the UrlMap that this ForwardingRule references. metadataFilters only applies to Loadbalancers that have their loadBalancingScheme set to INTERNAL_SELF_MANAGED.
635    * </pre>
636    *
637    * <code>repeated .google.cloud.compute.v1.MetadataFilter metadata_filters = 464725739;</code>
638    */
639   java.util.List<? extends com.google.cloud.compute.v1.MetadataFilterOrBuilder>
getMetadataFiltersOrBuilderList()640       getMetadataFiltersOrBuilderList();
641   /**
642    *
643    *
644    * <pre>
645    * Opaque filter criteria used by load balancer to restrict routing configuration to a limited set of xDS compliant clients. In their xDS requests to load balancer, xDS clients present node metadata. When there is a match, the relevant configuration is made available to those proxies. Otherwise, all the resources (e.g. TargetHttpProxy, UrlMap) referenced by the ForwardingRule are not visible to those proxies. For each metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels provided in the metadata. If multiple metadataFilters are specified, all of them need to be satisfied in order to be considered a match. metadataFilters specified here will be applifed before those specified in the UrlMap that this ForwardingRule references. metadataFilters only applies to Loadbalancers that have their loadBalancingScheme set to INTERNAL_SELF_MANAGED.
646    * </pre>
647    *
648    * <code>repeated .google.cloud.compute.v1.MetadataFilter metadata_filters = 464725739;</code>
649    */
getMetadataFiltersOrBuilder(int index)650   com.google.cloud.compute.v1.MetadataFilterOrBuilder getMetadataFiltersOrBuilder(int index);
651 
652   /**
653    *
654    *
655    * <pre>
656    * Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. For Private Service Connect forwarding rules that forward traffic to Google APIs, the forwarding rule name must be a 1-20 characters string with lowercase letters and numbers and must start with a letter.
657    * </pre>
658    *
659    * <code>optional string name = 3373707;</code>
660    *
661    * @return Whether the name field is set.
662    */
hasName()663   boolean hasName();
664   /**
665    *
666    *
667    * <pre>
668    * Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. For Private Service Connect forwarding rules that forward traffic to Google APIs, the forwarding rule name must be a 1-20 characters string with lowercase letters and numbers and must start with a letter.
669    * </pre>
670    *
671    * <code>optional string name = 3373707;</code>
672    *
673    * @return The name.
674    */
getName()675   java.lang.String getName();
676   /**
677    *
678    *
679    * <pre>
680    * Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. For Private Service Connect forwarding rules that forward traffic to Google APIs, the forwarding rule name must be a 1-20 characters string with lowercase letters and numbers and must start with a letter.
681    * </pre>
682    *
683    * <code>optional string name = 3373707;</code>
684    *
685    * @return The bytes for name.
686    */
getNameBytes()687   com.google.protobuf.ByteString getNameBytes();
688 
689   /**
690    *
691    *
692    * <pre>
693    * This field is not used for external load balancing. For Internal TCP/UDP Load Balancing, this field identifies the network that the load balanced IP should belong to for this Forwarding Rule. If this field is not specified, the default network will be used. For Private Service Connect forwarding rules that forward traffic to Google APIs, a network must be provided.
694    * </pre>
695    *
696    * <code>optional string network = 232872494;</code>
697    *
698    * @return Whether the network field is set.
699    */
hasNetwork()700   boolean hasNetwork();
701   /**
702    *
703    *
704    * <pre>
705    * This field is not used for external load balancing. For Internal TCP/UDP Load Balancing, this field identifies the network that the load balanced IP should belong to for this Forwarding Rule. If this field is not specified, the default network will be used. For Private Service Connect forwarding rules that forward traffic to Google APIs, a network must be provided.
706    * </pre>
707    *
708    * <code>optional string network = 232872494;</code>
709    *
710    * @return The network.
711    */
getNetwork()712   java.lang.String getNetwork();
713   /**
714    *
715    *
716    * <pre>
717    * This field is not used for external load balancing. For Internal TCP/UDP Load Balancing, this field identifies the network that the load balanced IP should belong to for this Forwarding Rule. If this field is not specified, the default network will be used. For Private Service Connect forwarding rules that forward traffic to Google APIs, a network must be provided.
718    * </pre>
719    *
720    * <code>optional string network = 232872494;</code>
721    *
722    * @return The bytes for network.
723    */
getNetworkBytes()724   com.google.protobuf.ByteString getNetworkBytes();
725 
726   /**
727    *
728    *
729    * <pre>
730    * This signifies the networking tier used for configuring this load balancer and can only take the following values: PREMIUM, STANDARD. For regional ForwardingRule, the valid values are PREMIUM and STANDARD. For GlobalForwardingRule, the valid value is PREMIUM. If this field is not specified, it is assumed to be PREMIUM. If IPAddress is specified, this value must be equal to the networkTier of the Address.
731    * Check the NetworkTier enum for the list of possible values.
732    * </pre>
733    *
734    * <code>optional string network_tier = 517397843;</code>
735    *
736    * @return Whether the networkTier field is set.
737    */
hasNetworkTier()738   boolean hasNetworkTier();
739   /**
740    *
741    *
742    * <pre>
743    * This signifies the networking tier used for configuring this load balancer and can only take the following values: PREMIUM, STANDARD. For regional ForwardingRule, the valid values are PREMIUM and STANDARD. For GlobalForwardingRule, the valid value is PREMIUM. If this field is not specified, it is assumed to be PREMIUM. If IPAddress is specified, this value must be equal to the networkTier of the Address.
744    * Check the NetworkTier enum for the list of possible values.
745    * </pre>
746    *
747    * <code>optional string network_tier = 517397843;</code>
748    *
749    * @return The networkTier.
750    */
getNetworkTier()751   java.lang.String getNetworkTier();
752   /**
753    *
754    *
755    * <pre>
756    * This signifies the networking tier used for configuring this load balancer and can only take the following values: PREMIUM, STANDARD. For regional ForwardingRule, the valid values are PREMIUM and STANDARD. For GlobalForwardingRule, the valid value is PREMIUM. If this field is not specified, it is assumed to be PREMIUM. If IPAddress is specified, this value must be equal to the networkTier of the Address.
757    * Check the NetworkTier enum for the list of possible values.
758    * </pre>
759    *
760    * <code>optional string network_tier = 517397843;</code>
761    *
762    * @return The bytes for networkTier.
763    */
getNetworkTierBytes()764   com.google.protobuf.ByteString getNetworkTierBytes();
765 
766   /**
767    *
768    *
769    * <pre>
770    * This is used in PSC consumer ForwardingRule to control whether it should try to auto-generate a DNS zone or not. Non-PSC forwarding rules do not use this field.
771    * </pre>
772    *
773    * <code>optional bool no_automate_dns_zone = 64546991;</code>
774    *
775    * @return Whether the noAutomateDnsZone field is set.
776    */
hasNoAutomateDnsZone()777   boolean hasNoAutomateDnsZone();
778   /**
779    *
780    *
781    * <pre>
782    * This is used in PSC consumer ForwardingRule to control whether it should try to auto-generate a DNS zone or not. Non-PSC forwarding rules do not use this field.
783    * </pre>
784    *
785    * <code>optional bool no_automate_dns_zone = 64546991;</code>
786    *
787    * @return The noAutomateDnsZone.
788    */
getNoAutomateDnsZone()789   boolean getNoAutomateDnsZone();
790 
791   /**
792    *
793    *
794    * <pre>
795    * This field can only be used: - If IPProtocol is one of TCP, UDP, or SCTP. - By backend service-based network load balancers, target pool-based network load balancers, internal proxy load balancers, external proxy load balancers, Traffic Director, external protocol forwarding, and Classic VPN. Some products have restrictions on what ports can be used. See port specifications for details. Only packets addressed to ports in the specified range will be forwarded to the backends configured with this forwarding rule. The ports, port_range, and allPorts fields are mutually exclusive. For external forwarding rules, two or more forwarding rules cannot use the same [IPAddress, IPProtocol] pair, and cannot have overlapping portRanges. For internal forwarding rules within the same VPC network, two or more forwarding rules cannot use the same [IPAddress, IPProtocol] pair, and cannot have overlapping portRanges. &#64;pattern: &#92;&#92;d+(?:-&#92;&#92;d+)?
796    * </pre>
797    *
798    * <code>optional string port_range = 217518079;</code>
799    *
800    * @return Whether the portRange field is set.
801    */
hasPortRange()802   boolean hasPortRange();
803   /**
804    *
805    *
806    * <pre>
807    * This field can only be used: - If IPProtocol is one of TCP, UDP, or SCTP. - By backend service-based network load balancers, target pool-based network load balancers, internal proxy load balancers, external proxy load balancers, Traffic Director, external protocol forwarding, and Classic VPN. Some products have restrictions on what ports can be used. See port specifications for details. Only packets addressed to ports in the specified range will be forwarded to the backends configured with this forwarding rule. The ports, port_range, and allPorts fields are mutually exclusive. For external forwarding rules, two or more forwarding rules cannot use the same [IPAddress, IPProtocol] pair, and cannot have overlapping portRanges. For internal forwarding rules within the same VPC network, two or more forwarding rules cannot use the same [IPAddress, IPProtocol] pair, and cannot have overlapping portRanges. &#64;pattern: &#92;&#92;d+(?:-&#92;&#92;d+)?
808    * </pre>
809    *
810    * <code>optional string port_range = 217518079;</code>
811    *
812    * @return The portRange.
813    */
getPortRange()814   java.lang.String getPortRange();
815   /**
816    *
817    *
818    * <pre>
819    * This field can only be used: - If IPProtocol is one of TCP, UDP, or SCTP. - By backend service-based network load balancers, target pool-based network load balancers, internal proxy load balancers, external proxy load balancers, Traffic Director, external protocol forwarding, and Classic VPN. Some products have restrictions on what ports can be used. See port specifications for details. Only packets addressed to ports in the specified range will be forwarded to the backends configured with this forwarding rule. The ports, port_range, and allPorts fields are mutually exclusive. For external forwarding rules, two or more forwarding rules cannot use the same [IPAddress, IPProtocol] pair, and cannot have overlapping portRanges. For internal forwarding rules within the same VPC network, two or more forwarding rules cannot use the same [IPAddress, IPProtocol] pair, and cannot have overlapping portRanges. &#64;pattern: &#92;&#92;d+(?:-&#92;&#92;d+)?
820    * </pre>
821    *
822    * <code>optional string port_range = 217518079;</code>
823    *
824    * @return The bytes for portRange.
825    */
getPortRangeBytes()826   com.google.protobuf.ByteString getPortRangeBytes();
827 
828   /**
829    *
830    *
831    * <pre>
832    * This field can only be used: - If IPProtocol is one of TCP, UDP, or SCTP. - By internal TCP/UDP load balancers, backend service-based network load balancers, and internal protocol forwarding. You can specify a list of up to five ports by number, separated by commas. The ports can be contiguous or discontiguous. Only packets addressed to these ports will be forwarded to the backends configured with this forwarding rule. For external forwarding rules, two or more forwarding rules cannot use the same [IPAddress, IPProtocol] pair, and cannot share any values defined in ports. For internal forwarding rules within the same VPC network, two or more forwarding rules cannot use the same [IPAddress, IPProtocol] pair, and cannot share any values defined in ports. The ports, port_range, and allPorts fields are mutually exclusive. &#64;pattern: &#92;&#92;d+(?:-&#92;&#92;d+)?
833    * </pre>
834    *
835    * <code>repeated string ports = 106854418;</code>
836    *
837    * @return A list containing the ports.
838    */
getPortsList()839   java.util.List<java.lang.String> getPortsList();
840   /**
841    *
842    *
843    * <pre>
844    * This field can only be used: - If IPProtocol is one of TCP, UDP, or SCTP. - By internal TCP/UDP load balancers, backend service-based network load balancers, and internal protocol forwarding. You can specify a list of up to five ports by number, separated by commas. The ports can be contiguous or discontiguous. Only packets addressed to these ports will be forwarded to the backends configured with this forwarding rule. For external forwarding rules, two or more forwarding rules cannot use the same [IPAddress, IPProtocol] pair, and cannot share any values defined in ports. For internal forwarding rules within the same VPC network, two or more forwarding rules cannot use the same [IPAddress, IPProtocol] pair, and cannot share any values defined in ports. The ports, port_range, and allPorts fields are mutually exclusive. &#64;pattern: &#92;&#92;d+(?:-&#92;&#92;d+)?
845    * </pre>
846    *
847    * <code>repeated string ports = 106854418;</code>
848    *
849    * @return The count of ports.
850    */
getPortsCount()851   int getPortsCount();
852   /**
853    *
854    *
855    * <pre>
856    * This field can only be used: - If IPProtocol is one of TCP, UDP, or SCTP. - By internal TCP/UDP load balancers, backend service-based network load balancers, and internal protocol forwarding. You can specify a list of up to five ports by number, separated by commas. The ports can be contiguous or discontiguous. Only packets addressed to these ports will be forwarded to the backends configured with this forwarding rule. For external forwarding rules, two or more forwarding rules cannot use the same [IPAddress, IPProtocol] pair, and cannot share any values defined in ports. For internal forwarding rules within the same VPC network, two or more forwarding rules cannot use the same [IPAddress, IPProtocol] pair, and cannot share any values defined in ports. The ports, port_range, and allPorts fields are mutually exclusive. &#64;pattern: &#92;&#92;d+(?:-&#92;&#92;d+)?
857    * </pre>
858    *
859    * <code>repeated string ports = 106854418;</code>
860    *
861    * @param index The index of the element to return.
862    * @return The ports at the given index.
863    */
getPorts(int index)864   java.lang.String getPorts(int index);
865   /**
866    *
867    *
868    * <pre>
869    * This field can only be used: - If IPProtocol is one of TCP, UDP, or SCTP. - By internal TCP/UDP load balancers, backend service-based network load balancers, and internal protocol forwarding. You can specify a list of up to five ports by number, separated by commas. The ports can be contiguous or discontiguous. Only packets addressed to these ports will be forwarded to the backends configured with this forwarding rule. For external forwarding rules, two or more forwarding rules cannot use the same [IPAddress, IPProtocol] pair, and cannot share any values defined in ports. For internal forwarding rules within the same VPC network, two or more forwarding rules cannot use the same [IPAddress, IPProtocol] pair, and cannot share any values defined in ports. The ports, port_range, and allPorts fields are mutually exclusive. &#64;pattern: &#92;&#92;d+(?:-&#92;&#92;d+)?
870    * </pre>
871    *
872    * <code>repeated string ports = 106854418;</code>
873    *
874    * @param index The index of the value to return.
875    * @return The bytes of the ports at the given index.
876    */
getPortsBytes(int index)877   com.google.protobuf.ByteString getPortsBytes(int index);
878 
879   /**
880    *
881    *
882    * <pre>
883    * [Output Only] The PSC connection id of the PSC Forwarding Rule.
884    * </pre>
885    *
886    * <code>optional uint64 psc_connection_id = 292082397;</code>
887    *
888    * @return Whether the pscConnectionId field is set.
889    */
hasPscConnectionId()890   boolean hasPscConnectionId();
891   /**
892    *
893    *
894    * <pre>
895    * [Output Only] The PSC connection id of the PSC Forwarding Rule.
896    * </pre>
897    *
898    * <code>optional uint64 psc_connection_id = 292082397;</code>
899    *
900    * @return The pscConnectionId.
901    */
getPscConnectionId()902   long getPscConnectionId();
903 
904   /**
905    *
906    *
907    * <pre>
908    *
909    * Check the PscConnectionStatus enum for the list of possible values.
910    * </pre>
911    *
912    * <code>optional string psc_connection_status = 184149172;</code>
913    *
914    * @return Whether the pscConnectionStatus field is set.
915    */
hasPscConnectionStatus()916   boolean hasPscConnectionStatus();
917   /**
918    *
919    *
920    * <pre>
921    *
922    * Check the PscConnectionStatus enum for the list of possible values.
923    * </pre>
924    *
925    * <code>optional string psc_connection_status = 184149172;</code>
926    *
927    * @return The pscConnectionStatus.
928    */
getPscConnectionStatus()929   java.lang.String getPscConnectionStatus();
930   /**
931    *
932    *
933    * <pre>
934    *
935    * Check the PscConnectionStatus enum for the list of possible values.
936    * </pre>
937    *
938    * <code>optional string psc_connection_status = 184149172;</code>
939    *
940    * @return The bytes for pscConnectionStatus.
941    */
getPscConnectionStatusBytes()942   com.google.protobuf.ByteString getPscConnectionStatusBytes();
943 
944   /**
945    *
946    *
947    * <pre>
948    * [Output Only] URL of the region where the regional forwarding rule resides. This field is not applicable to global forwarding rules. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.
949    * </pre>
950    *
951    * <code>optional string region = 138946292;</code>
952    *
953    * @return Whether the region field is set.
954    */
hasRegion()955   boolean hasRegion();
956   /**
957    *
958    *
959    * <pre>
960    * [Output Only] URL of the region where the regional forwarding rule resides. This field is not applicable to global forwarding rules. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.
961    * </pre>
962    *
963    * <code>optional string region = 138946292;</code>
964    *
965    * @return The region.
966    */
getRegion()967   java.lang.String getRegion();
968   /**
969    *
970    *
971    * <pre>
972    * [Output Only] URL of the region where the regional forwarding rule resides. This field is not applicable to global forwarding rules. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.
973    * </pre>
974    *
975    * <code>optional string region = 138946292;</code>
976    *
977    * @return The bytes for region.
978    */
getRegionBytes()979   com.google.protobuf.ByteString getRegionBytes();
980 
981   /**
982    *
983    *
984    * <pre>
985    * [Output Only] Server-defined URL for the resource.
986    * </pre>
987    *
988    * <code>optional string self_link = 456214797;</code>
989    *
990    * @return Whether the selfLink field is set.
991    */
hasSelfLink()992   boolean hasSelfLink();
993   /**
994    *
995    *
996    * <pre>
997    * [Output Only] Server-defined URL for the resource.
998    * </pre>
999    *
1000    * <code>optional string self_link = 456214797;</code>
1001    *
1002    * @return The selfLink.
1003    */
getSelfLink()1004   java.lang.String getSelfLink();
1005   /**
1006    *
1007    *
1008    * <pre>
1009    * [Output Only] Server-defined URL for the resource.
1010    * </pre>
1011    *
1012    * <code>optional string self_link = 456214797;</code>
1013    *
1014    * @return The bytes for selfLink.
1015    */
getSelfLinkBytes()1016   com.google.protobuf.ByteString getSelfLinkBytes();
1017 
1018   /**
1019    *
1020    *
1021    * <pre>
1022    * Service Directory resources to register this forwarding rule with. Currently, only supports a single Service Directory resource.
1023    * </pre>
1024    *
1025    * <code>
1026    * repeated .google.cloud.compute.v1.ForwardingRuleServiceDirectoryRegistration service_directory_registrations = 223549694;
1027    * </code>
1028    */
1029   java.util.List<com.google.cloud.compute.v1.ForwardingRuleServiceDirectoryRegistration>
getServiceDirectoryRegistrationsList()1030       getServiceDirectoryRegistrationsList();
1031   /**
1032    *
1033    *
1034    * <pre>
1035    * Service Directory resources to register this forwarding rule with. Currently, only supports a single Service Directory resource.
1036    * </pre>
1037    *
1038    * <code>
1039    * repeated .google.cloud.compute.v1.ForwardingRuleServiceDirectoryRegistration service_directory_registrations = 223549694;
1040    * </code>
1041    */
1042   com.google.cloud.compute.v1.ForwardingRuleServiceDirectoryRegistration
getServiceDirectoryRegistrations(int index)1043       getServiceDirectoryRegistrations(int index);
1044   /**
1045    *
1046    *
1047    * <pre>
1048    * Service Directory resources to register this forwarding rule with. Currently, only supports a single Service Directory resource.
1049    * </pre>
1050    *
1051    * <code>
1052    * repeated .google.cloud.compute.v1.ForwardingRuleServiceDirectoryRegistration service_directory_registrations = 223549694;
1053    * </code>
1054    */
getServiceDirectoryRegistrationsCount()1055   int getServiceDirectoryRegistrationsCount();
1056   /**
1057    *
1058    *
1059    * <pre>
1060    * Service Directory resources to register this forwarding rule with. Currently, only supports a single Service Directory resource.
1061    * </pre>
1062    *
1063    * <code>
1064    * repeated .google.cloud.compute.v1.ForwardingRuleServiceDirectoryRegistration service_directory_registrations = 223549694;
1065    * </code>
1066    */
1067   java.util.List<
1068           ? extends com.google.cloud.compute.v1.ForwardingRuleServiceDirectoryRegistrationOrBuilder>
getServiceDirectoryRegistrationsOrBuilderList()1069       getServiceDirectoryRegistrationsOrBuilderList();
1070   /**
1071    *
1072    *
1073    * <pre>
1074    * Service Directory resources to register this forwarding rule with. Currently, only supports a single Service Directory resource.
1075    * </pre>
1076    *
1077    * <code>
1078    * repeated .google.cloud.compute.v1.ForwardingRuleServiceDirectoryRegistration service_directory_registrations = 223549694;
1079    * </code>
1080    */
1081   com.google.cloud.compute.v1.ForwardingRuleServiceDirectoryRegistrationOrBuilder
getServiceDirectoryRegistrationsOrBuilder(int index)1082       getServiceDirectoryRegistrationsOrBuilder(int index);
1083 
1084   /**
1085    *
1086    *
1087    * <pre>
1088    * An optional prefix to the service name for this Forwarding Rule. If specified, the prefix is the first label of the fully qualified service name. The label must be 1-63 characters long, and comply with RFC1035. Specifically, the label must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. This field is only used for internal load balancing.
1089    * </pre>
1090    *
1091    * <code>optional string service_label = 417008874;</code>
1092    *
1093    * @return Whether the serviceLabel field is set.
1094    */
hasServiceLabel()1095   boolean hasServiceLabel();
1096   /**
1097    *
1098    *
1099    * <pre>
1100    * An optional prefix to the service name for this Forwarding Rule. If specified, the prefix is the first label of the fully qualified service name. The label must be 1-63 characters long, and comply with RFC1035. Specifically, the label must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. This field is only used for internal load balancing.
1101    * </pre>
1102    *
1103    * <code>optional string service_label = 417008874;</code>
1104    *
1105    * @return The serviceLabel.
1106    */
getServiceLabel()1107   java.lang.String getServiceLabel();
1108   /**
1109    *
1110    *
1111    * <pre>
1112    * An optional prefix to the service name for this Forwarding Rule. If specified, the prefix is the first label of the fully qualified service name. The label must be 1-63 characters long, and comply with RFC1035. Specifically, the label must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. This field is only used for internal load balancing.
1113    * </pre>
1114    *
1115    * <code>optional string service_label = 417008874;</code>
1116    *
1117    * @return The bytes for serviceLabel.
1118    */
getServiceLabelBytes()1119   com.google.protobuf.ByteString getServiceLabelBytes();
1120 
1121   /**
1122    *
1123    *
1124    * <pre>
1125    * [Output Only] The internal fully qualified service name for this Forwarding Rule. This field is only used for internal load balancing.
1126    * </pre>
1127    *
1128    * <code>optional string service_name = 359880149;</code>
1129    *
1130    * @return Whether the serviceName field is set.
1131    */
hasServiceName()1132   boolean hasServiceName();
1133   /**
1134    *
1135    *
1136    * <pre>
1137    * [Output Only] The internal fully qualified service name for this Forwarding Rule. This field is only used for internal load balancing.
1138    * </pre>
1139    *
1140    * <code>optional string service_name = 359880149;</code>
1141    *
1142    * @return The serviceName.
1143    */
getServiceName()1144   java.lang.String getServiceName();
1145   /**
1146    *
1147    *
1148    * <pre>
1149    * [Output Only] The internal fully qualified service name for this Forwarding Rule. This field is only used for internal load balancing.
1150    * </pre>
1151    *
1152    * <code>optional string service_name = 359880149;</code>
1153    *
1154    * @return The bytes for serviceName.
1155    */
getServiceNameBytes()1156   com.google.protobuf.ByteString getServiceNameBytes();
1157 
1158   /**
1159    *
1160    *
1161    * <pre>
1162    * If not empty, this Forwarding Rule will only forward the traffic when the source IP address matches one of the IP addresses or CIDR ranges set here. Note that a Forwarding Rule can only have up to 64 source IP ranges, and this field can only be used with a regional Forwarding Rule whose scheme is EXTERNAL. Each source_ip_range entry should be either an IP address (for example, 1.2.3.4) or a CIDR range (for example, 1.2.3.0/24).
1163    * </pre>
1164    *
1165    * <code>repeated string source_ip_ranges = 111563210;</code>
1166    *
1167    * @return A list containing the sourceIpRanges.
1168    */
getSourceIpRangesList()1169   java.util.List<java.lang.String> getSourceIpRangesList();
1170   /**
1171    *
1172    *
1173    * <pre>
1174    * If not empty, this Forwarding Rule will only forward the traffic when the source IP address matches one of the IP addresses or CIDR ranges set here. Note that a Forwarding Rule can only have up to 64 source IP ranges, and this field can only be used with a regional Forwarding Rule whose scheme is EXTERNAL. Each source_ip_range entry should be either an IP address (for example, 1.2.3.4) or a CIDR range (for example, 1.2.3.0/24).
1175    * </pre>
1176    *
1177    * <code>repeated string source_ip_ranges = 111563210;</code>
1178    *
1179    * @return The count of sourceIpRanges.
1180    */
getSourceIpRangesCount()1181   int getSourceIpRangesCount();
1182   /**
1183    *
1184    *
1185    * <pre>
1186    * If not empty, this Forwarding Rule will only forward the traffic when the source IP address matches one of the IP addresses or CIDR ranges set here. Note that a Forwarding Rule can only have up to 64 source IP ranges, and this field can only be used with a regional Forwarding Rule whose scheme is EXTERNAL. Each source_ip_range entry should be either an IP address (for example, 1.2.3.4) or a CIDR range (for example, 1.2.3.0/24).
1187    * </pre>
1188    *
1189    * <code>repeated string source_ip_ranges = 111563210;</code>
1190    *
1191    * @param index The index of the element to return.
1192    * @return The sourceIpRanges at the given index.
1193    */
getSourceIpRanges(int index)1194   java.lang.String getSourceIpRanges(int index);
1195   /**
1196    *
1197    *
1198    * <pre>
1199    * If not empty, this Forwarding Rule will only forward the traffic when the source IP address matches one of the IP addresses or CIDR ranges set here. Note that a Forwarding Rule can only have up to 64 source IP ranges, and this field can only be used with a regional Forwarding Rule whose scheme is EXTERNAL. Each source_ip_range entry should be either an IP address (for example, 1.2.3.4) or a CIDR range (for example, 1.2.3.0/24).
1200    * </pre>
1201    *
1202    * <code>repeated string source_ip_ranges = 111563210;</code>
1203    *
1204    * @param index The index of the value to return.
1205    * @return The bytes of the sourceIpRanges at the given index.
1206    */
getSourceIpRangesBytes(int index)1207   com.google.protobuf.ByteString getSourceIpRangesBytes(int index);
1208 
1209   /**
1210    *
1211    *
1212    * <pre>
1213    * This field identifies the subnetwork that the load balanced IP should belong to for this Forwarding Rule, used in internal load balancing and network load balancing with IPv6. If the network specified is in auto subnet mode, this field is optional. However, a subnetwork must be specified if the network is in custom subnet mode or when creating external forwarding rule with IPv6.
1214    * </pre>
1215    *
1216    * <code>optional string subnetwork = 307827694;</code>
1217    *
1218    * @return Whether the subnetwork field is set.
1219    */
hasSubnetwork()1220   boolean hasSubnetwork();
1221   /**
1222    *
1223    *
1224    * <pre>
1225    * This field identifies the subnetwork that the load balanced IP should belong to for this Forwarding Rule, used in internal load balancing and network load balancing with IPv6. If the network specified is in auto subnet mode, this field is optional. However, a subnetwork must be specified if the network is in custom subnet mode or when creating external forwarding rule with IPv6.
1226    * </pre>
1227    *
1228    * <code>optional string subnetwork = 307827694;</code>
1229    *
1230    * @return The subnetwork.
1231    */
getSubnetwork()1232   java.lang.String getSubnetwork();
1233   /**
1234    *
1235    *
1236    * <pre>
1237    * This field identifies the subnetwork that the load balanced IP should belong to for this Forwarding Rule, used in internal load balancing and network load balancing with IPv6. If the network specified is in auto subnet mode, this field is optional. However, a subnetwork must be specified if the network is in custom subnet mode or when creating external forwarding rule with IPv6.
1238    * </pre>
1239    *
1240    * <code>optional string subnetwork = 307827694;</code>
1241    *
1242    * @return The bytes for subnetwork.
1243    */
getSubnetworkBytes()1244   com.google.protobuf.ByteString getSubnetworkBytes();
1245 
1246   /**
1247    *
1248    *
1249    * <pre>
1250    * The URL of the target resource to receive the matched traffic. For regional forwarding rules, this target must be in the same region as the forwarding rule. For global forwarding rules, this target must be a global load balancing resource. The forwarded traffic must be of a type appropriate to the target object. - For load balancers, see the "Target" column in [Port specifications](https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#ip_address_specifications). - For Private Service Connect forwarding rules that forward traffic to Google APIs, provide the name of a supported Google API bundle: - vpc-sc - APIs that support VPC Service Controls. - all-apis - All supported Google APIs. - For Private Service Connect forwarding rules that forward traffic to managed services, the target must be a service attachment.
1251    * </pre>
1252    *
1253    * <code>optional string target = 192835985;</code>
1254    *
1255    * @return Whether the target field is set.
1256    */
hasTarget()1257   boolean hasTarget();
1258   /**
1259    *
1260    *
1261    * <pre>
1262    * The URL of the target resource to receive the matched traffic. For regional forwarding rules, this target must be in the same region as the forwarding rule. For global forwarding rules, this target must be a global load balancing resource. The forwarded traffic must be of a type appropriate to the target object. - For load balancers, see the "Target" column in [Port specifications](https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#ip_address_specifications). - For Private Service Connect forwarding rules that forward traffic to Google APIs, provide the name of a supported Google API bundle: - vpc-sc - APIs that support VPC Service Controls. - all-apis - All supported Google APIs. - For Private Service Connect forwarding rules that forward traffic to managed services, the target must be a service attachment.
1263    * </pre>
1264    *
1265    * <code>optional string target = 192835985;</code>
1266    *
1267    * @return The target.
1268    */
getTarget()1269   java.lang.String getTarget();
1270   /**
1271    *
1272    *
1273    * <pre>
1274    * The URL of the target resource to receive the matched traffic. For regional forwarding rules, this target must be in the same region as the forwarding rule. For global forwarding rules, this target must be a global load balancing resource. The forwarded traffic must be of a type appropriate to the target object. - For load balancers, see the "Target" column in [Port specifications](https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#ip_address_specifications). - For Private Service Connect forwarding rules that forward traffic to Google APIs, provide the name of a supported Google API bundle: - vpc-sc - APIs that support VPC Service Controls. - all-apis - All supported Google APIs. - For Private Service Connect forwarding rules that forward traffic to managed services, the target must be a service attachment.
1275    * </pre>
1276    *
1277    * <code>optional string target = 192835985;</code>
1278    *
1279    * @return The bytes for target.
1280    */
getTargetBytes()1281   com.google.protobuf.ByteString getTargetBytes();
1282 }
1283