Module: Avro::LogicalTypes::TimestampMillis

Defined in:
lib/avro/logical_types.rb

Class Method Summary collapse

Class Method Details

.decode(int) ⇒ Object



224
225
226
227
# File 'lib/avro/logical_types.rb', line 224

def self.decode(int)
  s, ms = int / 1000, int % 1000
  Time.at(s, ms * 1000).utc
end

.encode(value) ⇒ Object



217
218
219
220
221
222
# File 'lib/avro/logical_types.rb', line 217

def self.encode(value)
  return value.to_i if value.is_a?(Numeric)

  time = value.to_time
  time.to_i * 1000 + time.usec / 1000
end