class EntityCache::Record

Public Class Methods

build(id, entity, version, time, persisted_version: nil, persisted_time: nil) click to toggle source
# File lib/entity_cache/record.rb, line 12
def self.build(id, entity, version, time, persisted_version: nil, persisted_time: nil)
  new(id, entity, version, time, persisted_version, persisted_time)
end
destructure(instance, includes=nil) click to toggle source
# File lib/entity_cache/record.rb, line 16
def self.destructure(instance, includes=nil)
  Destructure.(instance, includes)
end

Public Instance Methods

age_milliseconds() click to toggle source
# File lib/entity_cache/record.rb, line 20
def age_milliseconds
  Clock::UTC.elapsed_milliseconds(time, Clock::UTC.now)
end
persisted_age_milliseconds() click to toggle source
# File lib/entity_cache/record.rb, line 24
def persisted_age_milliseconds
  return nil if persisted_time.nil?

  Clock::UTC.elapsed_milliseconds(
    persisted_time,
    time
  )
end
persisted_age_versions() click to toggle source
# File lib/entity_cache/record.rb, line 33
def persisted_age_versions
  return nil if persisted_version.nil?

  version - persisted_version
end