Sha256: d17301a91918866f8735ebc22c96dac98218209201942ce956b7a77e8235b01e

Contents?: true

Size: 764 Bytes

Versions: 16

Compression:

Stored size: 764 Bytes

Contents

require 'logger'

module SplitIoClient
  class SplitFactoryBuilder
    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

    private

    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
  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
splitclient-rb-6.4.1-java lib/splitclient-rb/split_factory_builder.rb
splitclient-rb-6.4.1 lib/splitclient-rb/split_factory_builder.rb
splitclient-rb-6.4.1.pre.rc3-java lib/splitclient-rb/split_factory_builder.rb
splitclient-rb-6.4.1.pre.rc3 lib/splitclient-rb/split_factory_builder.rb
splitclient-rb-6.4.1.pre.rc2-java lib/splitclient-rb/split_factory_builder.rb
splitclient-rb-6.4.1.pre.rc2 lib/splitclient-rb/split_factory_builder.rb
splitclient-rb-6.4.1.pre.rc1-java lib/splitclient-rb/split_factory_builder.rb
splitclient-rb-6.4.1.pre.rc1 lib/splitclient-rb/split_factory_builder.rb
splitclient-rb-6.4.0-java lib/splitclient-rb/split_factory_builder.rb
splitclient-rb-6.4.0 lib/splitclient-rb/split_factory_builder.rb
splitclient-rb-6.4.0.pre.rc1-java lib/splitclient-rb/split_factory_builder.rb
splitclient-rb-6.4.0.pre.rc1 lib/splitclient-rb/split_factory_builder.rb
splitclient-rb-6.3.0-java lib/splitclient-rb/split_factory_builder.rb
splitclient-rb-6.3.0 lib/splitclient-rb/split_factory_builder.rb
splitclient-rb-6.3.0.pre.rc1-java lib/splitclient-rb/split_factory_builder.rb
splitclient-rb-6.3.0.pre.rc1 lib/splitclient-rb/split_factory_builder.rb