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.



188
189
190
191
192
193
194
195
196
197
198
199
200
# File 'lib/splitclient-rb/split_factory.rb', line 188

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)
  @impressions_repository = SplitIoClient::Cache::Repositories::ImpressionsRepository.new(@config.impressions_adapter, @config)
  @metrics_repository = SplitIoClient::Cache::Repositories::MetricsRepository.new(@config.metrics_adapter, @config)
  @sdk_blocker = SplitIoClient::Cache::Stores::SDKBlocker.new(@config)
  @adapter = SplitAdapter.new(api_key, @config, @splits_repository, @segments_repository, @impressions_repository, @metrics_repository, @sdk_blocker)

  @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



214
215
216
# File 'lib/splitclient-rb/split_factory.rb', line 214

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

Instance Method Details

#clientObject



202
203
204
# File 'lib/splitclient-rb/split_factory.rb', line 202

def client
  @client ||= init_client
end

#managerObject



206
207
208
# File 'lib/splitclient-rb/split_factory.rb', line 206

def manager
  @manager ||= init_manager
end