google-cloud-network_connectivity-v1 1.0.1 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -28,6 +28,9 @@ module Google
28
28
  # @!attribute [rw] destinations
29
29
  # @return [::Array<::Google::Api::ClientLibraryDestination>]
30
30
  # The destination where API teams want this client library to be published.
31
+ # @!attribute [rw] selective_gapic_generation
32
+ # @return [::Google::Api::SelectiveGapicGeneration]
33
+ # Configuration for which RPCs should be generated in the GAPIC client.
31
34
  class CommonLanguageSettings
32
35
  include ::Google::Protobuf::MessageExts
33
36
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -212,6 +215,12 @@ module Google
212
215
  # enabled. By default, asynchronous REST clients will not be generated.
213
216
  # This feature will be enabled by default 1 month after launching the
214
217
  # feature in preview packages.
218
+ # @!attribute [rw] protobuf_pythonic_types_enabled
219
+ # @return [::Boolean]
220
+ # Enables generation of protobuf code using new types that are more
221
+ # Pythonic which are included in `protobuf>=5.29.x`. This feature will be
222
+ # enabled by default 1 month after launching the feature in preview
223
+ # packages.
215
224
  class ExperimentalFeatures
216
225
  include ::Google::Protobuf::MessageExts
217
226
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -375,6 +384,17 @@ module Google
375
384
  end
376
385
  end
377
386
 
387
+ # This message is used to configure the generation of a subset of the RPCs in
388
+ # a service for client libraries.
389
+ # @!attribute [rw] methods
390
+ # @return [::Array<::String>]
391
+ # An allowlist of the fully qualified names of RPCs that should be included
392
+ # on public client surfaces.
393
+ class SelectiveGapicGeneration
394
+ include ::Google::Protobuf::MessageExts
395
+ extend ::Google::Protobuf::MessageExts::ClassMethods
396
+ end
397
+
378
398
  # The organization for which the client libraries are being published.
379
399
  # Affects the url where generated docs are published, etc.
380
400
  module ClientLibraryOrganization
@@ -0,0 +1,88 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Api
22
+ # Rich semantic information of an API field beyond basic typing.
23
+ # @!attribute [rw] format
24
+ # @return [::Google::Api::FieldInfo::Format]
25
+ # The standard format of a field value. This does not explicitly configure
26
+ # any API consumer, just documents the API's format for the field it is
27
+ # applied to.
28
+ # @!attribute [rw] referenced_types
29
+ # @return [::Array<::Google::Api::TypeReference>]
30
+ # The type(s) that the annotated, generic field may represent.
31
+ #
32
+ # Currently, this must only be used on fields of type `google.protobuf.Any`.
33
+ # Supporting other generic types may be considered in the future.
34
+ class FieldInfo
35
+ include ::Google::Protobuf::MessageExts
36
+ extend ::Google::Protobuf::MessageExts::ClassMethods
37
+
38
+ # The standard format of a field value. The supported formats are all backed
39
+ # by either an RFC defined by the IETF or a Google-defined AIP.
40
+ module Format
41
+ # Default, unspecified value.
42
+ FORMAT_UNSPECIFIED = 0
43
+
44
+ # Universally Unique Identifier, version 4, value as defined by
45
+ # https://datatracker.ietf.org/doc/html/rfc4122. The value may be
46
+ # normalized to entirely lowercase letters. For example, the value
47
+ # `F47AC10B-58CC-0372-8567-0E02B2C3D479` would be normalized to
48
+ # `f47ac10b-58cc-0372-8567-0e02b2c3d479`.
49
+ UUID4 = 1
50
+
51
+ # Internet Protocol v4 value as defined by [RFC
52
+ # 791](https://datatracker.ietf.org/doc/html/rfc791). The value may be
53
+ # condensed, with leading zeros in each octet stripped. For example,
54
+ # `001.022.233.040` would be condensed to `1.22.233.40`.
55
+ IPV4 = 2
56
+
57
+ # Internet Protocol v6 value as defined by [RFC
58
+ # 2460](https://datatracker.ietf.org/doc/html/rfc2460). The value may be
59
+ # normalized to entirely lowercase letters with zeros compressed, following
60
+ # [RFC 5952](https://datatracker.ietf.org/doc/html/rfc5952). For example,
61
+ # the value `2001:0DB8:0::0` would be normalized to `2001:db8::`.
62
+ IPV6 = 3
63
+
64
+ # An IP address in either v4 or v6 format as described by the individual
65
+ # values defined herein. See the comments on the IPV4 and IPV6 types for
66
+ # allowed normalizations of each.
67
+ IPV4_OR_IPV6 = 4
68
+ end
69
+ end
70
+
71
+ # A reference to a message type, for use in {::Google::Api::FieldInfo FieldInfo}.
72
+ # @!attribute [rw] type_name
73
+ # @return [::String]
74
+ # The name of the type that the annotated, generic field may represent.
75
+ # If the type is in the same protobuf package, the value can be the simple
76
+ # message name e.g., `"MyMessage"`. Otherwise, the value must be the
77
+ # fully-qualified message name e.g., `"google.library.v1.Book"`.
78
+ #
79
+ # If the type(s) are unknown to the service (e.g. the field accepts generic
80
+ # user input), use the wildcard `"*"` to denote this behavior.
81
+ #
82
+ # See [AIP-202](https://google.aip.dev/202#type-references) for more details.
83
+ class TypeReference
84
+ include ::Google::Protobuf::MessageExts
85
+ extend ::Google::Protobuf::MessageExts::ClassMethods
86
+ end
87
+ end
88
+ end
@@ -75,6 +75,24 @@ module Google
75
75
  # and according to state. If any spokes are inactive,
