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.



78739
78740
78741
# File 'lib/google/apis/compute_alpha/classes.rb', line 78739

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)


78657
78658
78659
# File 'lib/google/apis/compute_alpha/classes.rb', line 78657

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)


78663
78664
78665
# File 'lib/google/apis/compute_alpha/classes.rb', line 78663

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)


78669
78670
78671
# File 'lib/google/apis/compute_alpha/classes.rb', line 78669

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)


78682
78683
78684
# File 'lib/google/apis/compute_alpha/classes.rb', line 78682

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)


78688
78689
78690
# File 'lib/google/apis/compute_alpha/classes.rb', line 78688

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)


78699
78700
78701
# File 'lib/google/apis/compute_alpha/classes.rb', line 78699

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)


78706
78707
78708
# File 'lib/google/apis/compute_alpha/classes.rb', line 78706

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)


78713
78714
78715
# File 'lib/google/apis/compute_alpha/classes.rb', line 78713

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)


78719
78720
78721
# File 'lib/google/apis/compute_alpha/classes.rb', line 78719

def security_policy
  @security_policy
end

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

Returns:

  • (String)


78724
78725
78726
# File 'lib/google/apis/compute_alpha/classes.rb', line 78724

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)


78730
78731
78732
# File 'lib/google/apis/compute_alpha/classes.rb', line 78730

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)


78737
78738
78739
# File 'lib/google/apis/compute_alpha/classes.rb', line 78737

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



78744
78745
78746
78747
78748
78749
78750
78751
78752
78753
78754
78755
78756
78757
# File 'lib/google/apis/compute_alpha/classes.rb', line 78744

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