Module: PigeonHole::JSONTime
- Defined in:
- lib/pigeon_hole/json_time.rb
Constant Summary collapse
- TYPE_VALUE =
'time'.freeze
Class Method Summary collapse
Class Method Details
.deserialize(hash) ⇒ Object
12 13 14 15 16 |
# File 'lib/pigeon_hole/json_time.rb', line 12 def self.deserialize(hash) ms_since_epoc = hash['ms'].to_i seconds, fragment = ms_since_epoc.divmod(1000) Time.at(seconds, fragment * 1000).utc end |
.serialize(time) ⇒ Object
5 6 7 8 9 10 |
# File 'lib/pigeon_hole/json_time.rb', line 5 def self.serialize(time) { TypedJSON::TYPE_KEY => TYPE_VALUE, 'ms' => (time.tv_sec * 1000) + (time.usec / 1000), } end |