76
76
  # the summary also lists the reasons they are inactive,
77
77
  # including a count for each reason.
78
+ # @!attribute [rw] policy_mode
79
+ # @return [::Google::Cloud::NetworkConnectivity::V1::PolicyMode]
80
+ # Optional. The policy mode of this hub. This field can be either
81
+ # PRESET or CUSTOM. If unspecified, the
82
+ # policy_mode defaults to PRESET.
83
+ # @!attribute [rw] preset_topology
84
+ # @return [::Google::Cloud::NetworkConnectivity::V1::PresetTopology]
85
+ # Optional. The topology implemented in this hub. Currently, this field is
86
+ # only used when policy_mode = PRESET. The available preset topologies are
87
+ # MESH and STAR. If preset_topology is unspecified and policy_mode = PRESET,
88
+ # the preset_topology defaults to MESH. When policy_mode = CUSTOM,
89
+ # the preset_topology is set to PRESET_TOPOLOGY_UNSPECIFIED.
90
+ # @!attribute [rw] export_psc
91
+ # @return [::Boolean]
92
+ # Optional. Whether Private Service Connect transitivity is enabled for the
93
+ # hub. If true, Private Service Connect endpoints in VPC spokes attached to
94
+ # the hub are made accessible to other VPC spokes attached to the hub.
95
+ # The default value is false.
78
96
  class Hub
79
97
  include ::Google::Protobuf::MessageExts
80
98
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -153,6 +171,9 @@ module Google
153
171
  # @!attribute [rw] linked_vpc_network
154
172
  # @return [::Google::Cloud::NetworkConnectivity::V1::LinkedVpcNetwork]
155
173
  # Optional. VPC network that is associated with the spoke.
174
+ # @!attribute [rw] linked_producer_vpc_network
175
+ # @return [::Google::Cloud::NetworkConnectivity::V1::LinkedProducerVpcNetwork]
176
+ # Optional. The linked producer VPC that is associated with the spoke.
156
177
  # @!attribute [r] unique_id
157
178
  # @return [::String]
158
179
  # Output only. The Google-generated UUID for the spoke. This value is unique
@@ -304,9 +325,24 @@ module Google
304
325
  # Example: projects/12345/locations/global/spokes/SPOKE
305
326
  # @!attribute [r] location
306
327
  # @return [::String]
307
- # Output only. The location of the route.
328
+ # Output only. The origin location of the route.
308
329
  # Uses the following form: "projects/\\{project}/locations/\\{location}"
309
330
  # Example: projects/1234/locations/us-central1
