Utils: Introduce FilePath::ensureWritableDir()

Combine the test and potential creation in one operation to potentially
reduce the number of remote calls.

Change-Id: I06ffa1256593afec430eb35605ba3b249f1da97c
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
hjk
2021-05-31 18:20:46 +02:00
parent 2672bb2930
commit c2bc7b8d3c
5 changed files with 28 additions and 0 deletions

View File

@@ -73,6 +73,7 @@ public:
std::function<bool(const FilePath &)> isReadableFile;
std::function<bool(const FilePath &)> isReadableDir;
std::function<bool(const FilePath &)> isWritableDir;
std::function<bool(const FilePath &)> ensureWritableDir;
std::function<bool(const FilePath &)> createDir;
std::function<QList<FilePath>(const FilePath &, const QStringList &, QDir::Filters)> dirEntries;
std::function<QByteArray(const FilePath &, int)> fileContents;
@@ -117,6 +118,7 @@ public:
bool isWritablePath() const { return isWritableDir(); } // Remove.
bool isWritableDir() const;
bool ensureWritableDir() const;
bool isExecutableFile() const;
bool isReadableFile() const;
bool isReadableDir() const;