Class: SplitIoClient::Cache::Filter::FlagSetsFilter
- Inherits:
-
Object
- Object
- SplitIoClient::Cache::Filter::FlagSetsFilter
- Defined in:
- lib/splitclient-rb/cache/filter/flag_set_filter.rb
Instance Method Summary collapse
- #flag_set_exist?(flag_set) ⇒ Boolean
-
#initialize(flag_sets = []) ⇒ FlagSetsFilter
constructor
A new instance of FlagSetsFilter.
- #intersect?(flag_sets) ⇒ Boolean
- #should_filter? ⇒ Boolean
Constructor Details
#initialize(flag_sets = []) ⇒ FlagSetsFilter
Returns a new instance of FlagSetsFilter.
9 10 11 12 |
# File 'lib/splitclient-rb/cache/filter/flag_set_filter.rb', line 9 def initialize(flag_sets = []) @flag_sets = Set.new(flag_sets) @should_filter = @flag_sets.any? end |
Instance Method Details
#flag_set_exist?(flag_set) ⇒ Boolean
18 19 20 21 22 23 24 25 26 |
# File 'lib/splitclient-rb/cache/filter/flag_set_filter.rb', line 18 def flag_set_exist?(flag_set) return true unless @should_filter if not flag_set.is_a?(String) or flag_set.empty? return false end @flag_sets.intersection([flag_set]).any? end |
#intersect?(flag_sets) ⇒ Boolean
28 29 30 31 32 33 34 35 36 |
# File 'lib/splitclient-rb/cache/filter/flag_set_filter.rb', line 28 def intersect?(flag_sets) return true unless @should_filter if not flag_sets.is_a?(Array) or flag_sets.empty? return false end @flag_sets.intersection(Set.new(flag_sets)).any? end |
#should_filter? ⇒ Boolean
14 15 16 |
# File 'lib/splitclient-rb/cache/filter/flag_set_filter.rb', line 14 def should_filter? @should_filter end |