From c04370aa2665f36828bfd4001fec2d2a6cf7b9f9 Mon Sep 17 00:00:00 2001 From: hjk Date: Fri, 17 May 2019 13:36:48 +0200 Subject: [PATCH] Utils: Make FileName::isFileNewerThan a member Easier to discover and more compact in use. Change-Id: I93dae0570a1dfded4d40dd6ae69b99fe82e3788f Reviewed-by: Eike Ziller --- src/libs/utils/fileutils.cpp | 14 +++++++------- src/libs/utils/fileutils.h | 3 ++- src/plugins/remotelinux/abstractpackagingstep.cpp | 4 +--- 3 files changed, 10 insertions(+), 11 deletions(-) diff --git a/src/libs/utils/fileutils.cpp b/src/libs/utils/fileutils.cpp index ec407832fb1..6f449fb79de 100644 --- a/src/libs/utils/fileutils.cpp +++ b/src/libs/utils/fileutils.cpp @@ -189,23 +189,23 @@ bool FileUtils::copyRecursively(const FileName &srcFilePath, const FileName &tgt } /*! - If \a filePath is a directory, the function will recursively check all files and return - true if one of them is newer than \a timeStamp. If \a filePath is a single file, true will + If this is a directory, the function will recursively check all files and return + true if one of them is newer than \a timeStamp. If this is a single file, true will be returned if the file is newer than \a timeStamp. Returns whether at least one file in \a filePath has a newer date than \a timeStamp. */ -bool FileUtils::isFileNewerThan(const FileName &filePath, const QDateTime &timeStamp) +bool FileName::isNewerThan(const QDateTime &timeStamp) const { - QFileInfo fileInfo = filePath.toFileInfo(); + const QFileInfo fileInfo = toFileInfo(); if (!fileInfo.exists() || fileInfo.lastModified() >= timeStamp) return true; if (fileInfo.isDir()) { - const QStringList dirContents = QDir(filePath.toString()) + const QStringList dirContents = QDir(toString()) .entryList(QDir::Files | QDir::Dirs | QDir::NoDotAndDotDot); - foreach (const QString &curFileName, dirContents) { - if (isFileNewerThan(filePath.pathAppended(curFileName), timeStamp)) + for (const QString &curFileName : dirContents) { + if (pathAppended(curFileName).isNewerThan(timeStamp)) return true; } } diff --git a/src/libs/utils/fileutils.h b/src/libs/utils/fileutils.h index e765270b490..cfdbc7d5671 100644 --- a/src/libs/utils/fileutils.h +++ b/src/libs/utils/fileutils.h @@ -97,6 +97,8 @@ public: bool endsWith(const QString &s) const; bool isLocal() const; + bool isNewerThan(const QDateTime &timeStamp) const; + FileName relativeChildPath(const FileName &parent) const; FileName &appendPath(const QString &s); FileName pathAppended(const QString &str) const; @@ -129,7 +131,6 @@ public: static bool copyRecursively( const FileName &srcFilePath, const FileName &tgtFilePath, QString *error = nullptr, const std::function ©Helper = nullptr); - static bool isFileNewerThan(const FileName &filePath, const QDateTime &timeStamp); static FileName resolveSymlinks(const FileName &path); static QString shortNativePath(const FileName &path); static QString fileSystemFriendlyName(const QString &name); diff --git a/src/plugins/remotelinux/abstractpackagingstep.cpp b/src/plugins/remotelinux/abstractpackagingstep.cpp index 75a6fe2fa79..81f692a87f2 100644 --- a/src/plugins/remotelinux/abstractpackagingstep.cpp +++ b/src/plugins/remotelinux/abstractpackagingstep.cpp @@ -114,10 +114,8 @@ bool AbstractPackagingStep::isPackagingNeeded() const const DeploymentData &dd = target()->deploymentData(); for (int i = 0; i < dd.fileCount(); ++i) { - if (Utils::FileUtils::isFileNewerThan(dd.fileAt(i).localFilePath(), - packageInfo.lastModified())) { + if (dd.fileAt(i).localFilePath().isNewerThan(packageInfo.lastModified())) return true; - } } return false;