Class: Google::Apis::NetworkconnectivityV1::PolicyBasedRoute
- Inherits:
-
Object
- Object
- Google::Apis::NetworkconnectivityV1::PolicyBasedRoute
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/networkconnectivity_v1/classes.rb,
lib/google/apis/networkconnectivity_v1/representations.rb,
lib/google/apis/networkconnectivity_v1/representations.rb
Overview
Policy-based routes route L4 network traffic based on not just destination IP address, but also source IP address, protocol, and more. If a policy-based route conflicts with other types of routes, the policy-based route always take precedence.
Instance Attribute Summary collapse
-
#create_time ⇒ String
Output only.
-
#description ⇒ String
Optional.
-
#filter ⇒ Google::Apis::NetworkconnectivityV1::Filter
Filter matches L4 traffic.
-
#interconnect_attachment ⇒ Google::Apis::NetworkconnectivityV1::InterconnectAttachment
InterconnectAttachment that this route applies to.
-
#kind ⇒ String
Output only.
-
#labels ⇒ Hash<String,String>
User-defined labels.
-
#name ⇒ String
Immutable.
-
#network ⇒ String
Required.
-
#next_hop_ilb_ip ⇒ String
Optional.
-
#next_hop_other_routes ⇒ String
Optional.
-
#priority ⇒ Fixnum
Optional.
-
#self_link ⇒ String
Output only.
-
#update_time ⇒ String
Output only.
-
#virtual_machine ⇒ Google::Apis::NetworkconnectivityV1::VirtualMachine
VM instances to which this policy-based route applies to.
-
#warnings ⇒ Array<Google::Apis::NetworkconnectivityV1::Warnings>
Output only.
Instance Method Summary collapse
-
#initialize(**args) ⇒ PolicyBasedRoute
constructor
A new instance of PolicyBasedRoute.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ PolicyBasedRoute
Returns a new instance of PolicyBasedRoute.
1874 1875 1876 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1874 def initialize(**args) update!(**args) end |
Instance Attribute Details
#create_time ⇒ String
Output only. Time when the policy-based route was created.
Corresponds to the JSON property createTime
1791 1792 1793 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1791 def create_time @create_time end |
#description ⇒ String
Optional. An optional description of this resource. Provide this field when
you create the resource.
Corresponds to the JSON property description
1797 1798 1799 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1797 def description @description end |
#filter ⇒ Google::Apis::NetworkconnectivityV1::Filter
Filter matches L4 traffic.
Corresponds to the JSON property filter
1802 1803 1804 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1802 def filter @filter end |
#interconnect_attachment ⇒ Google::Apis::NetworkconnectivityV1::InterconnectAttachment
InterconnectAttachment that this route applies to.
Corresponds to the JSON property interconnectAttachment
1807 1808 1809 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1807 def @interconnect_attachment end |
#kind ⇒ String
Output only. Type of this resource. Always networkconnectivity#
policyBasedRoute for policy-based Route resources.
Corresponds to the JSON property kind
1813 1814 1815 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1813 def kind @kind end |
#labels ⇒ Hash<String,String>
User-defined labels.
Corresponds to the JSON property labels
1818 1819 1820 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1818 def labels @labels end |
#name ⇒ String
Immutable. A unique name of the resource in the form of projects/
project_number/locations/global/PolicyBasedRoutes/policy_based_route_id`
Corresponds to the JSON propertyname`
1824 1825 1826 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1824 def name @name end |
#network ⇒ String
Required. Fully-qualified URL of the network that this route applies to, for
example: projects/my-project/global/networks/my-network.
Corresponds to the JSON property network
1830 1831 1832 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1830 def network @network end |
#next_hop_ilb_ip ⇒ String
Optional. The IP address of a global-access-enabled L4 ILB that is the next
hop for matching packets. For this version, only nextHopIlbIp is supported.
Corresponds to the JSON property nextHopIlbIp
1836 1837 1838 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1836 def next_hop_ilb_ip @next_hop_ilb_ip end |
#next_hop_other_routes ⇒ String
Optional. Other routes that will be referenced to determine the next hop of
the packet.
Corresponds to the JSON property nextHopOtherRoutes
1842 1843 1844 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1842 def next_hop_other_routes @next_hop_other_routes end |
#priority ⇒ Fixnum
Optional. The priority of this policy-based route. Priority is used to break
ties in cases where there are more than one matching policy-based routes found.
In cases where multiple policy-based routes are matched, the one with the
lowest-numbered priority value wins. The default value is 1000. The priority
value must be from 1 to 65535, inclusive.
Corresponds to the JSON property priority
1851 1852 1853 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1851 def priority @priority end |
#self_link ⇒ String
Output only. Server-defined fully-qualified URL for this resource.
Corresponds to the JSON property selfLink
1856 1857 1858 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1856 def self_link @self_link end |
#update_time ⇒ String
Output only. Time when the policy-based route was updated.
Corresponds to the JSON property updateTime
1861 1862 1863 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1861 def update_time @update_time end |
#virtual_machine ⇒ Google::Apis::NetworkconnectivityV1::VirtualMachine
VM instances to which this policy-based route applies to.
Corresponds to the JSON property virtualMachine
1866 1867 1868 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1866 def virtual_machine @virtual_machine end |
#warnings ⇒ Array<Google::Apis::NetworkconnectivityV1::Warnings>
Output only. If potential misconfigurations are detected for this route, this
field will be populated with warning messages.
Corresponds to the JSON property warnings
1872 1873 1874 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1872 def warnings @warnings end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1879 def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @description = args[:description] if args.key?(:description) @filter = args[:filter] if args.key?(:filter) @interconnect_attachment = args[:interconnect_attachment] if args.key?(:interconnect_attachment) @kind = args[:kind] if args.key?(:kind) @labels = args[:labels] if args.key?(:labels) @name = args[:name] if args.key?(:name) @network = args[:network] if args.key?(:network) @next_hop_ilb_ip = args[:next_hop_ilb_ip] if args.key?(:next_hop_ilb_ip) @next_hop_other_routes = args[:next_hop_other_routes] if args.key?(:next_hop_other_routes) @priority = args[:priority] if args.key?(:priority) @self_link = args[:self_link] if args.key?(:self_link) @update_time = args[:update_time] if args.key?(:update_time) @virtual_machine = args[:virtual_machine] if args.key?(:virtual_machine) @warnings = args[:warnings] if args.key?(:warnings) end |