prefixed_cache_store 0.0.1 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/prefixed_cache_store.rb +7 -2
- data/prefixed_cache_store.gemspec +62 -0
- data/spec/prefixed_cache_store_spec.rb +6 -0
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 666a5779f05420890e01fae317d1d9112313d64f
|
4
|
+
data.tar.gz: 6d59f1ff6a0718eb973b10c4d0cef7b53b8d5a98
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c637194e6cb2b226facac0d987fc6288cd6b72fa0e40cfebd3f0fd182bd54531bacb59375538e7adc3223d95b0aae0e85fbe81baa8c4bc1373d7c299d1d0cd87
|
7
|
+
data.tar.gz: 819cfb4ed6aefab1a2a9899df8e012fe47868ddeac0ff91080639f10314d458a0d1a13bd1a84dd3896fea321420b9cc0844f2e068cc47a34145f74fa97d3bb10
|
data/lib/prefixed_cache_store.rb
CHANGED
@@ -5,7 +5,7 @@ require 'forwardable'
|
|
5
5
|
# for the namespace and the version number that can be ratched up to "unlink" all the related keys.
|
6
6
|
# It assumes that the keys are being evicted automatically if they do not get used often.
|
7
7
|
class PrefixedCacheStore
|
8
|
-
VERSION = '0.
|
8
|
+
VERSION = '0.1.1'
|
9
9
|
|
10
10
|
RETAIN_PREFIX_FOR_SECONDS = 10
|
11
11
|
|
@@ -76,7 +76,12 @@ class PrefixedCacheStore
|
|
76
76
|
@last_prefix = nil # Then make sure the cached version number will not be used
|
77
77
|
get_and_set_current_version
|
78
78
|
end
|
79
|
-
|
79
|
+
|
80
|
+
# Returns the current version that has been set for this store
|
81
|
+
def current_version_number
|
82
|
+
get_and_set_current_version
|
83
|
+
end
|
84
|
+
|
80
85
|
private
|
81
86
|
|
82
87
|
def bump_version!
|
@@ -0,0 +1,62 @@
|
|
1
|
+
# Generated by jeweler
|
2
|
+
# DO NOT EDIT THIS FILE DIRECTLY
|
3
|
+
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
|
+
# -*- encoding: utf-8 -*-
|
5
|
+
# stub: prefixed_cache_store 0.1.1 ruby lib
|
6
|
+
|
7
|
+
Gem::Specification.new do |s|
|
8
|
+
s.name = "prefixed_cache_store"
|
9
|
+
s.version = "0.1.1"
|
10
|
+
|
11
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
12
|
+
s.require_paths = ["lib"]
|
13
|
+
s.authors = ["Julik Tarkhanov"]
|
14
|
+
s.date = "2014-10-28"
|
15
|
+
s.description = "Allows you to expire parts of your cache separately"
|
16
|
+
s.email = "me@julik.nl"
|
17
|
+
s.extra_rdoc_files = [
|
18
|
+
"LICENSE.txt",
|
19
|
+
"README.md"
|
20
|
+
]
|
21
|
+
s.files = [
|
22
|
+
".document",
|
23
|
+
".travis.yml",
|
24
|
+
"Gemfile",
|
25
|
+
"LICENSE.txt",
|
26
|
+
"README.md",
|
27
|
+
"Rakefile",
|
28
|
+
"lib/prefixed_cache_store.rb",
|
29
|
+
"prefixed_cache_store.gemspec",
|
30
|
+
"spec/prefixed_cache_store_spec.rb",
|
31
|
+
"spec/spec_helper.rb"
|
32
|
+
]
|
33
|
+
s.homepage = "http://github.com/julik/prefixed_cache_store"
|
34
|
+
s.licenses = ["MIT"]
|
35
|
+
s.rubygems_version = "2.2.2"
|
36
|
+
s.summary = "Namespaced versioned cache wrapper for ActiveSupport"
|
37
|
+
|
38
|
+
if s.respond_to? :specification_version then
|
39
|
+
s.specification_version = 4
|
40
|
+
|
41
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
42
|
+
s.add_development_dependency(%q<activesupport>, ["~> 3"])
|
43
|
+
s.add_development_dependency(%q<rspec>, ["~> 3.1"])
|
44
|
+
s.add_development_dependency(%q<bundler>, ["~> 1.0"])
|
45
|
+
s.add_development_dependency(%q<jeweler>, ["~> 2.0.1"])
|
46
|
+
s.add_development_dependency(%q<simplecov>, [">= 0"])
|
47
|
+
else
|
48
|
+
s.add_dependency(%q<activesupport>, ["~> 3"])
|
49
|
+
s.add_dependency(%q<rspec>, ["~> 3.1"])
|
50
|
+
s.add_dependency(%q<bundler>, ["~> 1.0"])
|
51
|
+
s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
|
52
|
+
s.add_dependency(%q<simplecov>, [">= 0"])
|
53
|
+
end
|
54
|
+
else
|
55
|
+
s.add_dependency(%q<activesupport>, ["~> 3"])
|
56
|
+
s.add_dependency(%q<rspec>, ["~> 3.1"])
|
57
|
+
s.add_dependency(%q<bundler>, ["~> 1.0"])
|
58
|
+
s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
|
59
|
+
s.add_dependency(%q<simplecov>, [">= 0"])
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
@@ -79,6 +79,7 @@ describe PrefixedCacheStore do
|
|
79
79
|
it 'performs multi-reads' do
|
80
80
|
some_store = ActiveSupport::Cache::MemoryStore.new
|
81
81
|
subject = described_class.new(some_store, 'pre')
|
82
|
+
expect(subject.current_version_number).to eq(0)
|
82
83
|
|
83
84
|
subject.write('record1', 'John')
|
84
85
|
subject.write('record2', 'Jake')
|
@@ -90,6 +91,7 @@ describe PrefixedCacheStore do
|
|
90
91
|
expect(some_store.read("pre-0-record1")).to eq('John')
|
91
92
|
expect(some_store.read("pre-0-record2")).to eq('Jake')
|
92
93
|
expect(some_store.read("pre-0-record3")).to eq('Mary')
|
94
|
+
|
93
95
|
end
|
94
96
|
end
|
95
97
|
|
@@ -98,6 +100,8 @@ describe PrefixedCacheStore do
|
|
98
100
|
some_store = ActiveSupport::Cache::MemoryStore.new
|
99
101
|
subject = described_class.new(some_store, 'pre')
|
100
102
|
|
103
|
+
expect(subject.current_version_number).to eq(0)
|
104
|
+
|
101
105
|
subject.write('record1', 'John')
|
102
106
|
expect(subject.read('record1')).to eq('John')
|
103
107
|
|
@@ -109,6 +113,8 @@ describe PrefixedCacheStore do
|
|
109
113
|
subject.write('record1', 'Jake')
|
110
114
|
expect(subject.read('record1')).to eq('Jake')
|
111
115
|
|
116
|
+
|
117
|
+
expect(subject.current_version_number).to eq(1)
|
112
118
|
expect(some_store.read("pre-version")).to eq(1)
|
113
119
|
expect(some_store.read("pre-0-record1")).to eq('John')
|
114
120
|
expect(some_store.read("pre-1-record1")).to eq('Jake')
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: prefixed_cache_store
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Julik Tarkhanov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-10-
|
11
|
+
date: 2014-10-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -95,6 +95,7 @@ files:
|
|
95
95
|
- README.md
|
96
96
|
- Rakefile
|
97
97
|
- lib/prefixed_cache_store.rb
|
98
|
+
- prefixed_cache_store.gemspec
|
98
99
|
- spec/prefixed_cache_store_spec.rb
|
99
100
|
- spec/spec_helper.rb
|
100
101
|
homepage: http://github.com/julik/prefixed_cache_store
|