Class: SplitIoClient::Cache::Repositories::SegmentsRepository
Instance Method Summary
collapse
#[], #[]=, #initialize
Instance Method Details
#add_to_segment(segment) ⇒ Object
5
6
7
8
9
10
11
12
|
# File 'lib/cache/repositories/segments_repository.rb', line 5
def add_to_segment(segment)
name = segment[:name]
@adapter.initialize_map(namespace_key("segments:#{name}")) if @adapter[namespace_key("segments:#{name}")].nil?
add_keys(name, segment[:added])
remove_keys(name, segment[:removed])
end
|
#get_change_number(name) ⇒ Object
32
33
34
|
# File 'lib/cache/repositories/segments_repository.rb', line 32
def get_change_number(name)
@adapter.find_in_map(namespace_key('changes'), name) || -1
end
|
#get_segment_keys(name) ⇒ Object
14
15
16
|
# File 'lib/cache/repositories/segments_repository.rb', line 14
def get_segment_keys(name)
@adapter[namespace_key("segments:#{name}")]
end
|
#in_segment?(name, key) ⇒ Boolean
18
19
20
|
# File 'lib/cache/repositories/segments_repository.rb', line 18
def in_segment?(name, key)
@adapter.in_map?(namespace_key("segments:#{name}"), key)
end
|
#set_change_number(name, last_change) ⇒ Object
26
27
28
29
30
|
# File 'lib/cache/repositories/segments_repository.rb', line 26
def set_change_number(name, last_change)
@adapter.initialize_map(namespace_key('changes')) if @adapter[namespace_key('changes')].nil?
@adapter.add_to_map(namespace_key('changes'), name, last_change)
end
|
#used_segment_names ⇒ Object
22
23
24
|
# File 'lib/cache/repositories/segments_repository.rb', line 22
def used_segment_names
@adapter['splits_repository_used_segment_names'].keys
end
|