Sha256: 687c4ce29881c3edfec3a3363a36278cb957b8721c4f876aef15c2500d733535

Contents?: true

Size: 1.41 KB

Versions: 28

Compression:

Stored size: 1.41 KB

Contents

# frozen_string_literal: true

module SplitIoClient
  module Telemetry
    class Synchronizer
      extend Forwardable
      def_delegators :@synchronizer,
                     :synchronize_config,
                     :synchronize_stats

      def initialize(config,
                     telemtry_consumers,
                     telemetry_init_producer,
                     repositories,
                     telemetry_api,
                     flag_sets,
                     flag_sets_invalid)
        @synchronizer = case config.telemetry_adapter.class.to_s
                        when 'SplitIoClient::Cache::Adapters::RedisAdapter'
                          SplitIoClient::Telemetry::RedisSynchronizer.new(config,
                                                                          telemetry_init_producer)
                        else
                          SplitIoClient::Telemetry::MemorySynchronizer.new(config,
                                                                           telemtry_consumers,
                                                                           repositories,
                                                                           telemetry_api,
                                                                           flag_sets,
                                                                           flag_sets_invalid)
                        end
      end
    end
  end
end

Version data entries

28 entries across 28 versions & 1 rubygems

Version Path
splitclient-rb-8.5.0-java lib/splitclient-rb/telemetry/synchronizer.rb
splitclient-rb-8.5.0 lib/splitclient-rb/telemetry/synchronizer.rb
splitclient-rb-8.5.0.pre.rc1-java lib/splitclient-rb/telemetry/synchronizer.rb
splitclient-rb-8.5.0.pre.rc1 lib/splitclient-rb/telemetry/synchronizer.rb
splitclient-rb-8.4.1.pre.rc1-java lib/splitclient-rb/telemetry/synchronizer.rb
splitclient-rb-8.4.1.pre.rc1 lib/splitclient-rb/telemetry/synchronizer.rb
splitclient-rb-8.4.0-java lib/splitclient-rb/telemetry/synchronizer.rb
splitclient-rb-8.4.0 lib/splitclient-rb/telemetry/synchronizer.rb
splitclient-rb-8.4.0.pre.rc1-java lib/splitclient-rb/telemetry/synchronizer.rb
splitclient-rb-8.4.0.pre.rc1 lib/splitclient-rb/telemetry/synchronizer.rb
splitclient-rb-8.4.0.rc.1-java lib/splitclient-rb/telemetry/synchronizer.rb
splitclient-rb-8.4.0.rc.1 lib/splitclient-rb/telemetry/synchronizer.rb
splitclient-rb-8.3.2.pre.rc2-java lib/splitclient-rb/telemetry/synchronizer.rb
splitclient-rb-8.3.2.pre.rc2 lib/splitclient-rb/telemetry/synchronizer.rb
splitclient-rb-8.3.2.pre.rc1-java lib/splitclient-rb/telemetry/synchronizer.rb
splitclient-rb-8.3.2.pre.rc1 lib/splitclient-rb/telemetry/synchronizer.rb
splitclient-rb-8.3.1-java lib/splitclient-rb/telemetry/synchronizer.rb
splitclient-rb-8.3.1 lib/splitclient-rb/telemetry/synchronizer.rb
splitclient-rb-8.3.1.pre.rc1-java lib/splitclient-rb/telemetry/synchronizer.rb
splitclient-rb-8.3.1.pre.rc1 lib/splitclient-rb/telemetry/synchronizer.rb