Class: Protobuf::Rpc::ZmqRunner

Inherits:
Object
  • Object
show all
Includes:
Logging
Defined in:
lib/protobuf/rpc/servers/zmq_runner.rb

Instance Method Summary collapse

Methods included from Logging

initialize_logger, #log_exception, #log_signature, #logger, #sign_message

Constructor Details

#initialize(options) ⇒ ZmqRunner

Returns a new instance of ZmqRunner.



9
10
11
12
13
14
15
16
17
18
# File 'lib/protobuf/rpc/servers/zmq_runner.rb', line 9

def initialize(options)
  @options = case
             when options.is_a?(OpenStruct) then
               options.marshal_dump
             when options.respond_to?(:to_hash) then
               options.to_hash.symbolize_keys
             else
               fail "Cannot parser Zmq Server - server options"
             end
end

Instance Method Details

#runObject



20
21
22
23
24
25
26
# File 'lib/protobuf/rpc/servers/zmq_runner.rb', line 20

def run
  @server = ::Protobuf::Rpc::Zmq::Server.new(@options)
  register_signals
  @server.run do
    yield if block_given?
  end
end

#running?Boolean

Returns:

  • (Boolean)


28
29
30
# File 'lib/protobuf/rpc/servers/zmq_runner.rb', line 28

def running?
  @server.try :running?
end

#stopObject



32
33
34
# File 'lib/protobuf/rpc/servers/zmq_runner.rb', line 32

def stop
  @server.try :stop
end