Module: DataDrain::Storage
- Defined in:
- lib/data_drain/storage.rb,
lib/data_drain/storage/s3.rb,
lib/data_drain/storage/base.rb,
lib/data_drain/storage/local.rb
Overview
Espacio de nombres para las estrategias de almacenamiento físico.
Defined Under Namespace
Classes: Base, InvalidAdapterError, Local, S3
Class Method Summary collapse
-
.adapter ⇒ DataDrain::Storage::Base
Resuelve e instancia el adaptador de almacenamiento correspondiente basándose en la configuración actual del framework.
-
.reset_adapter! ⇒ Object
Descarta el adaptador cacheado.
Class Method Details
.adapter ⇒ DataDrain::Storage::Base
Resuelve e instancia el adaptador de almacenamiento correspondiente basándose en la configuración actual del framework. La instancia se cachea para evitar allocations innecesarias entre queries.
19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/data_drain/storage.rb', line 19 def self.adapter @adapter ||= begin mode = DataDrain.configuration.storage_mode case mode.to_sym when :local Local.new(DataDrain.configuration) when :s3 S3.new(DataDrain.configuration) else raise InvalidAdapterError, "Storage mode '#{mode}' no está soportado." end end end |
.reset_adapter! ⇒ Object
Descarta el adaptador cacheado. Llamar cuando cambia storage_mode.
34 35 36 |
# File 'lib/data_drain/storage.rb', line 34 def self.reset_adapter! @adapter = nil end |