bitzer_store 0.0.1 → 0.0.2
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/.gitignore +1 -0
- data/Gemfile +4 -0
- data/README.md +2 -2
- data/Rakefile +5 -0
- data/bitzer_store.gemspec +6 -2
- data/lib/bitzer_store/configure.rb +46 -0
- data/lib/bitzer_store/version.rb +1 -1
- data/lib/bitzer_store.rb +7 -0
- data/spec/spec_helper.rb +2 -0
- data/spec/unit/bitzer_store_configure_spec.rb +27 -0
- data/spec/unit/bitzer_store_spec.rb +16 -0
- metadata +76 -15
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 721a1296290061a712d564f894cda9c30ad53ab3
|
4
|
+
data.tar.gz: 9ed9482d546b1c4766daded40c314479c779bfcd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 80b855e03b7e4d7cd13ea508230ad5afce4d1f3b0f9d938f8f5f70b541b392eb61998b433925c521208a90a669b663fa5d0fc4e05c403ec9c2e8dcb2d824e614
|
7
|
+
data.tar.gz: 488eb5bf95e17cd4c58e1e2053ced8c53cb59e6b6f7163545e70851358923475a16d33366c99531921f25ec6d348e962a3c36dc0bd3446d18d1661401ab5d4f8
|
data/.gitignore
CHANGED
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# BitzerStore
|
2
2
|
|
3
3
|
BitzerStore can treat individual cache clusters in Rails.
|
4
|
-
Rails
|
4
|
+
Rails cache normally uses one cache cluster.
|
5
5
|
|
6
6
|
config.cache_store = :mem_cache_store, "server1", "server2"
|
7
7
|
|
@@ -24,7 +24,7 @@ Or install it yourself as:
|
|
24
24
|
## Usage
|
25
25
|
|
26
26
|
1.config
|
27
|
-
at config/environments
|
27
|
+
at config/environments/*.rb
|
28
28
|
|
29
29
|
config.cache_store = :bitzer_store, {
|
30
30
|
:default => [:mem_cache_store, "server0"],
|
data/Rakefile
CHANGED
data/bitzer_store.gemspec
CHANGED
@@ -18,6 +18,10 @@ Gem::Specification.new do |spec|
|
|
18
18
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
19
|
spec.require_paths = ["lib"]
|
20
20
|
|
21
|
-
spec.
|
22
|
-
spec.
|
21
|
+
spec.add_dependency "activesupport", ">= 3.2", "< 4.2"
|
22
|
+
spec.add_dependency "railties", ">= 3.2", "< 4.2"
|
23
|
+
|
24
|
+
spec.add_development_dependency "bundler", '~> 1.6'
|
25
|
+
spec.add_development_dependency "rake", '~> 10.3'
|
26
|
+
spec.add_development_dependency "rspec", '~> 3.0'
|
23
27
|
end
|
@@ -0,0 +1,46 @@
|
|
1
|
+
require 'active_support/core_ext/array/extract_options'
|
2
|
+
require 'active_support/core_ext/object/blank'
|
3
|
+
|
4
|
+
module BitzerStore
|
5
|
+
class Configure
|
6
|
+
def self.setting(config)
|
7
|
+
raise ArgumentError, "block not supplied" unless block_given?
|
8
|
+
c = Configure.new
|
9
|
+
yield(c)
|
10
|
+
config.cache_store = :bitzer_store, c.settings
|
11
|
+
end
|
12
|
+
|
13
|
+
attr_reader :settings
|
14
|
+
|
15
|
+
def initialize
|
16
|
+
@settings = {}
|
17
|
+
end
|
18
|
+
|
19
|
+
def set(name, *args)
|
20
|
+
options = common_options.merge(args.extract_options!)
|
21
|
+
args = args.presence || common_args
|
22
|
+
args << options if options.present?
|
23
|
+
|
24
|
+
@settings[name] = args
|
25
|
+
end
|
26
|
+
|
27
|
+
def method_missing(name, *args, &block)
|
28
|
+
set(name, *args)
|
29
|
+
end
|
30
|
+
|
31
|
+
def common_setting(*args)
|
32
|
+
@common_options = args.extract_options!
|
33
|
+
@common_args = args
|
34
|
+
end
|
35
|
+
|
36
|
+
private
|
37
|
+
|
38
|
+
def common_args
|
39
|
+
@common_args || []
|
40
|
+
end
|
41
|
+
|
42
|
+
def common_options
|
43
|
+
@common_options || {}
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
data/lib/bitzer_store/version.rb
CHANGED
data/lib/bitzer_store.rb
CHANGED
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,27 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe BitzerStore::Configure do
|
4
|
+
context "#set" do
|
5
|
+
it "add settings" do
|
6
|
+
c = BitzerStore::Configure.new
|
7
|
+
c.set(:cache_name, :dalli, "localhost:11211", :expires_in => 600)
|
8
|
+
expect(c.settings.keys.first).to eq(:cache_name)
|
9
|
+
expect(c.settings.values.first).to eq([:dalli, "localhost:11211", :expires_in => 600])
|
10
|
+
end
|
11
|
+
|
12
|
+
it "use method_missing" do
|
13
|
+
c = BitzerStore::Configure.new
|
14
|
+
c.cache_name :dalli, "localhost:11211", :expires_in => 600
|
15
|
+
expect(c.settings.keys.first).to eq(:cache_name)
|
16
|
+
expect(c.settings.values.first).to eq([:dalli, "localhost:11211", :expires_in => 600])
|
17
|
+
end
|
18
|
+
|
19
|
+
it "use common_setting" do
|
20
|
+
c = BitzerStore::Configure.new
|
21
|
+
c.common_setting :dalli, "localhost:11211", :expires_in => 600, :namespace => "tsuka"
|
22
|
+
c.cache_name :namespace => "special"
|
23
|
+
expect(c.settings.keys.first).to eq(:cache_name)
|
24
|
+
expect(c.settings.values.first).to eq([:dalli, "localhost:11211", :expires_in => 600, :namespace => "special"])
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'rails'
|
3
|
+
|
4
|
+
describe BitzerStore do
|
5
|
+
context ".configure" do
|
6
|
+
it "set cache_store config" do
|
7
|
+
c = Rails::Application::Configuration.new
|
8
|
+
BitzerStore.configure(c) do |cache|
|
9
|
+
cache.common_setting :dalli, "localhost:11211", :expires_in => 600
|
10
|
+
cache.default :namespace => "tsuka"
|
11
|
+
end
|
12
|
+
|
13
|
+
expect(c.cache_store).to eq([:bitzer_store, {:default=>[:dalli, "localhost:11211", {:expires_in=>600, :namespace=>"tsuka"}]}])
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
metadata
CHANGED
@@ -1,43 +1,97 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bitzer_store
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- tsukasaoishi
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2014-06-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: activesupport
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '3.2'
|
20
|
+
- - "<"
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: '4.2'
|
23
|
+
type: :runtime
|
24
|
+
prerelease: false
|
25
|
+
version_requirements: !ruby/object:Gem::Requirement
|
26
|
+
requirements:
|
27
|
+
- - ">="
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '3.2'
|
30
|
+
- - "<"
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '4.2'
|
33
|
+
- !ruby/object:Gem::Dependency
|
34
|
+
name: railties
|
35
|
+
requirement: !ruby/object:Gem::Requirement
|
36
|
+
requirements:
|
37
|
+
- - ">="
|
38
|
+
- !ruby/object:Gem::Version
|
39
|
+
version: '3.2'
|
40
|
+
- - "<"
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
version: '4.2'
|
43
|
+
type: :runtime
|
44
|
+
prerelease: false
|
45
|
+
version_requirements: !ruby/object:Gem::Requirement
|
46
|
+
requirements:
|
47
|
+
- - ">="
|
48
|
+
- !ruby/object:Gem::Version
|
49
|
+
version: '3.2'
|
50
|
+
- - "<"
|
51
|
+
- !ruby/object:Gem::Version
|
52
|
+
version: '4.2'
|
13
53
|
- !ruby/object:Gem::Dependency
|
14
54
|
name: bundler
|
15
55
|
requirement: !ruby/object:Gem::Requirement
|
16
56
|
requirements:
|
17
|
-
- - ~>
|
57
|
+
- - "~>"
|
18
58
|
- !ruby/object:Gem::Version
|
19
|
-
version: '1.
|
59
|
+
version: '1.6'
|
20
60
|
type: :development
|
21
61
|
prerelease: false
|
22
62
|
version_requirements: !ruby/object:Gem::Requirement
|
23
63
|
requirements:
|
24
|
-
- - ~>
|
64
|
+
- - "~>"
|
25
65
|
- !ruby/object:Gem::Version
|
26
|
-
version: '1.
|
66
|
+
version: '1.6'
|
27
67
|
- !ruby/object:Gem::Dependency
|
28
68
|
name: rake
|
29
69
|
requirement: !ruby/object:Gem::Requirement
|
30
70
|
requirements:
|
31
|
-
- -
|
71
|
+
- - "~>"
|
72
|
+
- !ruby/object:Gem::Version
|
73
|
+
version: '10.3'
|
74
|
+
type: :development
|
75
|
+
prerelease: false
|
76
|
+
version_requirements: !ruby/object:Gem::Requirement
|
77
|
+
requirements:
|
78
|
+
- - "~>"
|
79
|
+
- !ruby/object:Gem::Version
|
80
|
+
version: '10.3'
|
81
|
+
- !ruby/object:Gem::Dependency
|
82
|
+
name: rspec
|
83
|
+
requirement: !ruby/object:Gem::Requirement
|
84
|
+
requirements:
|
85
|
+
- - "~>"
|
32
86
|
- !ruby/object:Gem::Version
|
33
|
-
version: '0'
|
87
|
+
version: '3.0'
|
34
88
|
type: :development
|
35
89
|
prerelease: false
|
36
90
|
version_requirements: !ruby/object:Gem::Requirement
|
37
91
|
requirements:
|
38
|
-
- -
|
92
|
+
- - "~>"
|
39
93
|
- !ruby/object:Gem::Version
|
40
|
-
version: '0'
|
94
|
+
version: '3.0'
|
41
95
|
description: BitzerStore can treat individual cache clusters in Rails.
|
42
96
|
email:
|
43
97
|
- tsukasa.oishi@gmail.com
|
@@ -45,7 +99,7 @@ executables: []
|
|
45
99
|
extensions: []
|
46
100
|
extra_rdoc_files: []
|
47
101
|
files:
|
48
|
-
- .gitignore
|
102
|
+
- ".gitignore"
|
49
103
|
- Gemfile
|
50
104
|
- LICENSE.txt
|
51
105
|
- README.md
|
@@ -53,7 +107,11 @@ files:
|
|
53
107
|
- bitzer_store.gemspec
|
54
108
|
- lib/active_support/cache/bitzer_store.rb
|
55
109
|
- lib/bitzer_store.rb
|
110
|
+
- lib/bitzer_store/configure.rb
|
56
111
|
- lib/bitzer_store/version.rb
|
112
|
+
- spec/spec_helper.rb
|
113
|
+
- spec/unit/bitzer_store_configure_spec.rb
|
114
|
+
- spec/unit/bitzer_store_spec.rb
|
57
115
|
homepage: https://github.com/tsukasaoishi/bitzer_store
|
58
116
|
licenses:
|
59
117
|
- MIT
|
@@ -64,18 +122,21 @@ require_paths:
|
|
64
122
|
- lib
|
65
123
|
required_ruby_version: !ruby/object:Gem::Requirement
|
66
124
|
requirements:
|
67
|
-
- -
|
125
|
+
- - ">="
|
68
126
|
- !ruby/object:Gem::Version
|
69
127
|
version: '0'
|
70
128
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
71
129
|
requirements:
|
72
|
-
- -
|
130
|
+
- - ">="
|
73
131
|
- !ruby/object:Gem::Version
|
74
132
|
version: '0'
|
75
133
|
requirements: []
|
76
134
|
rubyforge_project:
|
77
|
-
rubygems_version: 2.
|
135
|
+
rubygems_version: 2.2.2
|
78
136
|
signing_key:
|
79
137
|
specification_version: 4
|
80
138
|
summary: BitzerStore can treat individual cache clusters in Rails.
|
81
|
-
test_files:
|
139
|
+
test_files:
|
140
|
+
- spec/spec_helper.rb
|
141
|
+
- spec/unit/bitzer_store_configure_spec.rb
|
142
|
+
- spec/unit/bitzer_store_spec.rb
|