Module: SplitIoClient

Defined in:
lib/splitclient-rb.rb,
lib/splitclient-rb/version.rb,
lib/splitclient-rb/exceptions.rb,
lib/splitclient-rb/utilitites.rb,
lib/splitclient-rb/validators.rb,
lib/splitclient-rb/split_config.rb,
lib/splitclient-rb/split_logger.rb,
lib/splitclient-rb/split_factory.rb,
lib/splitclient-rb/engine/back_off.rb,
lib/splitclient-rb/sse/sse_handler.rb,
lib/splitclient-rb/engine/api/client.rb,
lib/splitclient-rb/engine/api/events.rb,
lib/splitclient-rb/engine/api/splits.rb,
lib/splitclient-rb/engine/api/segments.rb,
lib/splitclient-rb/engine/models/split.rb,
lib/splitclient-rb/engine/push_manager.rb,
lib/splitclient-rb/engine/sync_manager.rb,
lib/splitclient-rb/engine/synchronizer.rb,
lib/splitclient-rb/telemetry/sync_task.rb,
lib/splitclient-rb/clients/split_client.rb,
lib/splitclient-rb/engine/status_manager.rb,
lib/splitclient-rb/helpers/thread_helper.rb,
lib/splitclient-rb/split_factory_builder.rb,
lib/splitclient-rb/engine/api/impressions.rb,
lib/splitclient-rb/engine/auth_api_client.rb,
lib/splitclient-rb/managers/split_manager.rb,
lib/splitclient-rb/split_factory_registry.rb,
lib/splitclient-rb/telemetry/synchronizer.rb,
lib/splitclient-rb/engine/matchers/matcher.rb,
lib/splitclient-rb/engine/parser/condition.rb,
lib/splitclient-rb/engine/parser/evaluator.rb,
lib/splitclient-rb/engine/parser/partition.rb,
lib/splitclient-rb/sse/event_source/client.rb,
lib/splitclient-rb/telemetry/init_consumer.rb,
lib/splitclient-rb/telemetry/init_producer.rb,
lib/splitclient-rb/cache/stores/store_utils.rb,
lib/splitclient-rb/engine/api/telemetry_api.rb,
lib/splitclient-rb/telemetry/domain/structs.rb,
lib/splitclient-rb/cache/filter/bloom_filter.rb,
lib/splitclient-rb/engine/evaluator/splitter.rb,
lib/splitclient-rb/engine/matchers/combiners.rb,
lib/splitclient-rb/sse/workers/splits_worker.rb,
lib/splitclient-rb/telemetry/storages/memory.rb,
lib/splitclient-rb/sse/notification_processor.rb,
lib/splitclient-rb/telemetry/domain/constants.rb,
lib/splitclient-rb/telemetry/runtime_consumer.rb,
lib/splitclient-rb/telemetry/runtime_producer.rb,
lib/splitclient-rb/cache/filter/filter_adapter.rb,
lib/splitclient-rb/cache/senders/events_sender.rb,
lib/splitclient-rb/engine/matchers/set_matcher.rb,
lib/splitclient-rb/sse/workers/segments_worker.rb,
lib/splitclient-rb/cache/adapters/cache_adapter.rb,
lib/splitclient-rb/cache/adapters/redis_adapter.rb,
lib/splitclient-rb/cache/fetchers/split_fetcher.rb,
lib/splitclient-rb/sse/event_source/event_types.rb,
lib/splitclient-rb/sse/event_source/stream_data.rb,
lib/splitclient-rb/cache/adapters/memory_adapter.rb,
lib/splitclient-rb/cache/repositories/repository.rb,
lib/splitclient-rb/sse/event_source/event_parser.rb,
lib/splitclient-rb/telemetry/evaluation_consumer.rb,
lib/splitclient-rb/telemetry/evaluation_producer.rb,
lib/splitclient-rb/cache/fetchers/segment_fetcher.rb,
lib/splitclient-rb/cache/hashers/impression_hasher.rb,
lib/splitclient-rb/cache/routers/impression_router.rb,
lib/splitclient-rb/engine/matchers/between_matcher.rb,
lib/splitclient-rb/sse/notification_manager_keeper.rb,
lib/splitclient-rb/cache/senders/impressions_sender.rb,
lib/splitclient-rb/engine/matchers/all_keys_matcher.rb,
lib/splitclient-rb/engine/matchers/contains_matcher.rb,
lib/splitclient-rb/engine/matchers/equal_to_matcher.rb,
lib/splitclient-rb/engine/matchers/negation_matcher.rb,
lib/splitclient-rb/engine/common/impressions_counter.rb,
lib/splitclient-rb/engine/common/impressions_manager.rb,
lib/splitclient-rb/engine/matchers/combining_matcher.rb,
lib/splitclient-rb/engine/matchers/ends_with_matcher.rb,
lib/splitclient-rb/engine/matchers/whitelist_matcher.rb,
lib/splitclient-rb/cache/stores/localhost_split_store.rb,
lib/splitclient-rb/engine/api/faraday_middleware/gzip.rb,
lib/splitclient-rb/engine/matchers/dependency_matcher.rb,
lib/splitclient-rb/telemetry/redis/redis_synchronizer.rb,
lib/splitclient-rb/cache/observers/impression_observer.rb,
lib/splitclient-rb/cache/senders/impressions_formatter.rb,
lib/splitclient-rb/engine/matchers/part_of_set_matcher.rb,
lib/splitclient-rb/engine/matchers/starts_with_matcher.rb,
lib/splitclient-rb/telemetry/redis/redis_init_producer.rb,
lib/splitclient-rb/cache/repositories/events_repository.rb,
lib/splitclient-rb/cache/repositories/splits_repository.rb,
lib/splitclient-rb/cache/senders/localhost_repo_cleaner.rb,
lib/splitclient-rb/cache/stores/localhost_split_builder.rb,
lib/splitclient-rb/engine/matchers/contains_all_matcher.rb,
lib/splitclient-rb/engine/matchers/contains_any_matcher.rb,
lib/splitclient-rb/engine/matchers/equal_to_set_matcher.rb,
lib/splitclient-rb/telemetry/memory/memory_synchronizer.rb,
lib/splitclient-rb/telemetry/memory/memory_init_consumer.rb,
lib/splitclient-rb/telemetry/memory/memory_init_producer.rb,
lib/splitclient-rb/cache/repositories/segments_repository.rb,
lib/splitclient-rb/cache/senders/impressions_count_sender.rb,
lib/splitclient-rb/engine/common/noop_impressions_counter.rb,
lib/splitclient-rb/engine/impressions/unique_keys_tracker.rb,
lib/splitclient-rb/engine/matchers/matches_string_matcher.rb,
lib/splitclient-rb/cache/observers/noop_impression_observer.rb,
lib/splitclient-rb/cache/senders/impressions_sender_adapter.rb,
lib/splitclient-rb/engine/matchers/equal_to_boolean_matcher.rb,
lib/splitclient-rb/telemetry/memory/memory_runtime_consumer.rb,
lib/splitclient-rb/telemetry/memory/memory_runtime_producer.rb,
lib/splitclient-rb/cache/repositories/impressions_repository.rb,
lib/splitclient-rb/telemetry/redis/redis_evaluation_producer.rb,
lib/splitclient-rb/cache/adapters/memory_adapters/map_adapter.rb,
lib/splitclient-rb/cache/repositories/events/redis_repository.rb,
lib/splitclient-rb/cache/repositories/events/memory_repository.rb,
lib/splitclient-rb/engine/impressions/noop_unique_keys_tracker.rb,
lib/splitclient-rb/telemetry/memory/memory_evaluation_consumer.rb,
lib/splitclient-rb/telemetry/memory/memory_evaluation_producer.rb,
lib/splitclient-rb/cache/adapters/memory_adapters/queue_adapter.rb,
lib/splitclient-rb/engine/matchers/user_defined_segment_matcher.rb,
lib/splitclient-rb/engine/metrics/binary_search_latency_tracker.rb,
lib/splitclient-rb/engine/matchers/less_than_or_equal_to_matcher.rb,
lib/splitclient-rb/cache/senders/impressions_adapter/redis_sender.rb,
lib/splitclient-rb/cache/repositories/impressions/redis_repository.rb,
lib/splitclient-rb/cache/senders/impressions_adapter/memory_sender.rb,
lib/splitclient-rb/cache/repositories/impressions/memory_repository.rb,
lib/splitclient-rb/engine/matchers/greater_than_or_equal_to_matcher.rb

