integreat-transporter-http
Version:
HTTP transporter for Integreat
17 lines • 686 B
JavaScript
import stopListening from './stopListening.js';
import getHandlersForIncoming from './utils/getHandlersForIncoming.js';
export default (portHandlers) => async function disconnect(connection) {
if (connection) {
const server = connection.server;
if (connection.incoming) {
await stopListening(portHandlers)(connection);
}
const handlerCases = getHandlersForIncoming(portHandlers, connection.incoming);
if (server && (!handlerCases || handlerCases.size === 0)) {
server.removeAllListeners();
server.closeIdleConnections();
server.close();
}
}
};
//# sourceMappingURL=disconnect.js.map