Merge pull request #10 from levkk/levkk/support-pooled-clients

Add support for pooled memcached clients by using #with
This commit is contained in:
Nick Elser
2019-09-04 14:33:26 -07:00
committed by GitHub
2 changed files with 10 additions and 8 deletions

View File

@@ -7,28 +7,30 @@ module Suo
end end
def clear def clear
@client.delete(@key) @client.with { |client| client.delete(@key) }
end end
private private
def get def get
@client.get_cas(@key) @client.with { |client| client.get_cas(@key) }
end end
def set(newval, cas, expire: false) def set(newval, cas, expire: false)
if expire if expire
@client.set_cas(@key, newval, cas, @options[:ttl]) @client.with { |client| client.set_cas(@key, newval, cas, @options[:ttl]) }
else else
@client.set_cas(@key, newval, cas) @client.with { |client| client.set_cas(@key, newval, cas) }
end end
end end
def initial_set(val = BLANK_STR) def initial_set(val = BLANK_STR)
@client.set(@key, val) @client.with do |client|
_val, cas = @client.get_cas(@key) client.set(@key, val)
_val, cas = client.get_cas(@key)
cas cas
end end
end end
end end
end end
end

View File

@@ -25,7 +25,7 @@ Gem::Specification.new do |spec|
spec.add_dependency "redis" spec.add_dependency "redis"
spec.add_dependency "msgpack" spec.add_dependency "msgpack"
spec.add_development_dependency "bundler", "~> 1.5" spec.add_development_dependency "bundler"
spec.add_development_dependency "rake", "~> 10.0" spec.add_development_dependency "rake", "~> 10.0"
spec.add_development_dependency "rubocop", "~> 0.49.0" spec.add_development_dependency "rubocop", "~> 0.49.0"
spec.add_development_dependency "minitest", "~> 5.5.0" spec.add_development_dependency "minitest", "~> 5.5.0"