Class: Moltrio::Config::ChainBuilder
- Inherits:
-
Object
- Object
- Moltrio::Config::ChainBuilder
- Defined in:
- lib/moltrio/config/chain_builder.rb
Class Method Summary collapse
Instance Method Summary collapse
- #chain ⇒ Object
- #database_yml(path) ⇒ Object
- #env_variables(prefix) ⇒ Object
-
#initialize(config) ⇒ ChainBuilder
constructor
A new instance of ChainBuilder.
- #multitenant_directory(*args) ⇒ Object
- #multitenant_redis(*args) ⇒ Object
- #single_file(*args) ⇒ Object
- #single_redis(*args) ⇒ Object
Constructor Details
#initialize(config) ⇒ ChainBuilder
Returns a new instance of ChainBuilder.
14 15 16 17 |
# File 'lib/moltrio/config/chain_builder.rb', line 14 def initialize(config) @config = config @links = Hamster.vector end |
Class Method Details
.run(config, &block) ⇒ Object
8 9 10 11 12 |
# File 'lib/moltrio/config/chain_builder.rb', line 8 def self.run(config, &block) builder = new(config) builder.instance_exec(&block) builder.chain end |
Instance Method Details
#chain ⇒ Object
49 50 51 |
# File 'lib/moltrio/config/chain_builder.rb', line 49 def chain AdapterChain.new(@links) end |
#database_yml(path) ⇒ Object
39 40 41 42 |
# File 'lib/moltrio/config/chain_builder.rb', line 39 def database_yml(path) link = DatabaseYmlAdapter.new(path) @links = @links << link end |
#env_variables(prefix) ⇒ Object
44 45 46 47 |
# File 'lib/moltrio/config/chain_builder.rb', line 44 def env_variables(prefix) link = EnvVariablesAdapter.new(prefix) @links = @links << link end |
#multitenant_directory(*args) ⇒ Object
34 35 36 37 |
# File 'lib/moltrio/config/chain_builder.rb', line 34 def multitenant_directory(*args) link = MultitenantDirectoryAdapter.new(config, *args) @links = @links << link end |
#multitenant_redis(*args) ⇒ Object
19 20 21 22 |
# File 'lib/moltrio/config/chain_builder.rb', line 19 def multitenant_redis(*args) link = MultitenantRedisAdapter.new(config, *args) @links = @links << link end |
#single_file(*args) ⇒ Object
29 30 31 32 |
# File 'lib/moltrio/config/chain_builder.rb', line 29 def single_file(*args) link = SingleFileAdapter.new(config, *args) @links = @links << link end |
#single_redis(*args) ⇒ Object
24 25 26 27 |
# File 'lib/moltrio/config/chain_builder.rb', line 24 def single_redis(*args) link = SingleRedisAdapter.new(config, *args) @links = @links << link end |