google-apis-networkconnectivity_v1 0.25.0 → 0.27.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.
@@ -22,6 +22,35 @@ module Google
22
22
  module Apis
23
23
  module NetworkconnectivityV1
24
24
 
25
+ # The request for HubService.AcceptSpoke.
26
+ class AcceptSpokeRequest
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # Optional. A unique request ID (optional). If you specify this ID, you can use
30
+ # it in cases when you need to retry your request. When you need to retry, this
31
+ # ID lets the server know that it can ignore the request if it has already been
32
+ # completed. The server guarantees that for at least 60 minutes after the first
33
+ # request. For example, consider a situation where you make an initial request
34
+ # and the request times out. If you make the request again with the same request
35
+ # ID, the server can check to see whether the original operation was received.
36
+ # If it was, the server ignores the second request. This behavior prevents
37
+ # clients from mistakenly creating duplicate commitments. The request ID must be
38
+ # a valid UUID, with the exception that zero UUID is not supported (00000000-
39
+ # 0000-0000-0000-000000000000).
40
+ # Corresponds to the JSON property `requestId`
41
+ # @return [String]
42
+ attr_accessor :request_id
43
+
44
+ def initialize(**args)
45
+ update!(**args)
46
+ end
47
+
48
+ # Update properties of this object
49
+ def update!(**args)
50
+ @request_id = args[:request_id] if args.key?(:request_id)
51
+ end
52
+ end
53
+
25
54
  # Specifies the audit configuration for a service. The configuration determines
26
55
  # which permission types are logged, and what identities, if any, are exempted
27
56
  # from logging. An AuditConfig must have one or more AuditLogConfigs. If there
@@ -193,6 +222,12 @@ module Google
193
222
  # @return [String]
194
223
  attr_accessor :project
195
224
 
225
+ # Output only. Overall state of PSC Connections management for this consumer psc
226
+ # config.
227
+ # Corresponds to the JSON property `state`
228
+ # @return [String]
229
+ attr_accessor :state
230
+
196
231
  def initialize(**args)
197
232
  update!(**args)
198
233
  end
@@ -202,6 +237,7 @@ module Google
202
237
  @disable_global_access = args[:disable_global_access] if args.key?(:disable_global_access)
203
238
  @network = args[:network] if args.key?(:network)
204
239
  @project = args[:project] if args.key?(:project)
240
+ @state = args[:state] if args.key?(:state)
205
241
  end
206
242
  end
207
243
 
@@ -532,6 +568,14 @@ module Google
532
568
  # @return [String]
533
569
  attr_accessor :name
534
570
 
571
+ # Output only. The route tables that belong to this hub. They use the following
572
+ # form: `projects/`project_number`/locations/global/hubs/`hub_id`/routeTables/`
573
+ # route_table_id`` This field is read-only. Network Connectivity Center
574
+ # automatically populates it based on the route tables nested under the hub.
575
+ # Corresponds to the JSON property `routeTables`
576
+ # @return [Array<String>]
577
+ attr_accessor :route_tables
578
+
535
579
  # The VPC networks associated with this hub's spokes. This field is read-only.
536
580
  # Network Connectivity Center automatically populates it based on the set of
537
581
  # spokes attached to the hub.
@@ -539,6 +583,14 @@ module Google
539
583
  # @return [Array<Google::Apis::NetworkconnectivityV1::RoutingVpc>]
540
584
  attr_accessor :routing_vpcs
541
585
 
586
+ # Summarizes information about the spokes associated with a hub. The summary
587
+ # includes a count of spokes according to type and according to state. If any
588
+ # spokes are inactive, the summary also lists the reasons they are inactive,
589
+ # including a count for each reason.
590
+ # Corresponds to the JSON property `spokeSummary`
591
+ # @return [Google::Apis::NetworkconnectivityV1::SpokeSummary]
592
+ attr_accessor :spoke_summary
593
+
542
594
  # Output only. The current lifecycle state of this hub.
543
595
  # Corresponds to the JSON property `state`
544
596
  # @return [String]
@@ -566,7 +618,9 @@ module Google
566
618
  @description = args[:description] if args.key?(:description)
567
619
  @labels = args[:labels] if args.key?(:labels)
568
620
  @name = args[:name] if args.key?(:name)
621
+ @route_tables = args[:route_tables] if args.key?(:route_tables)
569
622
  @routing_vpcs = args[:routing_vpcs] if args.key?(:routing_vpcs)
