class EventStore::Cluster::LeaderStatus::Get
Public Class Methods
build(connect_http=nil)
click to toggle source
# File lib/event_store/cluster/leader_status/get.rb, line 11 def self.build(connect_http=nil) instance = new GossipEndpoint::Get.configure instance, connect_http instance end
call(*arguments)
click to toggle source
# File lib/event_store/cluster/leader_status/get.rb, line 19 def self.call(*arguments) instance = build *arguments instance.() end
Public Instance Methods
call()
click to toggle source
# File lib/event_store/cluster/leader_status/get.rb, line 24 def call logger.trace { "Getting leader" } gossip_response = get_gossip_endpoint.() if gossip_response.nil? logger.info { "Get leader done; EventStore is non-clustered" } return nil end data = Data.new SetAttributes.( data, gossip_response.leader, copy: [ { :external_tcp_ip => :tcp_ip_address }, { :external_tcp_port => :tcp_port }, { :external_http_ip => :http_ip_address }, { :external_http_port => :http_port } ] ) logger.info { "Get leader done (TCP: #{data.tcp_ip_address}:#{data.tcp_port}, HTTP: #{data.http_ip_address}:#{data.http_port})" } data end