robotty/dank-twitch-irc

View on GitHub
lib/functionalities/handle-reconnect-message.ts

Summary

Maintainability
A
0 mins
Test Coverage
F
57%
import { SingleConnection } from "../client/connection";
import { ConnectionError } from "../client/errors";

export class ReconnectError extends ConnectionError {
  public constructor(message: string, cause?: Error) {
    super(message, cause);
  }
}

export function handleReconnectMessage(conn: SingleConnection): void {
  conn.on("RECONNECT", (msg) => {
    process.nextTick(() => {
      conn.emitError(
        new ReconnectError(
          "RECONNECT command received by server: " + msg.rawSource
        )
      );
    });
  });
}