Class: Google::Apis::ComputeAlpha::TargetInstance

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

Overview

Represents a Target Instance resource. You can use a target instance to handle traffic for one or more forwarding rules, which is ideal for forwarding protocol traffic that is managed by a single source. For example, ESP, AH, TCP, or UDP. For more information, readTarget instances.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ TargetInstance

Returns a new instance of TargetInstance.



76439
76440
76441
# File 'lib/google/apis/compute_alpha/classes.rb', line 76439

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

Instance Attribute Details

#creation_timestampString

Output only. [Output Only] Creation timestamp inRFC3339 text format. Corresponds to the JSON property creationTimestamp

Returns:

  • (String)


76357
76358
76359
# File 'lib/google/apis/compute_alpha/classes.rb', line 76357

def creation_timestamp
  @creation_timestamp
end

#descriptionString

An optional description of this resource. Provide this property when you create the resource. Corresponds to the JSON property description

Returns:

  • (String)


76363
76364
76365
# File 'lib/google/apis/compute_alpha/classes.rb', line 76363

def description
  @description
end

#idFixnum

[Output Only] The unique identifier for the resource. This identifier is defined by the server. Corresponds to the JSON property id

Returns:

  • (Fixnum)


76369
76370
76371
# File 'lib/google/apis/compute_alpha/classes.rb', line 76369

def id
  @id
end

#instanceString

A URL to the virtual machine instance that handles traffic for this target instance. When creating a target instance, you can provide the fully-qualified URL or a valid partial URL to the desired virtual machine. For example, the following are all valid URLs:

Returns:

  • (String)


76382
76383
76384
# File 'lib/google/apis/compute_alpha/classes.rb', line 76382

def instance
  @instance
end

#kindString

Output only. [Output Only] The type of the resource. Alwayscompute# targetInstance for target instances. Corresponds to the JSON property kind

Returns:

  • (String)


76388
76389
76390
# File 'lib/google/apis/compute_alpha/classes.rb', line 76388

def kind
  @kind
end

#nameString

Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply withRFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. Corresponds to the JSON property name

Returns:

  • (String)


76399
76400
76401
# File 'lib/google/apis/compute_alpha/classes.rb', line 76399

def name
  @name
end

#nat_policyString

Must have a value of NO_NAT. Protocol forwarding delivers packets while preserving the destination IP address of the forwarding rule referencing the target instance. Corresponds to the JSON property natPolicy

Returns:

  • (String)


76406
76407
76408
# File 'lib/google/apis/compute_alpha/classes.rb', line 76406

def nat_policy
  @nat_policy
end

#networkString

The URL of the network this target instance uses to forward traffic. If not specified, the traffic will be forwarded to the network that the default network interface belongs to. Corresponds to the JSON property network

Returns:

  • (String)


76413
76414
76415
# File 'lib/google/apis/compute_alpha/classes.rb', line 76413

def network
  @network
end

#security_policyString

[Output Only] The resource URL for the security policy associated with this target instance. Corresponds to the JSON property securityPolicy

Returns:

  • (String)


76419
76420
76421
# File 'lib/google/apis/compute_alpha/classes.rb', line 76419

def security_policy
  @security_policy
end

[Output Only] Server-defined URL for the resource. Corresponds to the JSON property selfLink

Returns:

  • (String)


76424
76425
76426
# File 'lib/google/apis/compute_alpha/classes.rb', line 76424

def self_link
  @self_link
end

Output only. [Output Only] Server-defined URL for this resource with the resource id. Corresponds to the JSON property selfLinkWithId

Returns:

  • (String)


76430
76431
76432
# File 'lib/google/apis/compute_alpha/classes.rb', line 76430

def self_link_with_id
  @self_link_with_id
end

#zoneString

Output only. [Output Only] URL of the zone where the target instance resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. Corresponds to the JSON property zone

Returns:

  • (String)


76437
76438
76439
# File 'lib/google/apis/compute_alpha/classes.rb', line 76437

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



76444
76445
76446
76447
76448
76449
76450
76451
76452
76453
76454
76455
76456
76457
# File 'lib/google/apis/compute_alpha/classes.rb', line 76444

def update!(**args)
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
  @description = args[:description] if args.key?(:description)
  @id = args[:id] if args.key?(:id)
  @instance = args[:instance] if args.key?(:instance)
  @kind = args[:kind] if args.key?(:kind)
  @name = args[:name] if args.key?(:name)
  @nat_policy = args[:nat_policy] if args.key?(:nat_policy)
  @network = args[:network] if args.key?(:network)
  @security_policy = args[:security_policy] if args.key?(:security_policy)
  @self_link = args[:self_link] if args.key?(:self_link)
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
  @zone = args[:zone] if args.key?(:zone)
end