Sha256: c81e05205a230589c30f1619aa2b9a73bd5a7ab1df4735f6595d4c4b898c2e6d
Contents?: true
Size: 1.22 KB
Versions: 28
Compression:
Stored size: 1.22 KB
Contents
require 'concurrent' module SplitIoClient module Cache module Repositories class RedisFlagSetsRepository < Repository def initialize(config) super(config) @adapter = SplitIoClient::Cache::Adapters::RedisAdapter.new(@config.redis_url) end def flag_set_exist?(flag_set) @adapter.exists?(namespace_key(".flagSet.#{flag_set}")) end def get_flag_sets(flag_sets) result = @adapter.redis.pipelined do |pipeline| flag_sets.each do |flag_set| pipeline.smembers(namespace_key(".flagSet.#{flag_set}")) end end to_return = Array.new result.each do |flag_set| flag_set.each { |feature_flag_name| to_return.push(feature_flag_name.to_s)} end to_return.uniq end def add_flag_set(flag_set) # not implemented end def remove_flag_set(flag_set) # not implemented end def add_feature_flag_to_flag_set(flag_set, feature_flag) # not implemented end def remove_feature_flag_from_flag_set(flag_set, feature_flag) # not implemented end end end end end
Version data entries
28 entries across 28 versions & 1 rubygems