Class: SplitIoClient::SplitFactoryBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/splitclient-rb/split_factory_builder.rb

Class Method Summary collapse

Class Method Details

.build(api_key, config = {}) ⇒ Object



5
6
7
8
9
10
11
12
13
14
# File 'lib/splitclient-rb/split_factory_builder.rb', line 5

def self.build(api_key, config = {})
  case api_key
  when 'localhost'
    SplitIoClient.configure( { logger: config[:logger] } )

    LocalhostSplitFactory.new(split_file(config[:split_file]), config[:reload_rate])
  else
    SplitFactory.new(api_key, config)
  end
end

.split_file(split_file_path) ⇒ Object



18
19
20
21
22
23
24
25
26
# File 'lib/splitclient-rb/split_factory_builder.rb', line 18

def self.split_file(split_file_path)
  return split_file_path unless split_file_path.nil?

  SplitIoClient.configuration.logger.warn('Localhost mode: .split mocks ' \
    'will be deprecated soon in favor of YAML files, which provide more ' \
    'targeting power. Take a look in our documentation.')

  File.join(Dir.home, '.split')
end