google-apis-networkconnectivity_v1 0.26.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
@@ -539,6 +568,14 @@ module Google
539
568
  # @return [String]
540
569
  attr_accessor :name
541
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
+
542
579
  # The VPC networks associated with this hub's spokes. This field is read-only.
543
580
  # Network Connectivity Center automatically populates it based on the set of
544
581
  # spokes attached to the hub.
@@ -546,6 +583,14 @@ module Google
546
583
  # @return [Array<Google::Apis::NetworkconnectivityV1::RoutingVpc>]
547
584
  attr_accessor :routing_vpcs
548
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
+
549
594
  # Output only. The current lifecycle state of this hub.
550
595
  # Corresponds to the JSON property `state`
551
596
  # @return [String]
@@ -573,7 +618,9 @@ module Google
573
618
  @description = args[:description] if args.key?(:description)
574
619
  @labels = args[:labels] if args.key?(:labels)
575
620
  @name = args[:name] if args.key?(:name)
621
+ @route_tables = args[:route_tables] if args.key?(:route_tables)
576
622
  @routing_vpcs = args[:routing_vpcs] if args.key?(:routing_vpcs)
623
+ @spoke_summary = args[:spoke_summary] if args.key?(:spoke_summary)
577
624
  @state = args[:state] if args.key?(:state)
578
625
  @unique_id = args[:unique_id] if args.key?(:unique_id)
579
626
  @update_time = args[:update_time] if args.key?(:update_time)
@@ -769,6 +816,31 @@ module Google
769
816
  end
770
817
  end
771
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
+
772
844
  # A collection of Cloud VPN tunnel resources. These resources should be
773
845
  # redundant HA VPN tunnels that all advertise the same prefixes to Google Cloud.
774
846
  # Alternatively, in a passive/active configuration, all tunnels should be
@@ -807,6 +879,40 @@ module Google
807
879
  end
808
880
  end
809
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
+
810
916
  # Response for HubService.ListHubs method.
811
917
  class ListHubsResponse
812
918
  include Google::Apis::Core::Hashable
@@ -897,6 +1003,72 @@ module Google
897
1003
  end
898
1004
  end
899
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
+
900
1072
  # Response for ListServiceClasses.
901
1073
  class ListServiceClassesResponse
902
1074
  include Google::Apis::Core::Hashable
@@ -1124,6 +1296,25 @@ module Google
1124
1296
  end
1125
1297
  end
1126
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
+
1127
1318
  # Represents the metadata of the long-running operation.
1128
1319
  class OperationMetadata
1129
1320
  include Google::Apis::Core::Hashable
@@ -1303,7 +1494,7 @@ module Google
1303
1494
  class PscConfig
1304
1495
  include Google::Apis::Core::Hashable
1305
1496
 
1306
- # Max number of PSC connections for this policy.
1497
+ # Optional. Max number of PSC connections for this policy.
1307
1498
  # Corresponds to the JSON property `limit`
1308
1499
  # @return [Fixnum]
1309
1500
  attr_accessor :limit
@@ -1392,6 +1583,199 @@ module Google
1392
1583
  end
1393
1584
  end
1394
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
+
1395
1779
  # A router appliance instance is a Compute Engine virtual machine (VM) instance
1396
1780
  # that acts as a BGP speaker. A router appliance instance is specified by the
1397
1781
  # URI of the VM and the internal IP address of one of the VM's network
@@ -1451,7 +1835,7 @@ module Google
1451
1835
  end
1452
1836
  end
1453
1837
 
1454
- # The ServiceClass resource. Next id: 8
1838
+ # The ServiceClass resource. Next id: 9
1455
1839
  class ServiceClass
1456
1840
  include Google::Apis::Core::Hashable
1457
1841
 
@@ -1465,6 +1849,12 @@ module Google
1465
1849
  # @return [String]
1466
1850
  attr_accessor :description
1467
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
+
1468
1858
  # User-defined labels.
1469
1859
  # Corresponds to the JSON property `labels`
1470
1860
  # @return [Hash<String,String>]
@@ -1501,6 +1891,7 @@ module Google
1501
1891
  def update!(**args)
1502
1892
  @create_time = args[:create_time] if args.key?(:create_time)
1503
1893
  @description = args[:description] if args.key?(:description)
1894
+ @etag = args[:etag] if args.key?(:etag)
1504
1895
  @labels = args[:labels] if args.key?(:labels)
1505
1896
  @name = args[:name] if args.key?(:name)
1506
1897
  @service_class = args[:service_class] if args.key?(:service_class)
@@ -1509,7 +1900,7 @@ module Google
1509
1900
  end
1510
1901
  end
1511
1902
 
1512
- # The ServiceConnectionMap resource. Next id: 14
1903
+ # The ServiceConnectionMap resource. Next id: 15
1513
1904
  class ServiceConnectionMap
1514
1905
  include Google::Apis::Core::Hashable
1515
1906
 
@@ -1533,6 +1924,12 @@ module Google
1533
1924
  # @return [String]