623
+ @spoke_summary = args[:spoke_summary] if args.key?(:spoke_summary)
570
624
  @state = args[:state] if args.key?(:state)
571
625
  @unique_id = args[:unique_id] if args.key?(:unique_id)
572
626
  @update_time = args[:update_time] if args.key?(:update_time)
@@ -762,6 +816,31 @@ module Google
762
816
  end
763
817
  end
764
818
 
819
+ # An existing VPC network.
820
+ class LinkedVpcNetwork
821
+ include Google::Apis::Core::Hashable
822
+
823
+ # Optional. IP Ranges encompassing the subnets to be excluded from peering.
824
+ # Corresponds to the JSON property `excludeExportRanges`
825
+ # @return [Array<String>]
826
+ attr_accessor :exclude_export_ranges
827
+
828
+ # Required. The URI of the VPC network resource
829
+ # Corresponds to the JSON property `uri`
830
+ # @return [String]
831
+ attr_accessor :uri
832
+
833
+ def initialize(**args)
834
+ update!(**args)
835
+ end
836
+
837
+ # Update properties of this object
838
+ def update!(**args)
839
+ @exclude_export_ranges = args[:exclude_export_ranges] if args.key?(:exclude_export_ranges)
840
+ @uri = args[:uri] if args.key?(:uri)
841
+ end
842
+ end
843
+
765
844
  # A collection of Cloud VPN tunnel resources. These resources should be
766
845
  # redundant HA VPN tunnels that all advertise the same prefixes to Google Cloud.
767
846
  # Alternatively, in a passive/active configuration, all tunnels should be
@@ -800,6 +879,40 @@ module Google
800
879
  end
801
880
  end
802
881
 
882
+ # The response for HubService.ListHubSpokes.
883
+ class ListHubSpokesResponse
884
+ include Google::Apis::Core::Hashable
885
+
886
+ # The token for the next page of the response. To see more results, use this
887
+ # value as the page_token for your next request. If this value is empty, there
888
+ # are no more results.
889
+ # Corresponds to the JSON property `nextPageToken`
890
+ # @return [String]
891
+ attr_accessor :next_page_token
892
+
893
+ # The requested spokes. The spoke fields can be partially populated based on the
894
+ # `view` field in the request message.
895
+ # Corresponds to the JSON property `spokes`
896
+ # @return [Array<Google::Apis::NetworkconnectivityV1::Spoke>]
897
+ attr_accessor :spokes
898
+
899
+ # Locations that could not be reached.
900
+ # Corresponds to the JSON property `unreachable`
901
+ # @return [Array<String>]
902
+ attr_accessor :unreachable
903
+
904
+ def initialize(**args)
905
+ update!(**args)
906
+ end
907
+
908
+ # Update properties of this object
909
+ def update!(**args)
910
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
911
+ @spokes = args[:spokes] if args.key?(:spokes)
912
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
913
+ end
914
+ end
915
+
803
916
  # Response for HubService.ListHubs method.
804
917
  class ListHubsResponse
805
918
  include Google::Apis::Core::Hashable
@@ -890,6 +1003,72 @@ module Google
890
1003
  end
891
1004
  end
892
1005
 
1006
+ # Response for HubService.ListRouteTables method.
1007
+ class ListRouteTablesResponse
1008
+ include Google::Apis::Core::Hashable
1009
+
1010
+ # The token for the next page of the response. To see more results, use this
1011
+ # value as the page_token for your next request. If this value is empty, there
1012
+ # are no more results.
1013
+ # Corresponds to the JSON property `nextPageToken`
1014
+ # @return [String]
1015
+ attr_accessor :next_page_token
1016
+
1017
+ # The requested route tables.
1018
+ # Corresponds to the JSON property `routeTables`
1019
+ # @return [Array<Google::Apis::NetworkconnectivityV1::RouteTable>]
1020
+ attr_accessor :route_tables
1021
+
1022
+ # Hubs that could not be reached.
1023
+ # Corresponds to the JSON property `unreachable`
1024
+ # @return [Array<String>]
1025
+ attr_accessor :unreachable
1026
+
1027
+ def initialize(**args)
1028
+ update!(**args)
1029
+ end
1030
+
1031
+ # Update properties of this object
1032
+ def update!(**args)
1033
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1034
+ @route_tables = args[:route_tables] if args.key?(:route_tables)
1035
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
1036
+ end
1037
+ end
1038
+
1039
+ # Response for HubService.ListRoutes method.
1040
+ class ListRoutesResponse
1041
+ include Google::Apis::Core::Hashable
1042
+
1043
+ # The token for the next page of the response. To see more results, use this
1044
+ # value as the page_token for your next request. If this value is empty, there
1045
+ # are no more results.
1046
+ # Corresponds to the JSON property `nextPageToken`
1047
+ # @return [String]
1048
+ attr_accessor :next_page_token
1049
+
1050
+ # The requested routes.
1051
+ # Corresponds to the JSON property `routes`
1052
+ # @return [Array<Google::Apis::NetworkconnectivityV1::Route>]
1053
+ attr_accessor :routes
1054
+
1055
+ # RouteTables that could not be reached.
1056
+ # Corresponds to the JSON property `unreachable`
1057
+ # @return [Array<String>]
1058
+ attr_accessor :unreachable
1059
+
1060
+ def initialize(**args)
1061
+ update!(**args)
1062
+ end
1063
+
1064
+ # Update properties of this object
1065
+ def update!(**args)
1066
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1067
+ @routes = args[:routes] if args.key?(:routes)
1068
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
1069
+ end
1070
+ end
1071
+
893
1072
  # Response for ListServiceClasses.