331
+ # @!attribute [r] priority
332
+ # @return [::Integer]
333
+ # Output only. The priority of this route. Priority is used to break ties in
334
+ # cases where a destination matches more than one route. In these cases the
335
+ # route with the lowest-numbered priority value wins.
336
+ # @!attribute [rw] next_hop_vpn_tunnel
337
+ # @return [::Google::Cloud::NetworkConnectivity::V1::NextHopVPNTunnel]
338
+ # Immutable. The next-hop VPN tunnel for packets on this route.
339
+ # @!attribute [rw] next_hop_router_appliance_instance
340
+ # @return [::Google::Cloud::NetworkConnectivity::V1::NextHopRouterApplianceInstance]
341
+ # Immutable. The next-hop Router appliance instance for packets on this
342
+ # route.
343
+ # @!attribute [rw] next_hop_interconnect_attachment
344
+ # @return [::Google::Cloud::NetworkConnectivity::V1::NextHopInterconnectAttachment]
345
+ # Immutable. The next-hop VLAN attachment for packets on this route.
310
346
  class Route
311
347
  include ::Google::Protobuf::MessageExts
312
348
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -350,6 +386,14 @@ module Google
350
386
  # @!attribute [r] state
351
387
  # @return [::Google::Cloud::NetworkConnectivity::V1::State]
352
388
  # Output only. The current lifecycle state of this group.
389
+ # @!attribute [rw] auto_accept
390
+ # @return [::Google::Cloud::NetworkConnectivity::V1::AutoAccept]
391
+ # Optional. The auto-accept setting for this group.
392
+ # @!attribute [r] route_table
393
+ # @return [::String]
394
+ # Output only. The name of the route table that corresponds to this group.
395
+ # They use the following form:
396
+ # `projects/{project_number}/locations/global/hubs/{hub_id}/routeTables/{route_table_id}`
353
397
  class Group
354
398
  include ::Google::Protobuf::MessageExts
355
399
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -364,6 +408,23 @@ module Google
364
408
  end
365
409
  end
366
410
 
411
+ # The auto-accept setting for a group controls whether
412
+ # proposed spokes are automatically attached to the hub. If auto-accept is
413
+ # enabled, the spoke immediately is attached to the hub and becomes part of the
414
+ # group. In this case, the new spoke is in the ACTIVE state.
415
+ # If auto-accept is disabled, the spoke goes to the INACTIVE
416
+ # state, and it must be reviewed and accepted by a hub
417
+ # administrator.
418
+ # @!attribute [rw] auto_accept_projects
419
+ # @return [::Array<::String>]
420
+ # A list of project ids or project numbers for which you want
421
+ # to enable auto-accept. The auto-accept setting is applied to
422
+ # spokes being created or updated in these projects.
423
+ class AutoAccept
424
+ include ::Google::Protobuf::MessageExts
425
+ extend ::Google::Protobuf::MessageExts::ClassMethods
426
+ end
427
+
367
428
  # Request for
368
429
  # {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#list_hubs HubService.ListHubs}
369
430
  # method.
@@ -583,6 +644,153 @@ module Google
583
644
  extend ::Google::Protobuf::MessageExts::ClassMethods
584
645
  end
585
646
 
