File indexing completed on 2024-05-05 16:07:05
0001 /* 0002 SPDX-FileCopyrightText: 2010 Grégory Oestreicher <greg@kamago.net> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #ifndef KDAV_DAVMULTIGETPROTOCOL_H 0008 #define KDAV_DAVMULTIGETPROTOCOL_H 0009 0010 #include "kdav_export.h" 0011 0012 #include "davprotocolbase_p.h" 0013 0014 namespace KDAV 0015 { 0016 /** 0017 * @short Base class for protocols that implement MULTIGET capabilities 0018 */ 0019 class DavMultigetProtocol : public DavProtocolBase 0020 { 0021 public: 0022 /** 0023 * Destroys the DAV protocol 0024 */ 0025 ~DavMultigetProtocol() override; 0026 0027 /** 0028 * Returns the XML document that represents a MULTIGET DAV query to 0029 * list all DAV resources with the given @p urls. 0030 */ 0031 virtual XMLQueryBuilder::Ptr itemsReportQuery(const QStringList &urls) const = 0; 0032 0033 /** 0034 * Returns the namespace used by protocol-specific elements found in responses. 0035 */ 0036 virtual QString responseNamespace() const = 0; 0037 0038 /** 0039 * Returns the tag name of data elements found in responses. 0040 */ 0041 virtual QString dataTagName() const = 0; 0042 }; 0043 } 0044 0045 #endif