# File lib/moneta/adapters/couch.rb, line 49 def store(key, value, options = {}) response = @backend.head(key) body = value_to_body(value, response.status == 200 && response['etag'][1..-2]) response = @backend.put(key, body, 'Content-Type' => 'application/json') raise "HTTP error #{response.status}" unless response.status == 201 value rescue tries ||= 0 (tries += 1) < 10 ? retry : raise end