647
+ # The request for
648
+ # {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#query_hub_status HubService.QueryHubStatus}.
649
+ # @!attribute [rw] name
650
+ # @return [::String]
651
+ # Required. The name of the hub.
652
+ # @!attribute [rw] page_size
653
+ # @return [::Integer]
654
+ # Optional. The maximum number of results to return per page.
655
+ # @!attribute [rw] page_token
656
+ # @return [::String]
657
+ # Optional. The page token.
658
+ # @!attribute [rw] filter
659
+ # @return [::String]
660
+ # Optional. An expression that filters the list of results.
661
+ # The filter can be used to filter the results by the following fields:
662
+ # * `psc_propagation_status.source_spoke`
663
+ # * `psc_propagation_status.source_group`
664
+ # * `psc_propagation_status.source_forwarding_rule`
665
+ # * `psc_propagation_status.target_spoke`
666
+ # * `psc_propagation_status.target_group`
667
+ # * `psc_propagation_status.code`
668
+ # * `psc_propagation_status.message`
669
+ # @!attribute [rw] order_by
670
+ # @return [::String]
671
+ # Optional. Sort the results in ascending order by the specified fields.
672
+ # A comma-separated list of any of these fields:
673
+ # * `psc_propagation_status.source_spoke`
674
+ # * `psc_propagation_status.source_group`
675
+ # * `psc_propagation_status.source_forwarding_rule`
676
+ # * `psc_propagation_status.target_spoke`
677
+ # * `psc_propagation_status.target_group`
678
+ # * `psc_propagation_status.code`
679
+ # If `group_by` is set, the value of the `order_by` field must be the
680
+ # same as or a subset of the `group_by` field.
681
+ # @!attribute [rw] group_by
682
+ # @return [::String]
683
+ # Optional. Aggregate the results by the specified fields.
684
+ # A comma-separated list of any of these fields:
685
+ # * `psc_propagation_status.source_spoke`
686
+ # * `psc_propagation_status.source_group`
687
+ # * `psc_propagation_status.source_forwarding_rule`
688
+ # * `psc_propagation_status.target_spoke`
689
+ # * `psc_propagation_status.target_group`
690
+ # * `psc_propagation_status.code`
691
+ class QueryHubStatusRequest
692
+ include ::Google::Protobuf::MessageExts
693
+ extend ::Google::Protobuf::MessageExts::ClassMethods
694
+ end
695
+
696
+ # The response for
697
+ # {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#query_hub_status HubService.QueryHubStatus}.
698
+ # @!attribute [rw] hub_status_entries
699
+ # @return [::Array<::Google::Cloud::NetworkConnectivity::V1::HubStatusEntry>]
700
+ # The list of hub status.
701
+ # @!attribute [rw] next_page_token
702
+ # @return [::String]
703
+ # The token for the next page of the response. To see more results,
704
+ # use this value as the page_token for your next request. If this value
705
+ # is empty, there are no more results.
706
+ class QueryHubStatusResponse
707
+ include ::Google::Protobuf::MessageExts
708
+ extend ::Google::Protobuf::MessageExts::ClassMethods
709
+ end
710
+
711
+ # A hub status entry represents the status of a set of propagated Private
712
+ # Service Connect connections grouped by certain fields.
713
+ # @!attribute [rw] count
714
+ # @return [::Integer]
715
+ # The number of propagated Private Service Connect connections with this
716
+ # status. If the `group_by` field was not set in the request message, the
717
+ # value of this field is 1.
718
+ # @!attribute [rw] group_by
719
+ # @return [::String]
720
+ # The fields that this entry is grouped by. This has the same value as the
721
+ # `group_by` field in the request message.
722
+ # @!attribute [rw] psc_propagation_status
723
+ # @return [::Google::Cloud::NetworkConnectivity::V1::PscPropagationStatus]
724
+ # The Private Service Connect propagation status.
725
+ class HubStatusEntry
726
+ include ::Google::Protobuf::MessageExts
727
+ extend ::Google::Protobuf::MessageExts::ClassMethods
728
+ end
729
+
730
+ # The status of one or more propagated Private Service Connect connections in a
731
+ # hub.
732
+ # @!attribute [rw] source_spoke
733
+ # @return [::String]
734
+ # The name of the spoke that the source forwarding rule belongs to.
735
+ # @!attribute [rw] source_group
736
+ # @return [::String]
737
+ # The name of the group that the source spoke belongs to.
738
+ # @!attribute [rw] source_forwarding_rule
739
+ # @return [::String]
740
+ # The name of the forwarding rule exported to the hub.
741
+ # @!attribute [rw] target_spoke
742
+ # @return [::String]
743
+ # The name of the spoke that the source forwarding rule propagates to.
744
+ # @!attribute [rw] target_group
745
+ # @return [::String]
746
+ # The name of the group that the target spoke belongs to.
747
+ # @!attribute [rw] code
748
+ # @return [::Google::Cloud::NetworkConnectivity::V1::PscPropagationStatus::Code]
749
+ # The propagation status.
750
+ # @!attribute [rw] message
751
+ # @return [::String]
752
+ # The human-readable summary of the Private Service Connect connection
753
+ # propagation status.
754
+ class PscPropagationStatus
755
+ include ::Google::Protobuf::MessageExts
756
+ extend ::Google::Protobuf::MessageExts::ClassMethods
757
+
758
+ # The Code enum represents the state of the Private Service Connect
759
+ # propagation.
760
+ module Code
761
+ # The code is unspecified.
762
+ CODE_UNSPECIFIED = 0
763
+
764
+ # The propagated Private Service Connect connection is ready.
765
+ READY = 1
766
+
767
+ # The Private Service Connect connection is propagating. This is a
768
+ # transient state.
769
+ PROPAGATING = 2
770
+
771
+ # The Private Service Connect connection propagation failed because the VPC
772
+ # network or the project of the target spoke has exceeded the connection
773
+ # limit set by the producer.
774
+ ERROR_PRODUCER_PROPAGATED_CONNECTION_LIMIT_EXCEEDED = 3
775
+
776
+ # The Private Service Connect connection propagation failed because the NAT
777
+ # IP subnet space has been exhausted. It is equivalent to the `Needs
778
+ # attention` status of the Private Service Connect connection. See
779
+ # https://cloud.google.com/vpc/docs/about-accessing-vpc-hosted-services-endpoints#connection-statuses.
780
+ ERROR_PRODUCER_NAT_IP_SPACE_EXHAUSTED = 4
781
+
782
+ # The Private Service Connect connection propagation failed because the
783
+ # `PSC_ILB_CONSUMER_FORWARDING_RULES_PER_PRODUCER_NETWORK` quota in the
784
+ # producer VPC network has been exceeded.
785
+ ERROR_PRODUCER_QUOTA_EXCEEDED = 5
786
+
787
+ # The Private Service Connect connection propagation failed because the
788
+ # `PSC_PROPAGATED_CONNECTIONS_PER_VPC_NETWORK` quota in the consumer
789
+ # VPC network has been exceeded.
790
+ ERROR_CONSUMER_QUOTA_EXCEEDED = 6
791
+ end
792
+ end
793
+
586
794
  # The request for
