diffusion
Version:
Diffusion JavaScript client
27 lines (22 loc) • 714 B
JavaScript
/*eslint valid-jsdoc: "off"*/
var ConnectionActivityMonitor = require('./connection-activity-monitor');
var pingTimeoutFactor = 2;
var noop = {
onSystemPing: function () {},
shutdown: function () {}
};
/**
* Factory for connection activity monitors.
* @param connection The connection to be monitored
* @param response The new connection response
*/
function connectionActivityMonitorFactory(connection, response) {
if (response.systemPingPeriod > 0) {
var pingTimeout = response.systemPingPeriod * pingTimeoutFactor;
return new ConnectionActivityMonitor(pingTimeout, connection);
}
else {
return noop;
}
}
module.exports = connectionActivityMonitorFactory;