894
1073
  class ListServiceClassesResponse
895
1074
  include Google::Apis::Core::Hashable
@@ -1117,6 +1296,25 @@ module Google
1117
1296
  end
1118
1297
  end
1119
1298
 
1299
+ #
1300
+ class NextHopVpcNetwork
1301
+ include Google::Apis::Core::Hashable
1302
+
1303
+ # The URI of the VPC network resource
1304
+ # Corresponds to the JSON property `uri`
1305
+ # @return [String]
1306
+ attr_accessor :uri
1307
+
1308
+ def initialize(**args)
1309
+ update!(**args)
1310
+ end
1311
+
1312
+ # Update properties of this object
1313
+ def update!(**args)
1314
+ @uri = args[:uri] if args.key?(:uri)
1315
+ end
1316
+ end
1317
+
1120
1318
  # Represents the metadata of the long-running operation.
1121
1319
  class OperationMetadata
1122
1320
  include Google::Apis::Core::Hashable
@@ -1296,7 +1494,7 @@ module Google
1296
1494
  class PscConfig
1297
1495
  include Google::Apis::Core::Hashable
1298
1496
 
1299
- # Max number of PSC connections for this policy.
1497
+ # Optional. Max number of PSC connections for this policy.
1300
1498
  # Corresponds to the JSON property `limit`
1301
1499
  # @return [Fixnum]
1302
1500
  attr_accessor :limit
@@ -1385,6 +1583,199 @@ module Google
1385
1583
  end
1386
1584
  end
1387
1585
 
