class AWS::Record::Attributes::SerializedAttr

Public Class Methods

allow_set?() click to toggle source

@api private

# File lib/dyna_model/aws/record/attributes/serialized_attr.rb, line 26
def self.allow_set?
  false
end
serialize(datetime, options = {}) click to toggle source

OVERRIDE github.com/aws/aws-sdk-ruby/blob/master/lib/aws/record/attributes.rb#L372 Allow Time instead of just DateTime

# File lib/dyna_model/aws/record/attributes/date_time_attr.rb, line 9
def self.serialize datetime, options = {}
  unless datetime.is_a?(DateTime) || datetime.is_a?(Time)
    msg = "expected a DateTime value, got #{datetime.class}"
    raise ArgumentError, msg
  end
  datetime.strftime('%Y-%m-%dT%H:%M:%S%Z')
end
type_cast(raw_value, options = {}) click to toggle source
# File lib/dyna_model/aws/record/attributes/serialized_attr.rb, line 6
def self.type_cast raw_value, options = {}
  case raw_value
  when nil      then nil
  when ''       then nil
  when String # assume binary
    begin
      Marshal.load(raw_value)
    rescue
      raw_value
    end
  else # object to serialize
    raw_value
  end
end