Akonadi::Server::Handler
#include <handler.h>

Public Member Functions | |
Handler (const Handler &)=delete | |
Handler (Handler &&) noexcept=delete | |
AkonadiServer & | akonadi () const |
bool | checkScopeConstraints (const Scope &scope, int permittedScopes) |
Protocol::CommandPtr | command () const |
Connection * | connection () const |
bool | failureResponse (const char *response) |
bool | failureResponse (const QByteArray &response) |
bool | failureResponse (const QString &response) |
Handler & | operator= (const Handler &)=delete |
Handler & | operator= (Handler &&) noexcept=delete |
virtual bool | parseStream ()=0 |
template<typename T > | |
void | sendResponse () |
template<typename T > | |
void | sendResponse (T &&response) |
void | setCommand (const Protocol::CommandPtr &cmd) |
void | setConnection (Connection *connection) |
void | setTag (quint64 tag) |
DataStore * | storageBackend () const |
template<typename T > | |
bool | successResponse () |
template<typename T > | |
bool | successResponse (T &&response) |
quint64 | tag () const |
Static Public Member Functions | |
static std::unique_ptr< Handler > | findHandlerForCommandAlwaysAllowed (Protocol::Command::Type cmd, AkonadiServer &akonadi) |
static std::unique_ptr< Handler > | findHandlerForCommandAuthenticated (Protocol::Command::Type cmd, AkonadiServer &akonadi) |
static std::unique_ptr< Handler > | findHandlerForCommandNonAuthenticated (Protocol::Command::Type cmd, AkonadiServer &akonadi) |
Protected Member Functions | |
Handler (AkonadiServer &akonadi) | |
Protected Attributes | |
Protocol::CommandPtr | m_command |
Detailed Description
The handler interfaces describes an entity capable of handling an AkonadiIMAP command.
Member Function Documentation
◆ findHandlerForCommandAlwaysAllowed()
|
static |
Find a handler for a command that is always allowed, like LOGOUT.
- Parameters
-
cmd the command string
- Returns
- an instance to the handler. The handler is deleted after
- See also
- handelLine is executed. The caller needs to delete the handler in case an exception is thrown from handelLine.
Definition at line 53 of file handler.cpp.
◆ findHandlerForCommandAuthenticated()
|
static |
Find a handler for a command that is allowed when the client is authenticated, like LIST, FETCH, etc.
- Parameters
-
cmd the command string
- Returns
- an instance to the handler. The handler is deleted after
- See also
- handelLine is executed. The caller needs to delete the handler in case an exception is thrown from handelLine.
Definition at line 62 of file handler.cpp.
◆ findHandlerForCommandNonAuthenticated()
|
static |
Find a handler for a command that is allowed when the client is not yet authenticated, like LOGIN.
- Parameters
-
cmd the command string
- Returns
- an instance to the handler. The handler is deleted after
- See also
- handelLine is executed. The caller needs to delete the handler in case an exception is thrown from handelLine.
Definition at line 43 of file handler.cpp.
◆ parseStream()
|
pure virtual |
Parse and handle the IMAP message using the streaming parser.
The implementation MUST leave the trailing newline character(s) in the stream!
- Returns
- true if parsed successfully, false in case of parse failure
Implemented in Akonadi::Server::ItemModifyHandler, Akonadi::Server::CollectionFetchHandler, Akonadi::Server::ItemCreateHandler, Akonadi::Server::CollectionCopyHandler, Akonadi::Server::SearchHandler, Akonadi::Server::ItemCopyHandler, Akonadi::Server::ItemFetchHandler, Akonadi::Server::RelationFetchHandler, Akonadi::Server::SearchCreateHandler, Akonadi::Server::TagFetchHandler, Akonadi::Server::CollectionStatsFetchHandler, Akonadi::Server::LoginHandler, Akonadi::Server::LogoutHandler, Akonadi::Server::ItemMoveHandler, Akonadi::Server::ItemDeleteHandler, Akonadi::Server::CollectionDeleteHandler, Akonadi::Server::ResourceSelectHandler, Akonadi::Server::CollectionMoveHandler, Akonadi::Server::ItemLinkHandler, Akonadi::Server::CollectionModifyHandler, Akonadi::Server::SearchResultHandler, and Akonadi::Server::TransactionHandler.
◆ setTag()
void Handler::setTag | ( | quint64 | tag | ) |
Set the tag of the command to be processed, and thus of the response generated by this handler.
- Parameters
-
tag The command tag, an alphanumerical string, normally.
Definition at line 179 of file handler.cpp.
◆ tag()
quint64 Handler::tag | ( | ) | const |
The tag of the command associated with this handler.
Definition at line 184 of file handler.cpp.
The documentation for this class was generated from the following files:
Documentation copyright © 1996-2023 The KDE developers.
Generated on Sat Sep 30 2023 04:01:54 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.