1586
+ # The request for HubService.RejectSpoke.
1587
+ class RejectSpokeRequest
1588
+ include Google::Apis::Core::Hashable
1589
+
1590
+ # Optional. Additional Details behind the rejection
1591
+ # Corresponds to the JSON property `details`
1592
+ # @return [String]
1593
+ attr_accessor :details
1594
+
1595
+ # Optional. A unique request ID (optional). If you specify this ID, you can use
1596
+ # it in cases when you need to retry your request. When you need to retry, this
1597
+ # ID lets the server know that it can ignore the request if it has already been
1598
+ # completed. The server guarantees that for at least 60 minutes after the first
1599
+ # request. For example, consider a situation where you make an initial request
1600
+ # and the request times out. If you make the request again with the same request
1601
+ # ID, the server can check to see whether the original operation was received.
1602
+ # If it was, the server ignores the second request. This behavior prevents
1603
+ # clients from mistakenly creating duplicate commitments. The request ID must be
1604
+ # a valid UUID, with the exception that zero UUID is not supported (00000000-
1605
+ # 0000-0000-0000-000000000000).
1606
+ # Corresponds to the JSON property `requestId`
1607
+ # @return [String]
1608
+ attr_accessor :request_id
1609
+
1610
+ def initialize(**args)
1611
+ update!(**args)
1612
+ end
1613
+
1614
+ # Update properties of this object
1615
+ def update!(**args)
1616
+ @details = args[:details] if args.key?(:details)
1617
+ @request_id = args[:request_id] if args.key?(:request_id)
1618
+ end
1619
+ end
1620
+
1621
+ # A route defines a path from VM instances within a spoke to a specific
1622
+ # destination resource. Only VPC spokes have routes.
1623
+ class Route
1624
+ include Google::Apis::Core::Hashable
1625
+
1626
+ # Output only. The time the route was created.
1627
+ # Corresponds to the JSON property `createTime`
1628
+ # @return [String]
1629
+ attr_accessor :create_time
1630
+
1631
+ # An optional description of the route.
1632
+ # Corresponds to the JSON property `description`
1633
+ # @return [String]
1634
+ attr_accessor :description
1635
+
1636
+ # The destination IP address range.
1637
+ # Corresponds to the JSON property `ipCidrRange`
1638
+ # @return [String]
1639
+ attr_accessor :ip_cidr_range
1640
+
1641
+ # Optional labels in key:value format. For more information about labels, see [
1642
+ # Requirements for labels](https://cloud.google.com/resource-manager/docs/
1643
+ # creating-managing-labels#requirements).
1644
+ # Corresponds to the JSON property `labels`
1645
+ # @return [Hash<String,String>]
1646
+ attr_accessor :labels
1647
+
1648
+ # Output only. The location of the route. Uses the following form: "projects/`
1649
+ # project`/locations/`location`" Example: projects/1234/locations/us-central1
1650
+ # Corresponds to the JSON property `location`
1651
+ # @return [String]
1652
+ attr_accessor :location
1653
+
1654
+ # Immutable. The name of the route. Route names must be unique. They use the
1655
+ # following form: `projects/`project_number`/locations/global/hubs/`hub`/
1656
+ # routeTables/`route_table_id`/routes/`route_id``
1657
+ # Corresponds to the JSON property `name`
1658
+ # @return [String]
1659
+ attr_accessor :name
1660
+
1661
+ # Immutable. The destination VPC network for packets on this route.
1662
+ # Corresponds to the JSON property `nextHopVpcNetwork`
1663
+ # @return [Google::Apis::NetworkconnectivityV1::NextHopVpcNetwork]
1664
+ attr_accessor :next_hop_vpc_network
1665
+
1666
+ # Immutable. The spoke that this route leads to. Example: projects/12345/
1667
+ # locations/global/spokes/SPOKE
1668
+ # Corresponds to the JSON property `spoke`
1669
+ # @return [String]
1670
+ attr_accessor :spoke
1671
+
1672
+ # Output only. The current lifecycle state of the route.
1673
+ # Corresponds to the JSON property `state`
1674
+ # @return [String]
1675
+ attr_accessor :state
1676
+
1677
+ # Output only. The route's type. Its type is determined by the properties of its
1678
+ # IP address range.
1679
+ # Corresponds to the JSON property `type`
1680
+ # @return [String]
1681
+ attr_accessor :type
1682
+
1683
+ # Output only. The Google-generated UUID for the route. This value is unique
1684
+ # across all Network Connectivity Center route resources. If a route is deleted
1685
+ # and another with the same name is created, the new route is assigned a
1686
+ # different unique_id.
1687
+ # Corresponds to the JSON property `uid`
1688
+ # @return [String]
1689
+ attr_accessor :uid
1690
+
1691
+ # Output only. The time the route was last updated.
1692
+ # Corresponds to the JSON property `updateTime`
1693
+ # @return [String]
1694
+ attr_accessor :update_time
1695
+
1696
+ def initialize(**args)
1697
+ update!(**args)
1698
+ end
1699
+
1700
+ # Update properties of this object
1701
+ def update!(**args)
1702
+ @create_time = args[:create_time] if args.key?(:create_time)
1703
+ @description = args[:description] if args.key?(:description)
1704
+ @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range)
1705
+ @labels = args[:labels] if args.key?(:labels)
1706
+ @location = args[:location] if args.key?(:location)
1707
+ @name = args[:name] if args.key?(:name)
1708
+ @next_hop_vpc_network = args[:next_hop_vpc_network] if args.key?(:next_hop_vpc_network)
1709
+ @spoke = args[:spoke] if args.key?(:spoke)
1710
+ @state = args[:state] if args.key?(:state)
1711
+ @type = args[:type] if args.key?(:type)
1712
+ @uid = args[:uid] if args.key?(:uid)
1713
+ @update_time = args[:update_time] if args.key?(:update_time)
1714
+ end
1715
+ end
1716
+
1717
+ #
1718
+ class RouteTable
1719
+ include Google::Apis::Core::Hashable
1720
+
1721
+ # Output only. The time the route table was created.
1722
+ # Corresponds to the JSON property `createTime`
1723
+ # @return [String]
1724
+ attr_accessor :create_time
1725
+
1726
+ # An optional description of the route table.
1727
+ # Corresponds to the JSON property `description`
1728
+ # @return [String]
1729
+ attr_accessor :description
1730
+
1731
+ # Optional labels in key:value format. For more information about labels, see [
1732
+ # Requirements for labels](https://cloud.google.com/resource-manager/docs/
1733
+ # creating-managing-labels#requirements).
1734
+ # Corresponds to the JSON property `labels`
1735
+ # @return [Hash<String,String>]
1736
+ attr_accessor :labels
1737
+
1738
+ # Immutable. The name of the route table. Route Table names must be unique. They
1739
+ # use the following form: `projects/`project_number`/locations/global/hubs/`hub`/
1740
+ # routeTables/`route_table_id``
1741
+ # Corresponds to the JSON property `name`
1742
+ # @return [String]
1743
+ attr_accessor :name
1744
+
1745
+ # Output only. The current lifecycle state of this route table.
1746
+ # Corresponds to the JSON property `state`
1747
+ # @return [String]
1748
+ attr_accessor :state
1749
+
1750
+ # Output only. The Google-generated UUID for the route table. This value is
1751
+ # unique across all route table resources. If a route table is deleted and
1752
+ # another with the same name is created, the new route table is assigned a
1753
+ # different unique_id.
1754
+ # Corresponds to the JSON property `uid`
1755
+ # @return [String]
1756
+ attr_accessor :uid
1757
+
1758
+ # Output only. The time the route table was last updated.
1759
+ # Corresponds to the JSON property `updateTime`
1760
+ # @return [String]
1761
+ attr_accessor :update_time
1762
+
1763
+ def initialize(**args)
1764
+ update!(**args)
1765
+ end
1766
+
1767
+ # Update properties of this object
1768
+ def update!(**args)
1769
+ @create_time = args[:create_time] if args.key?(:create_time)
1770
+ @description = args[:description] if args.key?(:description)
1771
+ @labels = args[:labels] if args.key?(:labels)
1772
+ @name = args[:name] if args.key?(:name)
1773
+ @state = args[:state] if args.key?(:state)
1774
+ @uid = args[:uid] if args.key?(:uid)
1775
+ @update_time = args[:update_time] if args.key?(:update_time)
1776
+ end
1777
+ end
1778
+
1388
1779
  # A router appliance instance is a Compute Engine virtual machine (VM) instance
