splitclient-rb 4.1.0.pre.rc1 → 4.1.0.pre.rc2

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: a1940b82d90766ec3641b0b5e271f8d8d67026fd
4
- data.tar.gz: 410da73bb3192cbde8b947226e72063bf8b9348b
3
+ metadata.gz: '07662888415c5a0ab2459e922fc4b1237fc792c4'
4
+ data.tar.gz: 13a6280bcd1c5ca9961b4bf7fcc78b5dacaa7f74
5
5
  SHA512:
6
- metadata.gz: e7602038ddcd42020c1207825f2b07a4dcaaa4900ec99c14a5aacf0e55d907972a37f7205b1aa103c77f44be8c8b9f85bd5822af11efa8944fb0aa7113dc15a9
7
- data.tar.gz: 194de0eb97cf2fdc6a7df31cadd76569e8f9334dc9a4503734ba3e91c8b4f916a9202f6f6e8c22702c4641fcea4110f585c15b3d2f7cb4bafcaf4f6d37518719
6
+ metadata.gz: b51c5d6a86c3f159187655c28650eea25f9f43d4478d2f7f61f9f85260e14443aeaf20df8ff11a382b7bd2cd949326d7bd782a86f2bcee410689113f72e0f4c0
7
+ data.tar.gz: e27332ffadcc131d015f5871dbc6e77bf9dde7579e727fc84647139584443f4225e0a47b5f72b211632551d5652d3c7382dd3e1e732cbfe43bdc6104eb9d336f
data/Detailed-README.md CHANGED
@@ -352,6 +352,18 @@ And you should get something like this:
352
352
  ]
353
353
  ```
354
354
 
355
+ ### Logging
356
+
357
+ Ruby SDK makes use of Ruby stdlib's `Logger` class to log errors/events, default option is: `Logger.new($stdout)`.
358
+
359
+ You can configure the following options in the config file:
360
+
361
+ ```
362
+ logger: Logger.new('logfile.log'), # you can specify your own Logger class instance here
363
+ debug_enabled: true, # used for more verbose logging, including more debug information (false is the default)
364
+ transport_debug_enabled: true # used for log transport data (mostly http requests, false is the default)
365
+ ```
366
+
355
367
  ### SDK Modes
356
368
 
357
369
  By default SDK would run alongside with your application and will be run in `standalone` mode, which includes two modes:
@@ -0,0 +1,15 @@
1
+ module SplitIoClient
2
+ class EqualToSetMatcher < SetMatcher
3
+ def self.matcher_type
4
+ 'EQUAL_TO_SET'.freeze
5
+ end
6
+
7
+ def initialize(attribute, remote_array)
8
+ super(attribute, remote_array)
9
+ end
10
+
11
+ def match?(_key, data)
12
+ local_set(data, @attribute) == @remote_set
13
+ end
14
+ end
15
+ end
@@ -108,23 +108,29 @@ module SplitIoClient
108
108
  BetweenMatcher.new(attribute: attribute, start_value: start_value, end_value: end_value, data_type: data_type)
109
109
  end
110
110
 
111
+ def matcher_equal_to_set(params)
112
+ EqualToSetMatcher.new(
113
+ params[:matcher][:keySelector][:attribute],
114
+ params[:matcher][:whitelistMatcherData][:whitelist]
115
+ )
116
+ end
111
117
 
112
- def matcher_part_of_set(params)
113
- PartOfSetMatcher.new(
118
+ def matcher_contains_any_of_set(params)
119
+ ContainsAnyMatcher.new(
114
120
  params[:matcher][:keySelector][:attribute],
115
121
  params[:matcher][:whitelistMatcherData][:whitelist]
116
122
  )
117
123
  end
118
124
 
119
- def matcher_contains_all(params)
125
+ def matcher_contains_all_of_set(params)
120
126
  ContainsAllMatcher.new(
121
127
  params[:matcher][:keySelector][:attribute],
122
128
  params[:matcher][:whitelistMatcherData][:whitelist]
123
129
  )
124
130
  end
125
131
 
126
- def matcher_contains_any(params)
127
- ContainsAnyMatcher.new(
132
+ def matcher_part_of_set(params)
133
+ PartOfSetMatcher.new(
128
134
  params[:matcher][:keySelector][:attribute],
129
135
  params[:matcher][:whitelistMatcherData][:whitelist]
130
136
  )
@@ -137,15 +143,15 @@ module SplitIoClient
137
143
  )
138
144
  end
139
145
 
140
- def matcher_contains(params)
141
- ContainsMatcher.new(
146
+ def matcher_ends_with(params)
147
+ EndsWithMatcher.new(
142
148
  params[:matcher][:keySelector][:attribute],
143
149
  params[:matcher][:whitelistMatcherData][:whitelist]
144
150
  )
145
151
  end
146
152
 
147
- def matcher_ends_with(params)
148
- EndsWithMatcher.new(
153
+ def matcher_contains_string(params)
154
+ ContainsMatcher.new(
149
155
  params[:matcher][:keySelector][:attribute],
150
156
  params[:matcher][:whitelistMatcherData][:whitelist]
151
157
  )
@@ -1,3 +1,3 @@
1
1
  module SplitIoClient
2
- VERSION = '4.1.0-rc1'
2
+ VERSION = '4.1.0-rc2'
3
3
  end
@@ -53,6 +53,7 @@ require 'engine/matchers/less_than_or_equal_to_matcher'
53
53
  require 'engine/matchers/between_matcher'
54
54
  require 'engine/matchers/set_matcher'
55
55
  require 'engine/matchers/part_of_set_matcher'
56
+ require 'engine/matchers/equal_to_set_matcher'
56
57
  require 'engine/matchers/contains_any_matcher'
57
58
  require 'engine/matchers/contains_all_matcher'
58
59
  require 'engine/matchers/starts_with_matcher'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: splitclient-rb
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.1.0.pre.rc1
4
+ version: 4.1.0.pre.rc2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Split Software
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-04-26 00:00:00.000000000 Z
11
+ date: 2017-05-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -314,6 +314,7 @@ files:
314
314
  - lib/engine/matchers/contains_matcher.rb
315
315
  - lib/engine/matchers/ends_with_matcher.rb
316
316
  - lib/engine/matchers/equal_to_matcher.rb
317
+ - lib/engine/matchers/equal_to_set_matcher.rb
317
318
  - lib/engine/matchers/greater_than_or_equal_to_matcher.rb
318
319
  - lib/engine/matchers/less_than_or_equal_to_matcher.rb
319
320
  - lib/engine/matchers/negation_matcher.rb