1534
1925
  attr_accessor :description
1535
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
+
1536
1933
  # Output only. The infrastructure used for connections between consumers/
1537
1934
  # producers.
1538
1935
  # Corresponds to the JSON property `infrastructure`
@@ -1589,6 +1986,7 @@ module Google
1589
1986
  @consumer_psc_connections = args[:consumer_psc_connections] if args.key?(:consumer_psc_connections)
1590
1987
  @create_time = args[:create_time] if args.key?(:create_time)
1591
1988
  @description = args[:description] if args.key?(:description)
1989
+ @etag = args[:etag] if args.key?(:etag)
1592
1990
  @infrastructure = args[:infrastructure] if args.key?(:infrastructure)
1593
1991
  @labels = args[:labels] if args.key?(:labels)
1594
1992
  @name = args[:name] if args.key?(:name)
@@ -1600,7 +1998,7 @@ module Google
1600
1998
  end
1601
1999
  end
1602
2000
 
1603
- # The ServiceConnectionPolicy resource. Next id: 11
2001
+ # The ServiceConnectionPolicy resource. Next id: 12
1604
2002
  class ServiceConnectionPolicy
1605
2003
  include Google::Apis::Core::Hashable
1606
2004
 
@@ -1614,6 +2012,12 @@ module Google
1614
2012
  # @return [String]
1615
2013
  attr_accessor :description
1616
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
+
1617
2021
  # Output only. The type of underlying resources used to create the connection.
1618
2022
  # Corresponds to the JSON property `infrastructure`
1619
2023
  # @return [String]
@@ -1671,6 +2075,7 @@ module Google
1671
2075
  def update!(**args)
1672
2076
  @create_time = args[:create_time] if args.key?(:create_time)
1673
2077
  @description = args[:description] if args.key?(:description)
2078
+ @etag = args[:etag] if args.key?(:etag)
1674
2079
  @infrastructure = args[:infrastructure] if args.key?(:infrastructure)
1675
2080
  @labels = args[:labels] if args.key?(:labels)
1676
2081
  @name = args[:name] if args.key?(:name)
@@ -1682,7 +2087,7 @@ module Google
1682
2087
  end
1683
2088
  end
1684
2089
 
1685
- # The ServiceConnectionToken resource. Next id: 9
2090
+ # The ServiceConnectionToken resource. Next id: 10
1686
2091
  class ServiceConnectionToken
1687
2092
  include Google::Apis::Core::Hashable
1688
2093
 
@@ -1696,6 +2101,12 @@ module Google
1696
2101
  # @return [String]
1697
2102
  attr_accessor :description
1698
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
+
1699
2110
  # Output only. The time to which this token is valid.
1700
2111
  # Corresponds to the JSON property `expireTime`
1701
2112
  # @return [String]
@@ -1737,6 +2148,7 @@ module Google
1737
2148
  def update!(**args)
1738
2149
  @create_time = args[:create_time] if args.key?(:create_time)
1739
2150
  @description = args[:description] if args.key?(:description)
2151
+ @etag = args[:etag] if args.key?(:etag)
1740
2152
  @expire_time = args[:expire_time] if args.key?(:expire_time)
1741
2153
  @labels = args[:labels] if args.key?(:labels)
1742
2154
  @name = args[:name] if args.key?(:name)
@@ -1845,6 +2257,11 @@ module Google
1845
2257
  # @return [Google::Apis::NetworkconnectivityV1::LinkedRouterApplianceInstances]
1846
2258
  attr_accessor :linked_router_appliance_instances
1847
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
+
1848
2265
  # A collection of Cloud VPN tunnel resources. These resources should be
1849
2266
  # redundant HA VPN tunnels that all advertise the same prefixes to Google Cloud.
1850
2267
  # Alternatively, in a passive/active configuration, all tunnels should be
@@ -1860,6 +2277,16 @@ module Google
1860
2277
  # @return [String]
1861
2278
  attr_accessor :name
1862
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
+
1863
2290
  # Output only. The current lifecycle state of this spoke.
1864
2291
  # Corresponds to the JSON property `state`
1865
2292
  # @return [String]
@@ -1889,14 +2316,165 @@ module Google
1889
2316
  @labels = args[:labels] if args.key?(:labels)
1890
2317
  @linked_interconnect_attachments = args[:linked_interconnect_attachments] if args.key?(:linked_interconnect_attachments)
1891
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)
1892
2320
  @linked_vpn_tunnels = args[:linked_vpn_tunnels] if args.key?(:linked_vpn_tunnels)
1893
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)
1894
2324
  @state = args[:state] if args.key?(:state)
1895
2325
  @unique_id = args[:unique_id] if args.key?(:unique_id)
1896
2326
  @update_time = args[:update_time] if args.key?(:update_time)
1897
2327
  end
1898
2328
  end
1899
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
+
1900
2478
  # Request message for `TestIamPermissions` method.
1901
2479
  class TestIamPermissionsRequest
1902
2480
  include Google::Apis::Core::Hashable