1389
1780
  # that acts as a BGP speaker. A router appliance instance is specified by the
1390
1781
  # URI of the VM and the internal IP address of one of the VM's network
@@ -1444,7 +1835,7 @@ module Google
1444
1835
  end
1445
1836
  end
1446
1837
 
1447
- # The ServiceClass resource. Next id: 8
1838
+ # The ServiceClass resource. Next id: 9
1448
1839
  class ServiceClass
1449
1840
  include Google::Apis::Core::Hashable
1450
1841
 
@@ -1458,6 +1849,12 @@ module Google
1458
1849
  # @return [String]
1459
1850
  attr_accessor :description
1460
1851
 
1852
+ # Optional. The etag is computed by the server, and may be sent on update and
1853
+ # delete requests to ensure the client has an up-to-date value before proceeding.
1854
+ # Corresponds to the JSON property `etag`
1855
+ # @return [String]
1856
+ attr_accessor :etag
1857
+
1461
1858
  # User-defined labels.
1462
1859
  # Corresponds to the JSON property `labels`
1463
1860
  # @return [Hash<String,String>]
@@ -1494,6 +1891,7 @@ module Google
1494
1891
  def update!(**args)
1495
1892
  @create_time = args[:create_time] if args.key?(:create_time)
1496
1893
  @description = args[:description] if args.key?(:description)
1894
+ @etag = args[:etag] if args.key?(:etag)
1497
1895
  @labels = args[:labels] if args.key?(:labels)
1498
1896
  @name = args[:name] if args.key?(:name)
1499
1897
  @service_class = args[:service_class] if args.key?(:service_class)
@@ -1502,7 +1900,7 @@ module Google
1502
1900
  end
1503
1901
  end
1504
1902
 
1505
- # The ServiceConnectionMap resource. Next id: 14
1903
+ # The ServiceConnectionMap resource. Next id: 15
1506
1904
  class ServiceConnectionMap
