KVIrc
4.9.2
DeveloperAPIs
|
Class to enqueue commands to IRC server. More...
#include <KviIrcConnectionRequestQueue.h>
Public Member Functions | |
void | clearAll () |
Clears the queue stack. More... | |
void | dequeueChannel (KviChannelWindow *pChan) |
Removes the channel from the queue stack. More... | |
void | enqueueChannel (KviChannelWindow *pChan) |
Enqueues the channel in the queue stack. More... | |
bool | isQueued (KviChannelWindow *pChan) |
Checks if a channel is in the queue stack. More... | |
KviIrcConnectionRequestQueue () | |
Constructs the request queue objects. More... | |
virtual | ~KviIrcConnectionRequestQueue () |
Destroys the request queue objects. More... | |
Protected Types | |
enum | RequestTypes { Mode = 0, BanException = 1, Invite = 2, Who = 3, QuietBan = 4, Ban = 5 } |
Protected Attributes | |
QQueue< KviChannelWindow * > | m_channels |
RequestTypes | m_curType |
QTimer | m_timer |
Private Slots | |
void | timerSlot () |
Performs time based requests. More... | |
Class to enqueue commands to IRC server.
This class is designed to delay channel requests like MODE and WHO to avoid excess floods on some servers
|
protected |
KviIrcConnectionRequestQueue::KviIrcConnectionRequestQueue | ( | ) |
Constructs the request queue objects.
References connect(), m_curType, m_timer, Mode, and timerSlot().
|
virtual |
Destroys the request queue objects.
References m_timer, and timerSlot().
void KviIrcConnectionRequestQueue::clearAll | ( | ) |
Clears the queue stack.
References m_channels, m_curType, m_timer, and Mode.
Referenced by KviIrcContext::connectionTerminated(), and timerSlot().
void KviIrcConnectionRequestQueue::dequeueChannel | ( | KviChannelWindow * | pChan | ) |
Removes the channel from the queue stack.
pChan | The channel to dequeue |
References m_channels, and m_timer.
Referenced by KviIrcConnection::unregisterChannel().
void KviIrcConnectionRequestQueue::enqueueChannel | ( | KviChannelWindow * | pChan | ) |
Enqueues the channel in the queue stack.
pChan | The channel to enqueue |
References KVI_OPTION_UINT, KviOption_uintOnJoinRequestsDelay, m_channels, and m_timer.
Referenced by KviIrcServerParser::parseLiteralJoin().
|
inline |
Checks if a channel is in the queue stack.
pChan | The channel to check |
|
privateslot |
Performs time based requests.
References Ban, BanException, KviChannelWindow::checkChannelSync(), clearAll(), KviWindow::connection(), KviIrcConnection::encodeText(), KviIrcConnectionServerInfo::getNeedsOpToListModeseI(), Invite, KviChannelWindow::isMeOp(), KVI_OPTION_BOOL, kvi_unixTime, KviOption_boolDisableBanExceptionListRequestOnJoin, KviOption_boolDisableBanListRequestOnJoin, KviOption_boolDisableInviteListRequestOnJoin, KviOption_boolDisableQuietBanListRequestOnJoin, KviOption_boolDisableWhoRequestOnJoin, KviLagMeter::lagCheckRegister(), KviIrcConnection::lagMeter(), m_channels, m_curType, m_timer, Mode, KviCString::ptr(), QuietBan, KviIrcConnection::sendFmtData(), KviChannelWindow::serverInfo(), KviIrcConnectionStateData::setLastSentChannelWhoRequest(), KviChannelWindow::setSentListRequest(), KviChannelWindow::setSentWhoRequest(), KviCString::sprintf(), KviIrcConnection::stateData(), KviIrcConnectionServerInfo::supportedListModes(), KviIrcConnectionServerInfo::supportsWhox(), KviChannelWindow::target(), and Who.
Referenced by KviIrcConnectionRequestQueue(), and ~KviIrcConnectionRequestQueue().
|
protected |
Referenced by clearAll(), dequeueChannel(), enqueueChannel(), and timerSlot().
|
protected |
Referenced by clearAll(), KviIrcConnectionRequestQueue(), and timerSlot().
|
protected |
Referenced by clearAll(), dequeueChannel(), enqueueChannel(), KviIrcConnectionRequestQueue(), timerSlot(), and ~KviIrcConnectionRequestQueue().