Akonadi

tagfetchhandler.cpp
1 /***************************************************************************
2  * SPDX-FileCopyrightText: 2014 Daniel Vr├ítil <[email protected]> *
3  * *
4  * SPDX-License-Identifier: LGPL-2.0-or-later *
5  ***************************************************************************/
6 
7 #include "tagfetchhandler.h"
8 #include "connection.h"
9 #include "tagfetchhelper.h"
10 
11 using namespace Akonadi;
12 using namespace Akonadi::Server;
13 
14 TagFetchHandler::TagFetchHandler(AkonadiServer &akonadi)
15  : Handler(akonadi)
16 {
17 }
18 
19 bool TagFetchHandler::parseStream()
20 {
21  const auto &cmd = Protocol::cmdCast<Protocol::FetchTagsCommand>(m_command);
22 
23  if (!checkScopeConstraints(cmd.scope(), Scope::Uid)) {
24  return failureResponse("Only UID-based TAGFETCH is supported");
25  }
26 
27  TagFetchHelper helper(connection(), cmd.scope(), cmd.fetchScope());
28  if (!helper.fetchTags()) {
29  return failureResponse("Failed to fetch tags");
30  }
31 
32  return successResponse<Protocol::FetchTagsResponse>();
33 }
The handler interfaces describes an entity capable of handling an AkonadiIMAP command.
Definition: handler.h:39
Helper integration between Akonadi and Qt.
This file is part of the KDE documentation.
Documentation copyright © 1996-2022 The KDE developers.
Generated on Thu Jun 30 2022 03:51:47 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.