1507
1905
  include Google::Apis::Core::Hashable
1508
1906
 
@@ -1526,6 +1924,12 @@ module Google
1526
1924
  # @return [String]
1527
1925
  attr_accessor :description
1528
1926
 
1927
+ # Optional. The etag is computed by the server, and may be sent on update and
1928
+ # delete requests to ensure the client has an up-to-date value before proceeding.
1929
+ # Corresponds to the JSON property `etag`
1930
+ # @return [String]
1931
+ attr_accessor :etag
1932
+
1529
1933
  # Output only. The infrastructure used for connections between consumers/
1530
1934
  # producers.
1531
1935
  # Corresponds to the JSON property `infrastructure`
@@ -1582,6 +1986,7 @@ module Google
1582
1986
  @consumer_psc_connections = args[:consumer_psc_connections] if args.key?(:consumer_psc_connections)
1583
1987
  @create_time = args[:create_time] if args.key?(:create_time)
1584
1988
  @description = args[:description] if args.key?(:description)
1989
+ @etag = args[:etag] if args.key?(:etag)
1585
1990
  @infrastructure = args[:infrastructure] if args.key?(:infrastructure)
1586
1991
  @labels = args[:labels] if args.key?(:labels)
1587
1992
  @name = args[:name] if args.key?(:name)
@@ -1593,7 +1998,7 @@ module Google
1593
1998
  end
1594
1999
  end
1595
2000
 
1596
- # The ServiceConnectionPolicy resource. Next id: 11
2001
+ # The ServiceConnectionPolicy resource. Next id: 12
1597
2002
  class ServiceConnectionPolicy
1598
2003
  include Google::Apis::Core::Hashable
1599
2004
 
@@ -1607,6 +2012,12 @@ module Google
1607
2012
  # @return [String]
1608
2013
  attr_accessor :description
1609
2014
 
2015
+ # Optional. The etag is computed by the server, and may be sent on update and
2016
+ # delete requests to ensure the client has an up-to-date value before proceeding.
2017
+ # Corresponds to the JSON property `etag`
2018
+ # @return [String]
2019
+ attr_accessor :etag
2020
+
1610
2021
  # Output only. The type of underlying resources used to create the connection.
1611
2022
  # Corresponds to the JSON property `infrastructure`
1612
2023
  # @return [String]
@@ -1664,6 +2075,7 @@ module Google
1664
2075
  def update!(**args)
1665
2076
  @create_time = args[:create_time] if args.key?(:create_time)
1666
2077
  @description = args[:description] if args.key?(:description)
2078
+ @etag = args[:etag] if args.key?(:etag)
1667
2079
  @infrastructure = args[:infrastructure] if args.key?(:infrastructure)
1668
2080
  @labels = args[:labels] if args.key?(:labels)
1669
2081
  @name = args[:name] if args.key?(:name)
@@ -1675,7 +2087,7 @@ module Google
1675
2087
  end
1676
2088
  end
1677
2089
 
1678
- # The ServiceConnectionToken resource. Next id: 9
2090
+ # The ServiceConnectionToken resource. Next id: 10
1679
2091
  class ServiceConnectionToken
1680
2092
  include Google::Apis::Core::Hashable
1681
2093
 
@@ -1689,6 +2101,12 @@ module Google
1689
2101
  # @return [String]
1690
2102
  attr_accessor :description
1691
2103
 
2104
+ # Optional. The etag is computed by the server, and may be sent on update and
2105
+ # delete requests to ensure the client has an up-to-date value before proceeding.
2106
+ # Corresponds to the JSON property `etag`
2107
+ # @return [String]
2108
+ attr_accessor :etag
2109
+
1692
2110
  # Output only. The time to which this token is valid.
1693
2111
  # Corresponds to the JSON property `expireTime`
1694
2112
  # @return [String]
@@ -1730,6 +2148,7 @@ module Google
1730
2148
  def update!(**args)
1731
2149
  @create_time = args[:create_time] if args.key?(:create_time)
1732
2150
  @description = args[:description] if args.key?(:description)
2151
+ @etag = args[:etag] if args.key?(:etag)
1733
2152
  @expire_time = args[:expire_time] if args.key?(:expire_time)
1734
2153
  @labels = args[:labels] if args.key?(:labels)
1735
2154
  @name = args[:name] if args.key?(:name)
@@ -1838,6 +2257,11 @@ module Google
1838
2257
  # @return [Google::Apis::NetworkconnectivityV1::LinkedRouterApplianceInstances]
