Class: Google::Apis::ComputeAlpha::FutureReservation

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ FutureReservation

Returns a new instance of FutureReservation.



11029
11030
11031
# File 'lib/google/apis/compute_alpha/classes.rb', line 11029

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

Instance Attribute Details

#creation_timestampString

[Output Only] The creation timestamp for this future reservation in RFC3339 text format. Corresponds to the JSON property creationTimestamp

Returns:

  • (String)


10950
10951
10952
# File 'lib/google/apis/compute_alpha/classes.rb', line 10950

def creation_timestamp
  @creation_timestamp
end

#descriptionString

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

Returns:

  • (String)


10956
10957
10958
# File 'lib/google/apis/compute_alpha/classes.rb', line 10956

def description
  @description
end

#idFixnum

[Output Only] A unique identifier for this future reservation. The server defines this identifier. Corresponds to the JSON property id

Returns:

  • (Fixnum)


10962
10963
10964
# File 'lib/google/apis/compute_alpha/classes.rb', line 10962

def id
  @id
end

#kindString

[Output Only] Type of the resource. Always compute#futureReservation for future reservations. Corresponds to the JSON property kind

Returns:

  • (String)


10968
10969
10970
# File 'lib/google/apis/compute_alpha/classes.rb', line 10968

def kind
  @kind
end

#nameString

The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. 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)


10979
10980
10981
# File 'lib/google/apis/compute_alpha/classes.rb', line 10979

def name
  @name
end

#name_prefixString

Name prefix for the reservations to be created at the time of delivery. The name prefix must comply with RFC1035. Maximum allowed length for name prefix is 20. Automatically created reservations name format will be -date-####. Corresponds to the JSON property namePrefix

Returns:

  • (String)


10986
10987
10988
# File 'lib/google/apis/compute_alpha/classes.rb', line 10986

def name_prefix
  @name_prefix
end

#planning_statusString

Planning state before being submitted for evaluation Corresponds to the JSON property planningStatus

Returns:

  • (String)


10991
10992
10993
# File 'lib/google/apis/compute_alpha/classes.rb', line 10991

def planning_status
  @planning_status
end

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

Returns:

  • (String)


10996
10997
10998
# File 'lib/google/apis/compute_alpha/classes.rb', line 10996

def self_link
  @self_link
end

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

Returns:

  • (String)


11001
11002
11003
# File 'lib/google/apis/compute_alpha/classes.rb', line 11001

def self_link_with_id
  @self_link_with_id
end

#share_settingsGoogle::Apis::ComputeAlpha::ShareSettings

The share setting for reservations and sole tenancy node groups. Corresponds to the JSON property shareSettings



11006
11007
11008
# File 'lib/google/apis/compute_alpha/classes.rb', line 11006

def share_settings
  @share_settings
end

#specific_sku_propertiesGoogle::Apis::ComputeAlpha::FutureReservationSpecificSkuProperties

Future Reservation configuration to indicate instance properties and total count. Corresponds to the JSON property specificSkuProperties



11012
11013
11014
# File 'lib/google/apis/compute_alpha/classes.rb', line 11012

def specific_sku_properties
  @specific_sku_properties
end

#statusGoogle::Apis::ComputeAlpha::FutureReservationStatus

[Output only] Represents status related to the future reservation. Corresponds to the JSON property status



11017
11018
11019
# File 'lib/google/apis/compute_alpha/classes.rb', line 11017

def status
  @status
end

#time_windowGoogle::Apis::ComputeAlpha::FutureReservationTimeWindow

Time window for this Future Reservation. Corresponds to the JSON property timeWindow



11022
11023
11024
# File 'lib/google/apis/compute_alpha/classes.rb', line 11022

def time_window
  @time_window
end

#zoneString

[Output Only] URL of the Zone where this future reservation resides. Corresponds to the JSON property zone

Returns:

  • (String)


11027
11028
11029
# File 'lib/google/apis/compute_alpha/classes.rb', line 11027

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



11034
11035
11036
11037
11038
11039
11040
11041
11042
11043
11044
11045
11046
11047
11048
11049
# File 'lib/google/apis/compute_alpha/classes.rb', line 11034

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)
  @kind = args[:kind] if args.key?(:kind)
  @name = args[:name] if args.key?(:name)
  @name_prefix = args[:name_prefix] if args.key?(:name_prefix)
  @planning_status = args[:planning_status] if args.key?(:planning_status)
  @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)
  @share_settings = args[:share_settings] if args.key?(:share_settings)
  @specific_sku_properties = args[:specific_sku_properties] if args.key?(:specific_sku_properties)
  @status = args[:status] if args.key?(:status)
  @time_window = args[:time_window] if args.key?(:time_window)
  @zone = args[:zone] if args.key?(:zone)
end