Class: Google::Apis::NetworkmanagementV1::Step

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/networkmanagement_v1/classes.rb,
lib/google/apis/networkmanagement_v1/representations.rb,
lib/google/apis/networkmanagement_v1/representations.rb

Overview

A simulated forwarding path is composed of multiple steps. Each step has a well-defined state and an associated configuration.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Step

Returns a new instance of Step.



1510
1511
1512
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 1510

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#abortGoogle::Apis::NetworkmanagementV1::AbortInfo

Details of the final state "abort" and associated resource. Corresponds to the JSON property abort



1424
1425
1426
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 1424

def abort
  @abort
end

#causes_dropBoolean Also known as: causes_drop?

This is a step that leads to the final state Drop. Corresponds to the JSON property causesDrop

Returns:

  • (Boolean)


1429
1430
1431
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 1429

def causes_drop
  @causes_drop
end

#deliverGoogle::Apis::NetworkmanagementV1::DeliverInfo

Details of the final state "deliver" and associated resource. Corresponds to the JSON property deliver



1435
1436
1437
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 1435

def deliver
  @deliver
end

#descriptionString

A description of the step. Usually this is a summary of the state. Corresponds to the JSON property description

Returns:

  • (String)


1440
1441
1442
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 1440

def description
  @description
end

#dropGoogle::Apis::NetworkmanagementV1::DropInfo

Details of the final state "drop" and associated resource. Corresponds to the JSON property drop



1445
1446
1447
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 1445

def drop
  @drop
end

#endpointGoogle::Apis::NetworkmanagementV1::EndpointInfo

For display only. The specification of the endpoints for the test. EndpointInfo is derived from source and destination Endpoint and validated by the backend data plane model. Corresponds to the JSON property endpoint



1452
1453
1454
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 1452

def endpoint
  @endpoint
end

#firewallGoogle::Apis::NetworkmanagementV1::FirewallInfo

For display only. Metadata associated with a VPC firewall rule, an implied VPC firewall rule, or a hierarchical firewall policy rule. Corresponds to the JSON property firewall



1458
1459
1460
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 1458

def firewall
  @firewall
end

#forwardGoogle::Apis::NetworkmanagementV1::ForwardInfo

Details of the final state "forward" and associated resource. Corresponds to the JSON property forward



1463
1464
1465
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 1463

def forward
  @forward
end

#forwarding_ruleGoogle::Apis::NetworkmanagementV1::ForwardingRuleInfo

For display only. Metadata associated with a Compute Engine forwarding rule. Corresponds to the JSON property forwardingRule



1468
1469
1470
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 1468

def forwarding_rule
  @forwarding_rule
end

#instanceGoogle::Apis::NetworkmanagementV1::InstanceInfo

For display only. Metadata associated with a Compute Engine instance. Corresponds to the JSON property instance



1473
1474
1475
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 1473

def instance
  @instance
end

#load_balancerGoogle::Apis::NetworkmanagementV1::LoadBalancerInfo

For display only. Metadata associated with a load balancer. Corresponds to the JSON property loadBalancer



1478
1479
1480
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 1478

def load_balancer
  @load_balancer
end

#networkGoogle::Apis::NetworkmanagementV1::NetworkInfo

For display only. Metadata associated with a Compute Engine network. Corresponds to the JSON property network



1483
1484
1485
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 1483

def network
  @network
end

#project_idString

Project ID that contains the configuration this step is validating. Corresponds to the JSON property projectId

Returns:

  • (String)


1488
1489
1490
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 1488

def project_id
  @project_id
end

#routeGoogle::Apis::NetworkmanagementV1::RouteInfo

For display only. Metadata associated with a Compute Engine route. Corresponds to the JSON property route



1493
1494
1495
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 1493

def route
  @route
end

#stateString

Each step is in one of the pre-defined states. Corresponds to the JSON property state

Returns:

  • (String)


1498
1499
1500
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 1498

def state
  @state
end

#vpn_gatewayGoogle::Apis::NetworkmanagementV1::VpnGatewayInfo

For display only. Metadata associated with a Compute Engine VPN gateway. Corresponds to the JSON property vpnGateway



1503
1504
1505
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 1503

def vpn_gateway
  @vpn_gateway
end

#vpn_tunnelGoogle::Apis::NetworkmanagementV1::VpnTunnelInfo

For display only. Metadata associated with a Compute Engine VPN tunnel. Corresponds to the JSON property vpnTunnel



1508
1509
1510
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 1508

def vpn_tunnel
  @vpn_tunnel
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 1515

def update!(**args)
  @abort = args[:abort] if args.key?(:abort)
  @causes_drop = args[:causes_drop] if args.key?(:causes_drop)
  @deliver = args[:deliver] if args.key?(:deliver)
  @description = args[:description] if args.key?(:description)
  @drop = args[:drop] if args.key?(:drop)
  @endpoint = args[:endpoint] if args.key?(:endpoint)
  @firewall = args[:firewall] if args.key?(:firewall)
  @forward = args[:forward] if args.key?(:forward)
  @forwarding_rule = args[:forwarding_rule] if args.key?(:forwarding_rule)
  @instance = args[:instance] if args.key?(:instance)
  @load_balancer = args[:load_balancer] if args.key?(:load_balancer)
  @network = args[:network] if args.key?(:network)
  @project_id = args[:project_id] if args.key?(:project_id)
  @route = args[:route] if args.key?(:route)
  @state = args[:state] if args.key?(:state)
  @vpn_gateway = args[:vpn_gateway] if args.key?(:vpn_gateway)
  @vpn_tunnel = args[:vpn_tunnel] if args.key?(:vpn_tunnel)
end