class Synapse::Rails::Providers::Base
Attributes
base_path[W]
service[RW]
tester[RW]
check[RW]
function[RW]
Public Class Methods
base_path()
click to toggle source
# File lib/synapse/rails/providers/base.rb, line 8 def base_path @base_path ||= "/nerve" end
hosts()
click to toggle source
# File lib/synapse/rails/providers/base.rb, line 11 def hosts @hosts ||= ::Synapse::Rails::Consul.discover(:zookeeper).collect do |address| "#{address}:#{ZK.default_port}" end end
new(params={})
click to toggle source
# File lib/synapse/rails/providers/base.rb, line 18 def initialize params={} @function = "common" @default_servers = [] config params end
Public Instance Methods
config(params={})
click to toggle source
# File lib/synapse/rails/providers/base.rb, line 50 def config params={} params.each do |k,v| self.send(:"#{k}=",v) rescue nil end end
default_servers()
click to toggle source
# File lib/synapse/rails/providers/base.rb, line 40 def default_servers @default_servers end
discovery()
click to toggle source
# File lib/synapse/rails/providers/base.rb, line 29 def discovery %i{method path hosts}.collect do |element| [element,self.send(element)] end.to_h.with_indifferent_access end
haproxy()
click to toggle source
# File lib/synapse/rails/providers/base.rb, line 34 def haproxy unless ::Synapse::Rails.started? @haproxy = ::Synapse::Rails::ProviderProxy.new(check:@check).haproxy end @haproxy end
host()
click to toggle source
# File lib/synapse/rails/providers/base.rb, line 61 def host "127.0.0.1" end
hosts()
click to toggle source
# File lib/synapse/rails/providers/base.rb, line 26 def hosts @hosts ||= self.class.hosts end
path()
click to toggle source
# File lib/synapse/rails/providers/base.rb, line 23 def path [base_path,::Synapse::Tenancy.customer,service,function,"services"].join("/") end
port()
click to toggle source
# File lib/synapse/rails/providers/base.rb, line 64 def port @haproxy[:port] end
service()
click to toggle source
# File lib/synapse/rails/providers/base.rb, line 58 def service self.class.service end
service_name()
click to toggle source
# File lib/synapse/rails/providers/base.rb, line 55 def service_name [service,function].join("_") end
synapse()
click to toggle source
# File lib/synapse/rails/providers/base.rb, line 43 def synapse { default_servers:default_servers, discovery: discovery, haproxy: haproxy, }.with_indifferent_access end
Protected Instance Methods
base_path()
click to toggle source
# File lib/synapse/rails/providers/base.rb, line 71 def base_path self.class.base_path end
method()
click to toggle source
# File lib/synapse/rails/providers/base.rb, line 68 def method "zookeeper" end