splitclient-rb 3.1.0.pre.rc8 → 3.1.0.pre.rc9

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b1309484de3281c553d149dedc90df953df886f6
4
- data.tar.gz: 3f4cc3a188da4d9c3167465b4d3e9886bc92320f
3
+ metadata.gz: 3037157b7408479db6d29868df4005078bf344c4
4
+ data.tar.gz: 20b2c1ef05f4ab0ea4114a748ef513e0b95fcf51
5
5
  SHA512:
6
- metadata.gz: 9d28027d4c955132b5064c331fb2d7a50104a8e04b5d7abc86bd102731324050572b021b02a4d5e384d2101e6c37351f158c50660706d26125d8c8619b45cb5c
7
- data.tar.gz: fe822d1c1f3395e0f8c48fed3dbee881dd8d7a9b15964bc5340d300c0cf2494fdba7406b6fe79c8f409955cc8fc02793374e26026cdd3ee34795c8aecb3a4f42
6
+ metadata.gz: 8894fab929d077ee1ab8906e0326076944a0bb4de41514dc8672e6d0ec0e21ffc9dc3394d6d66367c611304e4d6f81a4c4b9442acff078444e0391e490dc4577
7
+ data.tar.gz: '01656839c7ca92686ee5b0623de195ce42caa66673cc7873baf010b08d5e5c5b71b018f1f4d17b2997f3dae2f4a4ef7944e2df081a8596d22360861414fa55c6'
@@ -19,16 +19,16 @@ module SplitIoClient
19
19
  # delete fetched impressions afterwards
20
20
  def clear
21
21
  impressions = impression_keys.each_with_object([]) do |key, memo|
22
- @adapter.random_set_elements(key, @config.impressions_queue_size).each do |impression|
22
+ members = @adapter.random_set_elements(key, @config.impressions_queue_size)
23
+ members.each do |impression|
23
24
  parsed_impression = JSON.parse(impression)
24
25
 
25
26
  memo << {
26
27
  feature: parsed_impression['split_name'],
27
28
  impressions: parsed_impression.reject { |k, _| k == 'split_name' }
28
29
  }
29
-
30
- @adapter.delete_from_set(key, impression)
31
30
  end
31
+ @adapter.delete_from_set(key, members)
32
32
  end
33
33
 
34
34
  impressions
@@ -73,6 +73,13 @@ module SplitIoClient
73
73
  load_localhost_mode_features(splits_file)
74
74
  end
75
75
 
76
+ def get_treatments(key, split_names, attributes = nil)
77
+ split_names.each_with_object({}) do | (name), memo|
78
+ puts "name #{name} memo #{memo}"
79
+ memo.merge!(name => get_treatment(key, name, attributes))
80
+ end
81
+ end
82
+
76
83
  #
77
84
  # obtains the treatment for a given feature
78
85
  #
@@ -150,6 +150,14 @@ module SplitIoClient
150
150
  end
151
151
 
152
152
  def get_treatments(key, split_names, attributes = nil)
153
+
154
+ # This localhost behavior must live in in localhost_spit_factory#client
155
+ if is_localhost_mode?
156
+ return split_names.each_with_object({}) do | (name), memo|
157
+ memo.merge!(name => get_localhost_treatment(name))
158
+ end
159
+ end
160
+
153
161
  @splits_repository.get_splits(split_names).each_with_object({}) do |(name, data), memo|
154
162
  memo.merge!(name => get_treatment(key, name, attributes, data))
155
163
  end
@@ -1,3 +1,3 @@
1
1
  module SplitIoClient
2
- VERSION = '3.1.0-rc8'
2
+ VERSION = '3.1.0-rc9'
3
3
  end
data/splitio.yml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ :api_key: 42fsieif0v7d9jqm3qrqn59bdn
3
+ :mode: :producer
4
+ :cache_adapter: :redis
5
+ :debug_enabled: true
6
+ :transport_debug_enabled: true
7
+ :impressions_refresh_rate: 30
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: splitclient-rb
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.1.0.pre.rc8
4
+ version: 3.1.0.pre.rc9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Split Software
@@ -295,6 +295,7 @@ files:
295
295
  - lib/splitclient-rb/version.rb
296
296
  - lib/splitclient-rb_utilitites.rb
297
297
  - splitclient-rb.gemspec
298
+ - splitio.yml
298
299
  - tasks/benchmark_get_treatment.rake
299
300
  - tasks/console.rake
300
301
  - tasks/rspec.rake