Sha256: 2d103c4cb5817887f12a8d8b03a7a4e5201125050329672260c463fc66498fae
Contents?: true
Size: 853 Bytes
Versions: 5
Compression:
Stored size: 853 Bytes
Contents
module OData4 module Properties # Defines the Time OData4 type. class Time < OData4::Property # Returns the property value, properly typecast # @return [Time,nil] def value if (@value.nil? || @value.empty?) && allows_nil? nil else ::Time.strptime(@value, '%H:%M:%S%:z') end end # Sets the property value # @params new_value [Time] def value=(new_value) validate(new_value) @value = parse_value(new_value) end # The OData4 type name def type 'Edm.Time' end private def validate(value) unless value.is_a?(::Time) validation_error 'Value is not a time object' end end def parse_value(value) value.strftime('%H:%M:%S%:z') end end end end
Version data entries
5 entries across 5 versions & 1 rubygems