1839
2258
  attr_accessor :linked_router_appliance_instances
1840
2259
 
2260
+ # An existing VPC network.
2261
+ # Corresponds to the JSON property `linkedVpcNetwork`
2262
+ # @return [Google::Apis::NetworkconnectivityV1::LinkedVpcNetwork]
2263
+ attr_accessor :linked_vpc_network
2264
+
1841
2265
  # A collection of Cloud VPN tunnel resources. These resources should be
1842
2266
  # redundant HA VPN tunnels that all advertise the same prefixes to Google Cloud.
1843
2267
  # Alternatively, in a passive/active configuration, all tunnels should be
@@ -1853,6 +2277,16 @@ module Google
1853
2277
  # @return [String]
1854
2278
  attr_accessor :name
1855
2279
 
2280
+ # Output only. The reasons for current state of the spoke.
2281
+ # Corresponds to the JSON property `reasons`
2282
+ # @return [Array<Google::Apis::NetworkconnectivityV1::StateReason>]
2283
+ attr_accessor :reasons
2284
+
2285
+ # Output only. The type of resource associated with the spoke.
2286
+ # Corresponds to the JSON property `spokeType`
2287
+ # @return [String]
2288
+ attr_accessor :spoke_type
2289
+
1856
2290
  # Output only. The current lifecycle state of this spoke.
1857
2291
  # Corresponds to the JSON property `state`
1858
2292
  # @return [String]
@@ -1882,14 +2316,165 @@ module Google
1882
2316
  @labels = args[:labels] if args.key?(:labels)
1883
2317
  @linked_interconnect_attachments = args[:linked_interconnect_attachments] if args.key?(:linked_interconnect_attachments)
1884
2318
  @linked_router_appliance_instances = args[:linked_router_appliance_instances] if args.key?(:linked_router_appliance_instances)
2319
+ @linked_vpc_network = args[:linked_vpc_network] if args.key?(:linked_vpc_network)
1885
2320
  @linked_vpn_tunnels = args[:linked_vpn_tunnels] if args.key?(:linked_vpn_tunnels)
1886
2321
  @name = args[:name] if args.key?(:name)
2322
+ @reasons = args[:reasons] if args.key?(:reasons)
2323
+ @spoke_type = args[:spoke_type] if args.key?(:spoke_type)
1887
2324
  @state = args[:state] if args.key?(:state)
1888
2325
  @unique_id = args[:unique_id] if args.key?(:unique_id)
1889
2326
  @update_time = args[:update_time] if args.key?(:update_time)
1890
2327
  end
1891
2328
  end
1892
2329
 
