Class: Legion::Extensions::Extinction::Helpers::Archiver

Inherits:
Object
  • Object
show all
Defined in:
lib/legion/extensions/extinction/helpers/archiver.rb

Instance Method Summary collapse

Constructor Details

#initializeArchiver

Returns a new instance of Archiver.



8
9
10
# File 'lib/legion/extensions/extinction/helpers/archiver.rb', line 8

def initialize
  @archives = []
end

Instance Method Details

#all_archivesObject



26
27
28
# File 'lib/legion/extensions/extinction/helpers/archiver.rb', line 26

def all_archives
  @archives.dup
end

#archive(agent_id:, reason:, metadata: {}, current_level: 0) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/legion/extensions/extinction/helpers/archiver.rb', line 12

def archive(agent_id:, reason:, metadata: {}, current_level: 0)
  record = {
    agent_id:       agent_id,
    reason:         reason,
    metadata:       ,
    level:          current_level,
    archived_at:    Time.now.utc.iso8601,
    state_snapshot: capture_state_snapshot
  }

  persist_archive(record)
  record
end