Class: Google::Apis::ComputeAlpha::Duration

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

A Duration represents a fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution. It is independent of any calendar and concepts like "day" or "month". Range is approximately 10, 000 years.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Duration

Returns a new instance of Duration.



8020
8021
8022
# File 'lib/google/apis/compute_alpha/classes.rb', line 8020

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

Instance Attribute Details

#nanosFixnum

Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive. Corresponds to the JSON property nanos

Returns:

  • (Fixnum)


8011
8012
8013
# File 'lib/google/apis/compute_alpha/classes.rb', line 8011

def nanos
  @nanos
end

#secondsFixnum

Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years Corresponds to the JSON property seconds

Returns:

  • (Fixnum)


8018
8019
8020
# File 'lib/google/apis/compute_alpha/classes.rb', line 8018

def seconds
  @seconds
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



8025
8026
8027
8028
# File 'lib/google/apis/compute_alpha/classes.rb', line 8025

def update!(**args)
  @nanos = args[:nanos] if args.key?(:nanos)
  @seconds = args[:seconds] if args.key?(:seconds)
end