1
0
Fork 0
mirror of https://github.com/openstf/stf synced 2025-10-04 10:19:30 +02:00

Rename coordinator -> processor.

This commit is contained in:
Simo Kinnunen 2014-01-29 21:05:28 +09:00
parent 6ab252857f
commit c859ff0530
2 changed files with 10 additions and 10 deletions

77
lib/roles/processor.js Normal file
View file

@ -0,0 +1,77 @@
var zmq = require('zmq')
var logger = require('../util/logger')
var wire = require('../wire')
var wireutil = require('../util/wireutil')(wire)
var dbapi = require('../db/api')
module.exports = function(options) {
var log = logger.createLogger('processor')
if (options.name) {
logger.setGlobalIdentifier(options.name)
}
// App side
var appDealer = zmq.socket('dealer')
options.endpoints.appDealer.forEach(function(endpoint) {
log.info('App dealer connected to %s', endpoint)
appDealer.connect(endpoint)
})
appDealer.on('message', function(channel, data) {
devDealer.send([channel, data])
})
// Device side
var devDealer = zmq.socket('dealer')
options.endpoints.devDealer.forEach(function(endpoint) {
log.info('Device dealer connected to %s', endpoint)
devDealer.connect(endpoint)
})
devDealer.on('message', function(channel, data) {
var wrapper = wire.Envelope.decode(data)
switch (wrapper.type) {
case wire.MessageType.JOIN_GROUP:
var message = wire.JoinGroupMessage.decode(wrapper.message)
appDealer.send([channel, data])
break
case wire.MessageType.LEAVE_GROUP:
var message = wire.LeaveGroupMessage.decode(wrapper.message)
appDealer.send([channel, data])
break
case wire.MessageType.DEVICE_LOG:
var message = wire.DeviceLogMessage.decode(wrapper.message)
dbapi.saveDeviceLog(message.serial, message)
break
case wire.MessageType.DEVICE_POKE:
var message = wire.DevicePokeMessage.decode(wrapper.message)
devDealer.send([message.channel, wireutil.makeProbeMessage()])
break
case wire.MessageType.DEVICE_IDENTITY:
var message = wire.DeviceIdentityMessage.decode(wrapper.message)
dbapi.saveDeviceIdentity(message.serial, message)
break
case wire.MessageType.DEVICE_STATUS:
var message = wire.DeviceStatusMessage.decode(wrapper.message)
dbapi.saveDeviceStatus(message.serial, message)
break
case wire.MessageType.DEVICE_PROPERTIES:
var message = wire.DevicePropertiesMessage.decode(wrapper.message)
break
case wire.MessageType.DEVICE_DATA:
var message = wire.DeviceDataMessage.decode(wrapper.message)
appDealer.send([channel, data])
break
case wire.MessageType.DEVICE_DONE:
var message = wire.DeviceDoneMessage.decode(wrapper.message)
appDealer.send([channel, data])
break
case wire.MessageType.DEVICE_FAIL:
var message = wire.DeviceFailMessage.decode(wrapper.message)
appDealer.send([channel, data])
break
}
})
}