Class: AWS::Record::Attributes::DateTimeAttr

Inherits:
Object
  • Object
show all
Defined in:
lib/simple_date_fix/date_time.rb

Class Method Summary collapse

Class Method Details

.serialize(datetime, options = {}) ⇒ String

Returns a DateTime object encoded as a string (suitable for sorting).

attribute.serialize(DateTime.parse('2001-01-01'))
#=> '2001-01-01T00:00:00:Z)

Parameters:

  • datetime (DateTime)

    The datetime object to serialize.

  • options (Hash) (defaults to: {})

Returns:

  • (String)

    Returns the datetime object serialized to a string in ISO8601 format (e.g. ā€˜2011-01-02T10:11:12Zā€™)



23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/simple_date_fix/date_time.rb', line 23

def self.serialize datetime, options = {}
  unless datetime.is_a?(DateTime)
    msg = "expected a DateTime value, got #{datetime.class}"
    raise ArgumentError, msg  
  end

  original_zone = Time.zone
  Time.zone = 'UTC'
  string = datetime.in_time_zone.strftime('%Y-%m-%dT%H:%M:%S%z')
  Time.zone = original_zone
  string
end