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 takes 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 that 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.
2147 2148 2149 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2147 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
2064 2065 2066 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2064 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
2070 2071 2072 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2070 def description @description end |
#filter ⇒ Google::Apis::NetworkconnectivityV1::Filter
Filter matches L4 traffic.
Corresponds to the JSON property filter
2075 2076 2077 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2075 def filter @filter end |
#interconnect_attachment ⇒ Google::Apis::NetworkconnectivityV1::InterconnectAttachment
InterconnectAttachment that this route applies to.
Corresponds to the JSON property interconnectAttachment
2080 2081 2082 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2080 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
2086 2087 2088 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2086 def kind @kind end |
#labels ⇒ Hash<String,String>
User-defined labels.
Corresponds to the JSON property labels
2091 2092 2093 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2091 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 property
name`
2097 2098 2099 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2097 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
2103 2104 2105 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2103 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
2109 2110 2111 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2109 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
2115 2116 2117 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2115 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
2124 2125 2126 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2124 def priority @priority end |
#self_link ⇒ String
Output only. Server-defined fully-qualified URL for this resource.
Corresponds to the JSON property selfLink
2129 2130 2131 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2129 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
2134 2135 2136 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2134 def update_time @update_time end |
#virtual_machine ⇒ Google::Apis::NetworkconnectivityV1::VirtualMachine
VM instances that this policy-based route applies to.
Corresponds to the JSON property virtualMachine
2139 2140 2141 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2139 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
2145 2146 2147 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2145 def warnings @warnings end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2152 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 |