Exception: SplitIoClient::SplitFactory

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

Overview

main class for split client sdk

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(api_key, config = {}) ⇒ SplitFactory

Returns a new instance of SplitFactory.



233
234
235
236
237
238
239
240
241
242
243
244
245
246
# File 'lib/splitclient-rb/split_factory.rb', line 233

def initialize(api_key, config = {})
  @api_key = api_key
  @config = SplitConfig.new(config)
  @cache_adapter = @config.cache_adapter
  @splits_repository = SplitIoClient::Cache::Repositories::SplitsRepository.new(@cache_adapter)
  @segments_repository = SplitIoClient::Cache::Repositories::SegmentsRepository.new(@cache_adapter)
  @sdk_blocker = SplitIoClient::Cache::Stores::SDKBlocker.new(@config)
  @adapter = api_key != 'localhost' \
  ? SplitAdapter.new(api_key, @config, @splits_repository, @segments_repository, @sdk_blocker)
  : nil
  @localhost_mode = api_key == 'localhost'

  @sdk_blocker.block if @config.block_until_ready
end

Class Method Details

.sdk_version ⇒ string

method that returns the sdk gem version

Returns:

  • (string) —

    version value for this sdk



260
261
262
# File 'lib/splitclient-rb/split_factory.rb', line 260

def self.sdk_version
  'RubyClientSDK-'+SplitIoClient::VERSION
end

Instance Method Details

#client ⇒ Object



248
249
250
# File 'lib/splitclient-rb/split_factory.rb', line 248

def client
  @client ||= init_client
end

#manager ⇒ Object



252
253
254
# File 'lib/splitclient-rb/split_factory.rb', line 252

def manager
  @manager ||= init_manager
end