class MaZMQ::Proxy
Public Class Methods
new()
click to toggle source
@@id = 0
Calls superclass method
MaZMQ::Proxy::Backend::new
# File lib/ma-zmq/proxy.rb, line 7 def initialize @balancer = MaZMQ::Proxy::Balancer.new # @max_timeouts = 5 # TODO # @max_timeouted = 1 # @max_retries super end
Public Instance Methods
addresses()
click to toggle source
# File lib/ma-zmq/proxy.rb, line 48 def addresses @sockets.collect{|s| s.addresses}.flatten end
close()
click to toggle source
# File lib/ma-zmq/proxy.rb, line 42 def close @sockets.each do |s| s.close end end
connect(protocol, address, port)
click to toggle source
Calls superclass method
MaZMQ::Proxy::Backend#connect
# File lib/ma-zmq/proxy.rb, line 29 def connect(protocol, address, port) return false if addresses.include? "#{protocol}://#{address}:#{port.to_s}" index = super(protocol, address, port) #@balancer.curent refresh ! TODO @balancer.add(index) index end
current_socket()
click to toggle source
# File lib/ma-zmq/proxy.rb, line 52 def current_socket @sockets[@balancer.current] end
disconnect(index)
click to toggle source
Calls superclass method
MaZMQ::Proxy::Backend#disconnect
# File lib/ma-zmq/proxy.rb, line 37 def disconnect(index) @balancer.remove(index) super(index) end
send_string(msg)
click to toggle source
# File lib/ma-zmq/proxy.rb, line 17 def send_string(msg) @current = current_socket return false if @current.is_a? NilClass case @current.state when :idle @current.send_string(msg) else return false end @balancer.next end