Class: Lita::Handlers::Consul

Inherits:
Handler
  • Object
show all
Defined in:
lib/lita/handlers/consul.rb

Instance Method Summary collapse

Instance Method Details

#consul_get(response) ⇒ Object



47
48
49
50
51
52
53
# File 'lib/lita/handlers/consul.rb', line 47

def consul_get(response)
  key = response.match_data['key']
  value = get_key_value(key)
  response.reply "#{key} = #{value}"
rescue Faraday::ConnectionFailed => e
  response.reply e.message
end

#consul_members(response) ⇒ Object



36
37
38
39
40
41
42
43
44
45
# File 'lib/lita/handlers/consul.rb', line 36

def consul_members(response)
  resp = http.get("#{api_url}/catalog/nodes")
  replies = []
  MultiJson.load(resp.body).each do |node|
    replies << "#{node['Node']} - #{node['Address']}"
  end
  response.reply replies.join("\n")
rescue Faraday::ConnectionFailed => e
  response.reply e.message
end

#consul_set(response) ⇒ Object



55
56
57
58
59
60
61
62
63
# File 'lib/lita/handlers/consul.rb', line 55

def consul_set(response)
  key = response.match_data['key']
  value = response.match_data['value']
  http.put("#{api_url}/kv/#{key}", value)
  value = get_key_value(key)
  response.reply "#{key} = #{value}"
rescue Faraday::ConnectionFailed => e
  response.reply e.message
end