Sha256: 9ca82783736e79247c41b1f768089cc92d31b0decdf2304adeec4810c7bd5aa0

Contents?: true

Size: 549 Bytes

Versions: 102

Compression:

Stored size: 549 Bytes

Contents

class MLS::Property::DateTime < MLS::Property
  
  def load(value) # from_json
    if value.is_a?(::String)
      ::DateTime.iso8601(value)
    elsif value.nil? || value.is_a?(::DateTime)
      value
    elsif value.is_a?(::Time) || value.is_a?(::Date)
      value.to_datetime
    else
      raise 'unsupported date type'
    end
  end
  
  def dump(value)
    if value.is_a?(::DateTime) || value.is_a?(::Time) || value.is_a?(::Date)
      value.iso8601
    elsif value.nil?
      nil
    else
      raise 'unsupported date type'
    end
  end

end

Version data entries

102 entries across 102 versions & 1 rubygems

Version Path
mls-0.6.6 lib/mls/properties/datetime.rb
mls-0.6.5 lib/mls/properties/datetime.rb
mls-0.6.4 lib/mls/properties/datetime.rb
mls-0.6.3 lib/mls/properties/datetime.rb
mls-0.6.2 lib/mls/properties/datetime.rb
mls-0.6.1 lib/mls/properties/datetime.rb
mls-0.6.0 lib/mls/properties/datetime.rb
mls-0.5.12 lib/mls/properties/datetime.rb
mls-0.5.11 lib/mls/properties/datetime.rb
mls-0.5.10 lib/mls/properties/datetime.rb
mls-0.5.9 lib/mls/properties/datetime.rb
mls-0.5.8 lib/mls/properties/datetime.rb
mls-0.5.7 lib/mls/properties/datetime.rb
mls-0.5.6 lib/mls/properties/datetime.rb
mls-0.5.5 lib/mls/properties/datetime.rb
mls-0.5.4 lib/mls/properties/datetime.rb
mls-0.5.3 lib/mls/properties/datetime.rb
mls-0.5.2 lib/mls/properties/datetime.rb
mls-0.5.1 lib/mls/properties/datetime.rb
mls-0.5.0 lib/mls/properties/datetime.rb