heavy_keeper 0.1.0 → 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +2 -1
- data/Gemfile.lock +1 -1
- data/README.md +1 -1
- data/lib/heavy_keeper/bucket.rb +2 -2
- data/lib/heavy_keeper/min_heap.rb +2 -2
- data/lib/heavy_keeper/top_k.rb +2 -2
- data/lib/heavy_keeper/version.rb +1 -1
- data/lib/heavy_keeper.rb +5 -1
- metadata +1 -2
- data/lib/heavy_keeper/config.rb +0 -10
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3328546c158b1a8deb330d6d3183e8cb8e2b347668877db9d388eba238780a2c
|
4
|
+
data.tar.gz: e8ca56848da95baf4870c3eb909e27cb7360178255266fa14c7824852797675b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e69378054fb3851ae706dd73301be7b9d47084c6736b43709d448f343e39b0bdf45e4a68c6581d4a81c82bbdf29879e2b43edc174a7e0ee3fc5ed16bb1dbc02c
|
7
|
+
data.tar.gz: 159c0594a4756d7fa5d5616568f5e84dfcdca3a677b55903277a9af5bbaf1285bb194544d3d2b71cc36e7b71ba29d667e730c86074d0c6d67d03ebedb4f960fc
|
data/CHANGELOG.md
CHANGED
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -27,7 +27,7 @@ gem 'heavy_keeper'
|
|
27
27
|
You will need to add an initializer to provide some configuration:
|
28
28
|
|
29
29
|
```ruby
|
30
|
-
HeavyKeeper
|
30
|
+
HeavyKeeper.configure do |config|
|
31
31
|
config.cache_prefix = 'cache_prefix'.freeze # currently used as prefix for the redis data structures.
|
32
32
|
config.storage = Redis.new # a Redis store, at least version 4.0
|
33
33
|
end
|
data/lib/heavy_keeper/bucket.rb
CHANGED
@@ -6,7 +6,7 @@ require 'json'
|
|
6
6
|
# rubocop:disable Naming/MethodParameterName
|
7
7
|
module HeavyKeeper
|
8
8
|
class Bucket
|
9
|
-
def initialize(storage = HeavyKeeper
|
9
|
+
def initialize(storage = HeavyKeeper.config.storage)
|
10
10
|
@storage = storage
|
11
11
|
end
|
12
12
|
|
@@ -33,7 +33,7 @@ module HeavyKeeper
|
|
33
33
|
end
|
34
34
|
|
35
35
|
def key_prefix
|
36
|
-
"#{HeavyKeeper
|
36
|
+
"#{HeavyKeeper.config.cache_prefix}_bucket"
|
37
37
|
end
|
38
38
|
end
|
39
39
|
end
|
@@ -6,7 +6,7 @@
|
|
6
6
|
#
|
7
7
|
module HeavyKeeper
|
8
8
|
class MinHeap
|
9
|
-
def initialize(storage = HeavyKeeper
|
9
|
+
def initialize(storage = HeavyKeeper.config.storage)
|
10
10
|
@storage = storage
|
11
11
|
end
|
12
12
|
|
@@ -86,7 +86,7 @@ module HeavyKeeper
|
|
86
86
|
end
|
87
87
|
|
88
88
|
def key_prefix
|
89
|
-
"#{HeavyKeeper
|
89
|
+
"#{HeavyKeeper.config.cache_prefix}_heavy_keeper"
|
90
90
|
end
|
91
91
|
end
|
92
92
|
end
|
data/lib/heavy_keeper/top_k.rb
CHANGED
@@ -19,7 +19,7 @@ module HeavyKeeper
|
|
19
19
|
# @param storage [Redis] A Redis client to interact with Redis
|
20
20
|
#
|
21
21
|
# @return [HeavyKeeper::TopK] new instance of the controller
|
22
|
-
def initialize(storage: HeavyKeeper
|
22
|
+
def initialize(storage: HeavyKeeper.config.storage)
|
23
23
|
@storage = storage
|
24
24
|
@min_heap = MinHeap.new(storage)
|
25
25
|
@bucket = Bucket.new(storage)
|
@@ -206,7 +206,7 @@ module HeavyKeeper
|
|
206
206
|
end
|
207
207
|
|
208
208
|
def key_prefix
|
209
|
-
"#{HeavyKeeper
|
209
|
+
"#{HeavyKeeper.config.cache_prefix}_heavy_keeper"
|
210
210
|
end
|
211
211
|
|
212
212
|
def validate(options)
|
data/lib/heavy_keeper/version.rb
CHANGED
data/lib/heavy_keeper.rb
CHANGED
@@ -1,11 +1,15 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require_relative 'heavy_keeper/version'
|
4
|
-
require_relative 'heavy_keeper/config'
|
5
4
|
require_relative 'heavy_keeper/top_k'
|
6
5
|
require_relative 'heavy_keeper/min_heap'
|
7
6
|
require_relative 'heavy_keeper/bucket'
|
8
7
|
|
9
8
|
module HeavyKeeper
|
10
9
|
class Error < StandardError; end
|
10
|
+
|
11
|
+
extend Dry::Configurable
|
12
|
+
|
13
|
+
setting :cache_prefix, default: 'cache_prefix'
|
14
|
+
setting :storage
|
11
15
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: heavy_keeper
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Hieu Nguyen
|
@@ -85,7 +85,6 @@ files:
|
|
85
85
|
- heavy_keeper.gemspec
|
86
86
|
- lib/heavy_keeper.rb
|
87
87
|
- lib/heavy_keeper/bucket.rb
|
88
|
-
- lib/heavy_keeper/config.rb
|
89
88
|
- lib/heavy_keeper/min_heap.rb
|
90
89
|
- lib/heavy_keeper/top_k.rb
|
91
90
|
- lib/heavy_keeper/version.rb
|