| 1 | /* |
| 2 | SPDX-FileCopyrightText: 2010 Grégory Oestreicher <greg@kamago.net> |
| 3 | |
| 4 | SPDX-License-Identifier: LGPL-2.0-or-later |
| 5 | */ |
| 6 | |
| 7 | #ifndef KDAV_DAVMULTIGETPROTOCOL_H |
| 8 | #define KDAV_DAVMULTIGETPROTOCOL_H |
| 9 | |
| 10 | #include "kdav_export.h" |
| 11 | |
| 12 | #include "davprotocolbase_p.h" |
| 13 | |
| 14 | namespace KDAV |
| 15 | { |
| 16 | /*! |
| 17 | * \internal |
| 18 | * \brief Base class for protocols that implement MULTIGET capabilities |
| 19 | */ |
| 20 | class DavMultigetProtocol : public DavProtocolBase |
| 21 | { |
| 22 | public: |
| 23 | /*! |
| 24 | * Destroys the DAV protocol |
| 25 | */ |
| 26 | ~DavMultigetProtocol() override; |
| 27 | |
| 28 | /*! |
| 29 | * Returns the XML document that represents a MULTIGET DAV query to |
| 30 | * list all DAV resources with the given \a urls. |
| 31 | */ |
| 32 | virtual XMLQueryBuilder::Ptr itemsReportQuery(const QStringList &urls) const = 0; |
| 33 | |
| 34 | /*! |
| 35 | * Returns the namespace used by protocol-specific elements found in responses. |
| 36 | */ |
| 37 | virtual QString responseNamespace() const = 0; |
| 38 | |
| 39 | /*! |
| 40 | * Returns the tag name of data elements found in responses. |
| 41 | */ |
| 42 | virtual QString dataTagName() const = 0; |
| 43 | }; |
| 44 | } |
| 45 | |
| 46 | #endif |
| 47 | |