587
795
  # {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#list_spokes HubService.ListSpokes}.
588
796
  # @!attribute [rw] parent
@@ -967,6 +1175,11 @@ module Google
967
1175
  # @!attribute [r] vpc_network
968
1176
  # @return [::String]
969
1177
  # Output only. The VPC network where these VPN tunnels are located.
1178
+ # @!attribute [rw] include_import_ranges
1179
+ # @return [::Array<::String>]
1180
+ # Optional. IP ranges allowed to be included during import from hub (does not
1181
+ # control transit connectivity). The only allowed value for now is
1182
+ # "ALL_IPV4_RANGES".
970
1183
  class LinkedVpnTunnels
971
1184
  include ::Google::Protobuf::MessageExts
972
1185
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -987,6 +1200,11 @@ module Google
987
1200
  # @!attribute [r] vpc_network
988
1201
  # @return [::String]
989
1202
  # Output only. The VPC network where these VLAN attachments are located.
1203
+ # @!attribute [rw] include_import_ranges
1204
+ # @return [::Array<::String>]
1205
+ # Optional. IP ranges allowed to be included during import from hub (does not
1206
+ # control transit connectivity). The only allowed value for now is
1207
+ # "ALL_IPV4_RANGES".
990
1208
  class LinkedInterconnectAttachments
991
1209
  include ::Google::Protobuf::MessageExts
992
1210
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1008,6 +1226,11 @@ module Google
1008
1226
  # @return [::String]
1009
1227
  # Output only. The VPC network where these router appliance instances are
1010
1228
  # located.
1229
+ # @!attribute [rw] include_import_ranges
1230
+ # @return [::Array<::String>]
1231
+ # Optional. IP ranges allowed to be included during import from hub (does not
1232
+ # control transit connectivity). The only allowed value for now is
1233
+ # "ALL_IPV4_RANGES".
1011
1234
  class LinkedRouterApplianceInstances
1012
1235
  include ::Google::Protobuf::MessageExts
1013
1236
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1020,11 +1243,45 @@ module Google
1020
1243
  # @!attribute [rw] exclude_export_ranges
1021
1244
  # @return [::Array<::String>]
1022
1245
  # Optional. IP ranges encompassing the subnets to be excluded from peering.
1246
+ # @!attribute [rw] include_export_ranges
1247
+ # @return [::Array<::String>]
1248
+ # Optional. IP ranges allowed to be included from peering.
1249
+ # @!attribute [r] producer_vpc_spokes
1250
+ # @return [::Array<::String>]
1251
+ # Output only. The list of Producer VPC spokes that this VPC spoke is a
1252
+ # service consumer VPC spoke for. These producer VPCs are connected through
1253
+ # VPC peering to this spoke's backing VPC network.
1023
1254
  class LinkedVpcNetwork
1024
1255
  include ::Google::Protobuf::MessageExts
1025
1256
  extend ::Google::Protobuf::MessageExts::ClassMethods
1026
1257
  end
1027
1258
 
