Class: FileManagerFactory

Inherits:
Object
  • Object
show all
Defined in:
lib/file_manager_factory.rb

Constant Summary collapse

FILE_MANAGERS =
{
    'S3'     => ::S3FileManager,
    'local'  => ::LocalFileManager,
    'memory' => ::MemoryFileManager
}

Instance Method Summary collapse

Constructor Details

#initialize(file_managers_config) ⇒ FileManagerFactory

Returns a new instance of FileManagerFactory.



12
13
14
# File 'lib/file_manager_factory.rb', line 12

def initialize(file_managers_config)
  @file_managers_config = file_managers_config
end

Instance Method Details

#create(name) ⇒ Object



16
17
18
19
# File 'lib/file_manager_factory.rb', line 16

def create(name)
  config = @file_managers_config[name]
  FILE_MANAGERS[config[:type]].new config
end