Module: Llmemory::LongTerm::Procedural::Storages

Defined in:
lib/llmemory/long_term/procedural/storage.rb,
lib/llmemory/long_term/procedural/storages/base.rb,
lib/llmemory/long_term/procedural/storages/file_storage.rb,
lib/llmemory/long_term/procedural/storages/memory_storage.rb

Defined Under Namespace

Classes: Base, FileStorage, MemoryStorage

Class Method Summary collapse

Class Method Details

.build(store: nil, base_path: nil) ⇒ Object



14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/llmemory/long_term/procedural/storage.rb', line 14

def self.build(store: nil, base_path: nil)
  case (store || Llmemory.configuration.long_term_store).to_s.to_sym
  when :memory
    MemoryStorage.new
  when :file
    FileStorage.new(base_path: base_path || Llmemory.configuration.long_term_storage_path)
  when :postgres, :database, :active_record, :activerecord
    raise NotImplementedError,
      "Procedural SQL/ActiveRecord storage is not implemented yet; use :memory or :file " \
      "(or pass an explicit storage instance)."
  else
    MemoryStorage.new
  end
end