/***************************************************************************
- * Copyright (C) 2005-09 by the Quassel Project *
+ * Copyright (C) 2005-10 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
#ifndef IRCSERVERHANDLER_H
#define IRCSERVERHANDLER_H
-#include "basichandler.h"
+#include "corebasichandler.h"
#include "netsplit.h"
-class IrcServerHandler : public BasicHandler {
+class IrcServerHandler : public CoreBasicHandler {
Q_OBJECT
public:
void handlePrivmsg(const QString &prefix, const QList<QByteArray> ¶ms);
void handleQuit(const QString &prefix, const QList<QByteArray> ¶ms);
void handleTopic(const QString &prefix, const QList<QByteArray> ¶ms);
-
+ void handleCap(const QString &prefix, const QList<QByteArray> ¶ms); // CAP framework
+ void handleAuthenticate(); // SASL auth - no params
void handle001(const QString &prefix, const QList<QByteArray> ¶ms); // RPL_WELCOME
void handle005(const QString &prefix, const QList<QByteArray> ¶ms); // RPL_ISUPPORT
void handle221(const QString &prefix, const QList<QByteArray> ¶ms); // RPL_UMODEIS
void handle369(const QString &prefix, const QList<QByteArray> ¶ms); // RPL_ENDOFWHOWAS
void handle432(const QString &prefix, const QList<QByteArray> ¶ms); // ERR_ERRONEUSNICKNAME
void handle433(const QString &prefix, const QList<QByteArray> ¶ms); // ERR_NICKNAMEINUSE
+ void handle437(const QString &prefix, const QList<QByteArray> ¶ms); // ERR_UNAVAILRESOURCE
void defaultHandler(QString cmd, const QString &prefix, const QList<QByteArray> ¶ms);
void handleEarlyNetsplitJoin(const QString &channel, const QStringList &users, const QStringList &modes);
+ //! Destroy any existing netsplits
+ /** This slot deletes all netsplit objects
+ * Used to get rid of existing netsplits on network reconnect
+ */
+ void destroyNetsplits();
+
private:
void tryNextNick(const QString &errnick, bool erroneus = false);
bool checkParamCount(const QString &methodName, const QList<QByteArray> ¶ms, int minParams);