MCPcopy
hub / github.com/socketio/socket.io / close

Method close

packages/socket.io/lib/index.ts:822–851  ·  packages/socket.io/lib/index.ts::Server.close

* Closes server connection * * @param [fn] optional, called as `fn([err])` on error OR all conns closed

(fn?: (err?: Error) => void)

Source from the content-addressed store, hash-verified

820 * @param [fn] optional, called as `fn([err])` on error OR all conns closed
821 */
822 public async close(fn?: (err?: Error) => void): Promise<void> {
823 await Promise.allSettled(
824 [...this._nsps.values()].map(async (nsp) => {
825 nsp.sockets.forEach((socket) => {
826 socket._onclose(class="st">"server shutting down");
827 });
828
829 await nsp.adapter.close();
830 }),
831 );
832
833 this.engine.close();
834
835 class="cm">// restore the Adapter prototype, when the Socket.IO server was attached to a uWebSockets.js server
836 restoreAdapter();
837
838 if (this.httpServer) {
839 return new Promise<void>((resolve) => {
840 this.httpServer.close((err) => {
841 fn && fn(err);
842 if (err) {
843 debug(class="st">"server was not running");
844 }
845 resolve();
846 });
847 });
848 } else {
849 fn && fn();
850 }
851 }
852
853 /**
854 * Registers a middleware, which is a function that gets executed for every incoming {@link Socket}.

Callers 15

initFunction · 0.95
createChildMethod · 0.45
utility-methods.tsFile · 0.45
close.tsFile · 0.45
socket.tsFile · 0.45
middleware.tsFile · 0.45
uws.tsFile · 0.45
namespaces.tsFile · 0.45
server-close.tsFile · 0.45
successFunction · 0.45

Calls 4

restoreAdapterFunction · 0.90
fnFunction · 0.85
debugFunction · 0.85
_oncloseMethod · 0.80

Tested by

no test coverage detected