API/api.medcify.app/node_modules/pm2-axon/lib/index.js
2022-09-26 11:41:44 +05:30

45 lines
1.1 KiB
JavaScript

/**
* Constructors.
*/
exports.PubEmitterSocket = require('./sockets/pub-emitter');
exports.SubEmitterSocket = require('./sockets/sub-emitter');
exports.PushSocket = require('./sockets/push');
exports.PullSocket = require('./sockets/pull');
exports.PubSocket = require('./sockets/pub');
exports.SubSocket = require('./sockets/sub');
exports.ReqSocket = require('./sockets/req');
exports.RepSocket = require('./sockets/rep');
exports.Socket = require('./sockets/sock');
/**
* Socket types.
*/
exports.types = {
'pub-emitter': exports.PubEmitterSocket,
'sub-emitter': exports.SubEmitterSocket,
'push': exports.PushSocket,
'pull': exports.PullSocket,
'pub': exports.PubSocket,
'sub': exports.SubSocket,
'req': exports.ReqSocket,
'rep': exports.RepSocket
};
/**
* Return a new socket of the given `type`.
*
* @param {String} type
* @param {Object} options
* @return {Socket}
* @api public
*/
exports.socket = function(type, options){
var fn = exports.types[type];
if (!fn) throw new Error('invalid socket type "' + type + '"');
return new fn(options);
};