1259
+ # @!attribute [rw] network
1260
+ # @return [::String]
1261
+ # Immutable. The URI of the Service Consumer VPC that the Producer VPC is
1262
+ # peered with.
1263
+ # @!attribute [r] service_consumer_vpc_spoke
1264
+ # @return [::String]
1265
+ # Output only. The Service Consumer Network spoke.
1266
+ # @!attribute [rw] peering
1267
+ # @return [::String]
1268
+ # Immutable. The name of the VPC peering between the Service Consumer VPC and
1269
+ # the Producer VPC (defined in the Tenant project) which is added to the NCC
1270
+ # hub. This peering must be in ACTIVE state.
1271
+ # @!attribute [r] producer_network
1272
+ # @return [::String]
1273
+ # Output only. The URI of the Producer VPC.
1274
+ # @!attribute [rw] exclude_export_ranges
1275
+ # @return [::Array<::String>]
1276
+ # Optional. IP ranges encompassing the subnets to be excluded from peering.
1277
+ # @!attribute [rw] include_export_ranges
1278
+ # @return [::Array<::String>]
1279
+ # Optional. IP ranges allowed to be included from peering.
1280
+ class LinkedProducerVpcNetwork
1281
+ include ::Google::Protobuf::MessageExts
1282
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1283
+ end
1284
+
1028
1285
  # A router appliance instance is a Compute Engine virtual machine (VM) instance
1029
1286
  # that acts as a BGP speaker. A router appliance instance is specified by the
1030
1287
  # URI of the VM and the internal IP address of one of the VM's network
@@ -1057,6 +1314,58 @@ module Google
1057
1314
  extend ::Google::Protobuf::MessageExts::ClassMethods
1058
1315
  end
1059
1316
 
1317
+ # A route next hop that leads to a VPN tunnel resource.
1318
+ # @!attribute [rw] uri
1319
+ # @return [::String]
1320
+ # The URI of the VPN tunnel resource.
1321
+ # @!attribute [rw] vpc_network
1322
+ # @return [::String]
1323
+ # The VPC network where this VPN tunnel is located.
1324
+ # @!attribute [rw] site_to_site_data_transfer
1325
+ # @return [::Boolean]
1326
+ # Indicates whether site-to-site data transfer is allowed for this VPN tunnel
1327
+ # resource. Data transfer is available only in [supported
1328
+ # locations](https://cloud.google.com/network-connectivity/docs/network-connectivity-center/concepts/locations).
1329
+ class NextHopVPNTunnel
1330
+ include ::Google::Protobuf::MessageExts
1331
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1332
+ end
1333
+
1334
+ # A route next hop that leads to a Router appliance instance.
1335
+ # @!attribute [rw] uri
1336
+ # @return [::String]
1337
+ # The URI of the Router appliance instance.
1338
+ # @!attribute [rw] vpc_network
1339
+ # @return [::String]
1340
+ # The VPC network where this VM is located.
1341
+ # @!attribute [rw] site_to_site_data_transfer
1342
+ # @return [::Boolean]
1343
+ # Indicates whether site-to-site data transfer is allowed for this Router
1344
+ # appliance instance resource. Data transfer is available only in [supported
1345
+ # locations](https://cloud.google.com/network-connectivity/docs/network-connectivity-center/concepts/locations).
1346
+ class NextHopRouterApplianceInstance
1347
+ include ::Google::Protobuf::MessageExts
1348
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1349
+ end
1350
+
1351
+ # A route next hop that leads to an interconnect attachment resource.
1352
+ # @!attribute [rw] uri
1353
+ # @return [::String]
1354
+ # The URI of the interconnect attachment resource.
1355
+ # @!attribute [rw] vpc_network
1356
+ # @return [::String]
1357
+ # The VPC network where this interconnect attachment is located.
1358
+ # @!attribute [rw] site_to_site_data_transfer
1359
+ # @return [::Boolean]
1360
+ # Indicates whether site-to-site data transfer is allowed for this
1361
+ # interconnect attachment resource. Data transfer is available only in
1362
+ # [supported
1363
+ # locations](https://cloud.google.com/network-connectivity/docs/network-connectivity-center/concepts/locations).
1364
+ class NextHopInterconnectAttachment
1365
+ include ::Google::Protobuf::MessageExts
1366
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1367
+ end
1368
+
1060
1369
  # Summarizes information about the spokes associated with a hub.
