Method: Logidze::Model#at
- Defined in:
- lib/logidze/model.rb
#at(time: nil, version: nil) ⇒ Object
Return a dirty copy of record at specified time If time/version is less then the first version, then return nil. If time/version is greater then the last version, then return self. rubocop: disable Metrics/MethodLength
91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 |
# File 'lib/logidze/model.rb', line 91 def at(time: nil, version: nil) return at_version(version) if version time = parse_time(time) unless log_data return Logidze.return_self_if_log_data_is_empty ? self : nil end return nil unless log_data.exists_ts?(time) if log_data.current_ts?(time) self.logidze_requested_ts = time return self end log_entry = log_data.find_by_time(time) build_dup(log_entry, time) end |