2330
+ # The number of spokes that are in a particular state and associated with a
2331
+ # given hub.
2332
+ class SpokeStateCount
2333
+ include Google::Apis::Core::Hashable
2334
+
2335
+ # Output only. The total number of spokes that are in this state and associated
2336
+ # with a given hub.
2337
+ # Corresponds to the JSON property `count`
2338
+ # @return [Fixnum]
2339
+ attr_accessor :count
2340
+
2341
+ # Output only. The state of the spokes.
2342
+ # Corresponds to the JSON property `state`
2343
+ # @return [String]
2344
+ attr_accessor :state
2345
+
2346
+ def initialize(**args)
2347
+ update!(**args)
2348
+ end
2349
+
2350
+ # Update properties of this object
2351
+ def update!(**args)
2352
+ @count = args[:count] if args.key?(:count)
2353
+ @state = args[:state] if args.key?(:state)
2354
+ end
2355
+ end
2356
+
2357
+ # The number of spokes in the hub that are inactive for this reason.
2358
+ class SpokeStateReasonCount
2359
+ include Google::Apis::Core::Hashable
2360
+
2361
+ # Output only. The total number of spokes that are inactive for a particular
2362
+ # reason and associated with a given hub.
2363
+ # Corresponds to the JSON property `count`
2364
+ # @return [Fixnum]
2365
+ attr_accessor :count
2366
+
2367
+ # Output only. The reason that a spoke is inactive.
2368
+ # Corresponds to the JSON property `stateReasonCode`
2369
+ # @return [String]
2370
+ attr_accessor :state_reason_code
2371
+
2372
+ def initialize(**args)
2373
+ update!(**args)
2374
+ end
2375
+
2376
+ # Update properties of this object
2377
+ def update!(**args)
2378
+ @count = args[:count] if args.key?(:count)
2379
+ @state_reason_code = args[:state_reason_code] if args.key?(:state_reason_code)
2380
+ end
2381
+ end
2382
+
2383
+ # Summarizes information about the spokes associated with a hub. The summary
2384
+ # includes a count of spokes according to type and according to state. If any
2385
+ # spokes are inactive, the summary also lists the reasons they are inactive,
2386
+ # including a count for each reason.
2387
+ class SpokeSummary
2388
+ include Google::Apis::Core::Hashable
2389
+
2390
+ # Output only. Counts the number of spokes that are in each state and associated
2391
+ # with a given hub.
2392
+ # Corresponds to the JSON property `spokeStateCounts`
2393
+ # @return [Array<Google::Apis::NetworkconnectivityV1::SpokeStateCount>]
2394
+ attr_accessor :spoke_state_counts
2395
+
2396
+ # Output only. Counts the number of spokes that are inactive for each possible
2397
+ # reason and associated with a given hub.
2398
+ # Corresponds to the JSON property `spokeStateReasonCounts`
2399
+ # @return [Array<Google::Apis::NetworkconnectivityV1::SpokeStateReasonCount>]
2400
+ attr_accessor :spoke_state_reason_counts
2401
+
2402
+ # Output only. Counts the number of spokes of each type that are associated with
2403
+ # a specific hub.
2404
+ # Corresponds to the JSON property `spokeTypeCounts`
2405
+ # @return [Array<Google::Apis::NetworkconnectivityV1::SpokeTypeCount>]
2406
+ attr_accessor :spoke_type_counts
2407
+
2408
+ def initialize(**args)
2409
+ update!(**args)
2410
+ end
2411
+
2412
+ # Update properties of this object
2413
+ def update!(**args)
2414
+ @spoke_state_counts = args[:spoke_state_counts] if args.key?(:spoke_state_counts)
2415
+ @spoke_state_reason_counts = args[:spoke_state_reason_counts] if args.key?(:spoke_state_reason_counts)
2416
+ @spoke_type_counts = args[:spoke_type_counts] if args.key?(:spoke_type_counts)
2417
+ end
2418
+ end
2419
+
2420
+ # The number of spokes of a given type that are associated with a specific hub.
2421
+ # The type indicates what kind of resource is associated with the spoke.
2422
+ class SpokeTypeCount
2423
+ include Google::Apis::Core::Hashable
2424
+
2425
+ # Output only. The total number of spokes of this type that are associated with
2426
+ # the hub.
2427
+ # Corresponds to the JSON property `count`
2428
+ # @return [Fixnum]
2429
+ attr_accessor :count
2430
+
2431
+ # Output only. The type of the spokes.
2432
+ # Corresponds to the JSON property `spokeType`
2433
+ # @return [String]
2434
+ attr_accessor :spoke_type
2435
+
2436
+ def initialize(**args)
2437
+ update!(**args)
2438
+ end
2439
+
2440
+ # Update properties of this object
2441
+ def update!(**args)
2442
+ @count = args[:count] if args.key?(:count)
2443
+ @spoke_type = args[:spoke_type] if args.key?(:spoke_type)
2444
+ end
2445
+ end
2446
+
2447
+ # The reason a spoke is inactive.
2448
+ class StateReason
2449
+ include Google::Apis::Core::Hashable
2450
+
2451
+ # The code associated with this reason.
2452
+ # Corresponds to the JSON property `code`
2453
+ # @return [String]
2454
+ attr_accessor :code
2455
+
2456
+ # Human-readable details about this reason.
2457
+ # Corresponds to the JSON property `message`
2458
+ # @return [String]
2459
+ attr_accessor :message
2460
+
2461
+ # Additional information provided by the user in the RejectSpoke call.
2462
+ # Corresponds to the JSON property `userDetails`
2463
+ # @return [String]
2464
+ attr_accessor :user_details
2465
+
2466
+ def initialize(**args)
2467
+ update!(**args)
2468
+ end
2469
+
2470
+ # Update properties of this object
2471
+ def update!(**args)
2472
+ @code = args[:code] if args.key?(:code)
2473
+ @message = args[:message] if args.key?(:message)
2474
+ @user_details = args[:user_details] if args.key?(:user_details)
2475
+ end
2476
+ end
2477
+
1893
2478
  # Request message for `TestIamPermissions` method.
1894
2479
  class TestIamPermissionsRequest
1895
2480
  include Google::Apis::Core::Hashable