summaryrefslogtreecommitdiff
path: root/ucb/source/ucp/webdav-curl/webdavdatasupplier.hxx
diff options
context:
space:
mode:
authorNoel Grandin <noelgrandin@gmail.com>2021-12-23 17:20:32 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2021-12-27 17:04:51 +0100
commitc350c74dbd7783a5efd5ba04e937001670101243 (patch)
treed047ec1baf50ba8036f42bd798624dcd66740b60 /ucb/source/ucp/webdav-curl/webdavdatasupplier.hxx
parent1308bcda6fa8d682af01b6342deb0ec47ff314c0 (diff)
remove pImpl from DataSupplier
Change-Id: I0fe2d3d83c1d45abc90d22406265a034140bee02 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127566 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'ucb/source/ucp/webdav-curl/webdavdatasupplier.hxx')
-rw-r--r--ucb/source/ucp/webdav-curl/webdavdatasupplier.hxx27
1 files changed, 23 insertions, 4 deletions
diff --git a/ucb/source/ucp/webdav-curl/webdavdatasupplier.hxx b/ucb/source/ucp/webdav-curl/webdavdatasupplier.hxx
index de527d8346bb..e1f2efba91c8 100644
--- a/ucb/source/ucp/webdav-curl/webdavdatasupplier.hxx
+++ b/ucb/source/ucp/webdav-curl/webdavdatasupplier.hxx
@@ -22,6 +22,7 @@
#include <sal/config.h>
+#include "ContentProperties.hxx"
#include <memory>
#include <rtl/ref.hxx>
#include <ucbhelper/resultset.hxx>
@@ -31,13 +32,9 @@ namespace http_dav_ucp {
struct DataSupplier_Impl;
class Content;
struct DAVResource;
-class ContentProperties;
class DataSupplier : public ucbhelper::ResultSetDataSupplier
{
- std::unique_ptr<DataSupplier_Impl> m_pImpl;
-
-private:
bool getData();
public:
@@ -66,6 +63,28 @@ public:
virtual void close() override;
virtual void validate() override;
+
+private:
+ struct ResultListEntry
+ {
+ OUString aId;
+ css::uno::Reference< css::ucb::XContentIdentifier > xId;
+ css::uno::Reference< css::ucb::XContent > xContent;
+ css::uno::Reference< css::sdbc::XRow > xRow;
+ std::unique_ptr<ContentProperties> pData;
+
+ explicit ResultListEntry( std::unique_ptr<ContentProperties> && pEntry ) : pData( std::move(pEntry) ) {}
+ };
+
+ typedef std::vector<std::unique_ptr<ResultListEntry>> ResultList;
+
+ osl::Mutex m_aMutex;
+ ResultList m_Results;
+ rtl::Reference< Content > m_xContent;
+ css::uno::Reference< css::uno::XComponentContext > m_xContext;
+ sal_Int32 m_nOpenMode;
+ bool m_bCountFinal;
+ bool m_bThrowException;
};
}