1061
1370
  # The summary includes a count of spokes according to type
1062
1371
  # and according to state. If any spokes are inactive,
@@ -1131,6 +1440,40 @@ module Google
1131
1440
  extend ::Google::Protobuf::MessageExts::ClassMethods
1132
1441
  end
1133
1442
 
1443
+ # Request for
1444
+ # {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#update_group HubService.UpdateGroup}
1445
+ # method.
1446
+ # @!attribute [rw] update_mask
1447
+ # @return [::Google::Protobuf::FieldMask]
1448
+ # Optional. In the case of an update to an existing group, field mask is used
1449
+ # to specify the fields to be overwritten. The fields specified in the
1450
+ # update_mask are relative to the resource, not the full request. A field is
1451
+ # overwritten if it is in the mask. If the user does not provide a mask, then
1452
+ # all fields are overwritten.
1453
+ # @!attribute [rw] group
1454
+ # @return [::Google::Cloud::NetworkConnectivity::V1::Group]
1455
+ # Required. The state that the group should be in after the update.
1456
+ # @!attribute [rw] request_id
1457
+ # @return [::String]
1458
+ # Optional. A request ID to identify requests. Specify a unique request ID so
1459
+ # that if you must retry your request, the server knows to ignore the request
1460
+ # if it has already been completed. The server guarantees that a request
1461
+ # doesn't result in creation of duplicate commitments for at least 60
1462
+ # minutes.
1463
+ #
1464
+ # For example, consider a situation where you make an initial request and
1465
+ # the request times out. If you make the request again with the same request
1466
+ # ID, the server can check to see whether the original operation
1467
+ # was received. If it was, the server ignores the second request. This
1468
+ # behavior prevents clients from mistakenly creating duplicate commitments.
1469
+ #
1470
+ # The request ID must be a valid UUID, with the exception that zero UUID is
1471
+ # not supported (00000000-0000-0000-0000-000000000000).
1472
+ class UpdateGroupRequest
1473
+ include ::Google::Protobuf::MessageExts
1474
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1475
+ end
1476
+
1134
1477
  # Supported features for a location
1135
1478
  module LocationFeature
1136
1479
  # No publicly supported feature in this location
@@ -1155,6 +1498,11 @@ module Google
1155
1498
  # The route leads to a destination within the secondary address range of the
1156
1499
  # VPC network's subnet.
1157
1500
  VPC_SECONDARY_SUBNET = 2
1501
+
1502
+ # The route leads to a destination in a dynamic route. Dynamic routes are
1503
+ # derived from Border Gateway Protocol (BGP) advertisements received from an
1504
+ # NCC hybrid spoke.
1505
+ DYNAMIC_ROUTE = 3
1158
1506
  end
1159
1507
 
1160
1508
  # The State enum represents the lifecycle stage of a Network Connectivity
@@ -1206,6 +1554,35 @@ module Google
1206
1554
 
1207
1555
  # Spokes associated with VPC networks.
1208
1556
  VPC_NETWORK = 4
1557
+
1558
+ # Spokes that are backed by a producer VPC network.
1559
+ PRODUCER_VPC_NETWORK = 7
1560
+ end
1561
+
1562
+ # This enum controls the policy mode used in a hub.
1563
+ module PolicyMode
1564
+ # Policy mode is unspecified. It defaults to PRESET
1565
+ # with preset_topology = MESH.
1566
+ POLICY_MODE_UNSPECIFIED = 0
1567
+
1568
+ # Hub uses one of the preset topologies.
1569
+ PRESET = 1
1570
+ end
1571
+
1572
+ # The list of available preset topologies.
1573
+ module PresetTopology
1574
+ # Preset topology is unspecified. When policy_mode = PRESET,
1575
+ # it defaults to MESH.
1576
+ PRESET_TOPOLOGY_UNSPECIFIED = 0
1577
+
1578
+ # Mesh topology is implemented. Group `default` is automatically created.
1579
+ # All spokes in the hub are added to group `default`.
1580
+ MESH = 2
1581
+
1582
+ # Star topology is implemented. Two groups, `center` and `edge`, are
1583
+ # automatically created along with hub creation. Spokes have to join one of
1584
+ # the groups during creation.
1585
+ STAR = 3
1209
1586
  end
1210
1587
  end
1211
1588
  end