Module: Llmemory::LongTerm::FileBased::Storages

Defined in:
lib/llmemory/long_term/file_based/storage.rb,
lib/llmemory/long_term/file_based/storages/base.rb,
lib/llmemory/long_term/file_based/storages/file_storage.rb,
lib/llmemory/long_term/file_based/storages/memory_storage.rb,
lib/llmemory/long_term/file_based/storages/database_storage.rb,
lib/llmemory/long_term/file_based/storages/active_record_models.rb,
lib/llmemory/long_term/file_based/storages/active_record_storage.rb

Defined Under Namespace

Classes: ActiveRecordStorage, Base, DatabaseStorage, FileStorage, LlmemoryCategory, LlmemoryItem, LlmemoryResource, MemoryStorage

Class Method Summary collapse

Class Method Details

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



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/llmemory/long_term/file_based/storage.rb', line 17

def self.build(store: nil, base_path: nil, database_url: 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
    DatabaseStorage.new(database_url: database_url || Llmemory.configuration.database_url)
  when :active_record, :activerecord
    require_relative "storages/active_record_storage"
    ActiveRecordStorage.new
  else
    MemoryStorage.new
  end
end