Defined Under Namespace

Modules: Api, Cache, Engine, FaradayMiddleware, Hashers, Helpers, Observers, SSE, Telemetry, Utilities Classes: AllKeysMatcher, BetweenMatcher, BinarySearchLatencyTracker, Combiners, CombiningMatcher, Condition, Constants, ContainsAllMatcher, ContainsAnyMatcher, ContainsMatcher, DependencyMatcher, EndsWithMatcher, EqualToBooleanMatcher, EqualToMatcher, EqualToSetMatcher, GreaterThanOrEqualToMatcher, ImpressionRouter, LessThanOrEqualToMatcher, Matcher, MatchesStringMatcher, NegationMatcher, PartOfSetMatcher, Partition, SDKBlockerTimeoutExpiredException, SDKShutdownException, SSEClientException, SetMatcher, SplitClient, SplitConfig, SplitFactory, SplitFactoryBuilder, SplitFactoryRegistry, SplitIoError, SplitLogger, SplitManager, Splitter, StartsWithMatcher, UserDefinedSegmentMatcher, Validators, WhitelistMatcher

Constant Summary collapse

VERSION =
'8.0.1'
EVENTS_SIZE_THRESHOLD =
32768
EVENT_AVERAGE_SIZE =
1024
GET_TREATMENT =
'get_treatment'
GET_TREATMENTS =
'get_treatments'
GET_TREATMENT_WITH_CONFIG =
'get_treatment_with_config'
GET_TREATMENTS_WITH_CONFIG =
'get_treatments_with_config'
TRACK =
'track'

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.split_factory_registryObject

Returns the value of attribute split_factory_registry.



7
8
9
# File 'lib/splitclient-rb/split_factory_registry.rb', line 7

def split_factory_registry
  @split_factory_registry
end

Class Method Details

.load_factory_registryObject



10
11
12
# File 'lib/splitclient-rb/split_factory_registry.rb', line 10

def self.load_factory_registry
  self.split_factory_registry ||= SplitFactoryRegistry.new
end

.rootObject



140
141
142
# File 'lib/splitclient-rb.rb', line 140

def self.root
  File.dirname(__dir__)
end