class Consul::KV::Connection

Attributes

http[R]

Public Class Methods

new() click to toggle source
# File lib/consul/kv/connection.rb, line 8
def initialize
  raise 'Must configure Consul::KV' unless Consul::KV.config
  @http = Net::HTTP.new KV.config.consul_host, KV.config.consul_port
end

Public Instance Methods

delete(key, recurse = false) click to toggle source
# File lib/consul/kv/connection.rb, line 23
def delete(key, recurse = false)
  response = standard_request :Delete, key, recurse
end
get(key, recurse = false) click to toggle source
# File lib/consul/kv/connection.rb, line 19
def get(key, recurse = false)
  response = standard_request :Get, key, recurse
end
put(key, value) click to toggle source
# File lib/consul/kv/connection.rb, line 13
def put(key, value)
  response = standard_request :Put, key, false do |x|
    x.body = value
  end
end

Protected Instance Methods

normalize_key(key, recurse) click to toggle source
# File lib/consul/kv/connection.rb, line 36
def normalize_key(key, recurse)
  key = "#{KV.config.consul_prefix}/#{key}"
  key = "#{key}?recurse" if recurse
  key
end
standard_request(verb, key, recurse) { |request| ... } click to toggle source
# File lib/consul/kv/connection.rb, line 29
def standard_request(verb, key, recurse)
  key = normalize_key key, recurse
  request = Net::HTTP.const_get(verb).new(key)
  yield(request) if block_given?
  http.request(request)
end