X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fctcphandler.h;h=35847c1f53b2a53d348779f77052bd0905f50cc4;hp=35cab47d89f695dc80bc7e176d24513aba62853b;hb=ac374ec32612798c230d54665f6bce7faf416602;hpb=e008cd12ef319c4b5f9fe5a8cc1524829551771d diff --git a/src/core/ctcphandler.h b/src/core/ctcphandler.h index 35cab47d..35847c1f 100644 --- a/src/core/ctcphandler.h +++ b/src/core/ctcphandler.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-07 by the Quassel IRC Team * + * Copyright (C) 2005-09 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -26,36 +26,39 @@ #include "basichandler.h" +class CoreListIgnoreListManager; + class CtcpHandler : public BasicHandler { Q_OBJECT public: - CtcpHandler(Server *parent = 0); + CtcpHandler(CoreNetwork *parent = 0); enum CtcpType {CtcpQuery, CtcpReply}; - QStringList parse(CtcpType, QString prefix, QString target, QString message); + void parse(Message::Type, const QString &prefix, const QString &target, const QByteArray &message); - QString dequote(QString); - QString XdelimDequote(QString); + QByteArray lowLevelQuote(const QByteArray &); + QByteArray lowLevelDequote(const QByteArray &); + QByteArray xdelimQuote(const QByteArray &); + QByteArray xdelimDequote(const QByteArray &); - QString pack(QString ctcpTag, QString message); - void query(QString bufname, QString ctcpTag, QString message); - void reply(QString bufname, QString ctcpTag, QString message); + QByteArray pack(const QByteArray &ctcpTag, const QByteArray &message); + void query(const QString &bufname, const QString &ctcpTag, const QString &message); + void reply(const QString &bufname, const QString &ctcpTag, const QString &message); public slots: - void handleAction(CtcpType, QString prefix, QString target, QString param); - void handlePing(CtcpType, QString prefix, QString target, QString param); - void handleVersion(CtcpType, QString prefix, QString target, QString param); + void handleAction(CtcpType, const QString &prefix, const QString &target, const QString ¶m); + void handlePing(CtcpType, const QString &prefix, const QString &target, const QString ¶m); + void handleVersion(CtcpType, const QString &prefix, const QString &target, const QString ¶m); - void defaultHandler(QString cmd, CtcpType ctcptype, QString prefix, QString target, QString param); + void defaultHandler(const QString &cmd, CtcpType ctcptype, const QString &prefix, const QString &target, const QString ¶m); private: - QString XDELIM; - QHash ctcpMDequoteHash; - QHash ctcpXDelimDequoteHash; - - + QByteArray XDELIM; + QHash ctcpMDequoteHash; + QHash ctcpXDelimDequoteHash; + CoreIgnoreListManager *_ignoreListManager; };