• Jump To … +
    PorthandlerConnection.coffee ProducerClass.coffee helpers.coffee
  • PorthandlerConnection.coffee

  • ¶
    configloader = require 'omg-configloader'
    sockets = require 'omg-zmqsockets'
    
    porthandlerPort = ->
      zmqconfig = configloader.zmq
      porthandlerConfig = zmqconfig.porthandler
      transport = porthandlerConfig.transport or zmqconfig.standardTransport
      address = porthandlerConfig.address or zmqconfig.standardAddress
      port = porthandlerConfig.rep
      return "#{transport}://#{address}:#{port}"
  • ¶

    receive response from porthandler

    PortHandlerConnection = ->
      requestSocket = new sockets.ConnectedSocket "any", "req", porthandlerPort()
      requestSocket.getPortFor = (name, socketType, cb) ->
        requestSocket.once "message", (port) ->
          cb port
        requestSocket.send [name, socketType]
      return requestSocket
    
    module.exports = PortHandlerConnection