class EZMQ::Client

Request socket that sends messages and receives replies.

Public Class Methods

new(mode = :connect, **options) click to toggle source

Creates a new Client socket.

@param [:bind, :connect] mode (:connect) a mode for the socket. @param [Hash] options optional parameters. @see EZMQ::Socket EZMQ::Socket for optional parameters.

@return [Client] a new instance of Client.

Calls superclass method EZMQ::Socket::new
# File lib/ezmq/request.rb, line 15
def initialize(mode = :connect, **options)
  super mode, ZMQ::REQ, options
end

Public Instance Methods

request(message, **options) { |receive options| ... } click to toggle source

Sends a message and waits to receive a response.

@param [String] message the message to send. @param [Hash] options optional parameters. @option options [lambda] encode how to encode the message. @option options [lambda] decode how to decode the message.

@return [void] the decoded response message.

# File lib/ezmq/request.rb, line 28
def request(message, **options)
  send message, options
  if block_given?
    yield receive options
  else
    receive options
  end
end