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.



264
265
266
267
268
269
270
271
272
273
274
275
276
277
# File 'lib/splitclient-rb/split_factory.rb', line 264

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_versionstring

method that returns the sdk gem version

Returns:

  • (string)

    version value for this sdk



291
292
293
# File 'lib/splitclient-rb/split_factory.rb', line 291

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

Instance Method Details

#clientObject



279
280
281
# File 'lib/splitclient-rb/split_factory.rb', line 279

def client
  @client ||= init_client
end

#managerObject



283
284
285
# File 'lib/splitclient-rb/split_factory.rb', line 283

def manager
  @manager ||= init_manager
end