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.
2256 2257 2258 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2256 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
2173 2174 2175 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2173 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
2179 2180 2181 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2179 def description @description end |
#filter ⇒ Google::Apis::NetworkconnectivityV1::Filter
Filter matches L4 traffic.
Corresponds to the JSON property filter
2184 2185 2186 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2184 def filter @filter end |
#interconnect_attachment ⇒ Google::Apis::NetworkconnectivityV1::InterconnectAttachment
InterconnectAttachment that this route applies to.
Corresponds to the JSON property interconnectAttachment
2189 2190 2191 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2189 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
2195 2196 2197 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2195 def kind @kind end |
#labels ⇒ Hash<String,String>
User-defined labels.
Corresponds to the JSON property labels
2200 2201 2202 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2200 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`
2206 2207 2208 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2206 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
2212 2213 2214 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2212 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
2218 2219 2220 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2218 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
2224 2225 2226 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2224 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
2233 2234 2235 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2233 def priority @priority end |
#self_link ⇒ String
Output only. Server-defined fully-qualified URL for this resource.
Corresponds to the JSON property selfLink
2238 2239 2240 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2238 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
2243 2244 2245 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2243 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
2248 2249 2250 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2248 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
2254 2255 2256 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2254 def warnings @warnings end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2261 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 |