QAbstractFileEngine: remove member FileTime and use QFile::FileTime

This is probably a remnant from when QAbstractFileEngine was public API
since it's been changed to private API, just use QFile::FileTime.

Change-Id: I60d3d4ff811f95434b81d5ca115f5d43cfff8b15
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
(cherry picked from commit fd295f4bf6002b499f1f238efa5a7c8d9c90be39)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
Ahmad Samir 2024-02-12 00:31:27 +02:00 committed by Qt Cherry-pick Bot
parent 1e3c0e4395
commit 22d1a437cb
18 changed files with 53 additions and 87 deletions

View File

@ -288,20 +288,6 @@ QAbstractFileEngine *QAbstractFileEngine::create(const QString &fileName)
\sa fileFlags(), setFileName() \sa fileFlags(), setFileName()
*/ */
/*!
\enum QAbstractFileEngine::FileTime
These are used by the fileTime() function.
\value BirthTime When the file was born (created).
\value MetadataChangeTime When the file's metadata was last changed.
\value ModificationTime When the file was most recently modified.
\value AccessTime When the file was most recently accessed (e.g.
read or written to).
\sa setFileName()
*/
/*! /*!
\enum QAbstractFileEngine::FileOwner \enum QAbstractFileEngine::FileOwner
@ -695,7 +681,7 @@ QString QAbstractFileEngine::owner(FileOwner owner) const
\sa fileTime() \sa fileTime()
*/ */
bool QAbstractFileEngine::setFileTime(const QDateTime &newDate, FileTime time) bool QAbstractFileEngine::setFileTime(const QDateTime &newDate, QFile::FileTime time)
{ {
Q_UNUSED(newDate); Q_UNUSED(newDate);
Q_UNUSED(time); Q_UNUSED(time);
@ -712,7 +698,7 @@ bool QAbstractFileEngine::setFileTime(const QDateTime &newDate, FileTime time)
\sa setFileName(), QDateTime, QDateTime::isValid(), FileTime \sa setFileName(), QDateTime, QDateTime::isValid(), FileTime
*/ */
QDateTime QAbstractFileEngine::fileTime(FileTime time) const QDateTime QAbstractFileEngine::fileTime(QFile::FileTime time) const
{ {
Q_UNUSED(time); Q_UNUSED(time);
return QDateTime(); return QDateTime();

View File

@ -80,12 +80,7 @@ public:
OwnerUser, OwnerUser,
OwnerGroup OwnerGroup
}; };
enum FileTime {
AccessTime,
BirthTime,
MetadataChangeTime,
ModificationTime
};
virtual ~QAbstractFileEngine(); virtual ~QAbstractFileEngine();
@ -116,8 +111,8 @@ public:
virtual QString fileName(FileName file=DefaultName) const; virtual QString fileName(FileName file=DefaultName) const;
virtual uint ownerId(FileOwner) const; virtual uint ownerId(FileOwner) const;
virtual QString owner(FileOwner) const; virtual QString owner(FileOwner) const;
virtual bool setFileTime(const QDateTime &newDate, FileTime time); virtual bool setFileTime(const QDateTime &newDate, QFile::FileTime time);
virtual QDateTime fileTime(FileTime time) const; virtual QDateTime fileTime(QFile::FileTime time) const;
virtual void setFileName(const QString &file); virtual void setFileName(const QString &file);
virtual int handle() const; virtual int handle() const;
virtual bool cloneTo(QAbstractFileEngine *target); virtual bool cloneTo(QAbstractFileEngine *target);

View File

@ -734,15 +734,6 @@ bool QFileDevice::unmap(uchar *address)
\sa setFileTime(), fileTime(), QFileInfo::fileTime() \sa setFileTime(), fileTime(), QFileInfo::fileTime()
*/ */
static inline QAbstractFileEngine::FileTime FileDeviceTimeToAbstractFileEngineTime(QFileDevice::FileTime time)
{
static_assert(int(QFileDevice::FileAccessTime) == int(QAbstractFileEngine::AccessTime));
static_assert(int(QFileDevice::FileBirthTime) == int(QAbstractFileEngine::BirthTime));
static_assert(int(QFileDevice::FileMetadataChangeTime) == int(QAbstractFileEngine::MetadataChangeTime));
static_assert(int(QFileDevice::FileModificationTime) == int(QAbstractFileEngine::ModificationTime));
return QAbstractFileEngine::FileTime(time);
}
/*! /*!
\since 5.10 \since 5.10
Returns the file time specified by \a time. Returns the file time specified by \a time.
@ -756,7 +747,7 @@ QDateTime QFileDevice::fileTime(QFileDevice::FileTime time) const
Q_D(const QFileDevice); Q_D(const QFileDevice);
if (d->engine()) if (d->engine())
return d->engine()->fileTime(FileDeviceTimeToAbstractFileEngineTime(time)); return d->engine()->fileTime(time);
return QDateTime(); return QDateTime();
} }
@ -779,7 +770,7 @@ bool QFileDevice::setFileTime(const QDateTime &newDate, QFileDevice::FileTime fi
return false; return false;
} }
if (!d->fileEngine->setFileTime(newDate, FileDeviceTimeToAbstractFileEngineTime(fileTime))) { if (!d->fileEngine->setFileTime(newDate, fileTime)) {
d->setError(d->fileEngine->error(), d->fileEngine->errorString()); d->setError(d->fileEngine->error(), d->fileEngine->errorString());
return false; return false;
} }

View File

@ -157,7 +157,7 @@ uint QFileInfoPrivate::getFileFlags(QAbstractFileEngine::FileFlags request) cons
return fileFlags & request.toInt(); return fileFlags & request.toInt();
} }
QDateTime &QFileInfoPrivate::getFileTime(QAbstractFileEngine::FileTime request) const QDateTime &QFileInfoPrivate::getFileTime(QFile::FileTime request) const
{ {
Q_ASSERT(fileEngine); // should never be called when using the native FS Q_ASSERT(fileEngine); // should never be called when using the native FS
if (!cache_enabled) if (!cache_enabled)
@ -165,16 +165,16 @@ QDateTime &QFileInfoPrivate::getFileTime(QAbstractFileEngine::FileTime request)
uint cf = 0; uint cf = 0;
switch (request) { switch (request) {
case QAbstractFileEngine::AccessTime: case QFile::FileAccessTime:
cf = CachedATime; cf = CachedATime;
break; break;
case QAbstractFileEngine::BirthTime: case QFile::FileBirthTime:
cf = CachedBTime; cf = CachedBTime;
break; break;
case QAbstractFileEngine::MetadataChangeTime: case QFile::FileMetadataChangeTime:
cf = CachedMCTime; cf = CachedMCTime;
break; break;
case QAbstractFileEngine::ModificationTime: case QFile::FileModificationTime:
cf = CachedMTime; cf = CachedMTime;
break; break;
} }
@ -1666,13 +1666,7 @@ QDateTime QFileInfo::fileTime(QFile::FileTime time) const {
*/ */
QDateTime QFileInfo::fileTime(QFile::FileTime time, const QTimeZone &tz) const QDateTime QFileInfo::fileTime(QFile::FileTime time, const QTimeZone &tz) const
{ {
static_assert(int(QFile::FileAccessTime) == int(QAbstractFileEngine::AccessTime));
static_assert(int(QFile::FileBirthTime) == int(QAbstractFileEngine::BirthTime));
static_assert(int(QFile::FileMetadataChangeTime) == int(QAbstractFileEngine::MetadataChangeTime));
static_assert(int(QFile::FileModificationTime) == int(QAbstractFileEngine::ModificationTime));
Q_D(const QFileInfo); Q_D(const QFileInfo);
auto fetime = QAbstractFileEngine::FileTime(time);
QFileSystemMetaData::MetaDataFlags flag; QFileSystemMetaData::MetaDataFlags flag;
switch (time) { switch (time) {
case QFile::FileAccessTime: case QFile::FileAccessTime:
@ -1689,8 +1683,8 @@ QDateTime QFileInfo::fileTime(QFile::FileTime time, const QTimeZone &tz) const
break; break;
} }
auto fsLambda = [d, fetime]() { return d->metaData.fileTime(fetime); }; auto fsLambda = [d, time]() { return d->metaData.fileTime(time); };
auto engineLambda = [d, fetime]() { return d->getFileTime(fetime); }; auto engineLambda = [d, time]() { return d->getFileTime(time); };
const QDateTime dt = d->checkAttribute<QDateTime>(flag, fsLambda, engineLambda); const QDateTime dt = d->checkAttribute<QDateTime>(flag, fsLambda, engineLambda);
return dt.toTimeZone(tz); return dt.toTimeZone(tz);
} }

View File

@ -122,7 +122,7 @@ public:
} }
uint getFileFlags(QAbstractFileEngine::FileFlags) const; uint getFileFlags(QAbstractFileEngine::FileFlags) const;
QDateTime &getFileTime(QAbstractFileEngine::FileTime) const; QDateTime &getFileTime(QFile::FileTime) const;
QString getFileName(QAbstractFileEngine::FileName) const; QString getFileName(QAbstractFileEngine::FileName) const;
QString getFileOwner(QAbstractFileEngine::FileOwner own) const; QString getFileOwner(QAbstractFileEngine::FileOwner own) const;
@ -133,7 +133,7 @@ public:
mutable QString fileNames[QAbstractFileEngine::NFileNames]; mutable QString fileNames[QAbstractFileEngine::NFileNames];
mutable QString fileOwners[2]; // QAbstractFileEngine::FileOwner: OwnerUser and OwnerGroup mutable QString fileOwners[2]; // QAbstractFileEngine::FileOwner: OwnerUser and OwnerGroup
mutable QDateTime fileTimes[4]; // QAbstractFileEngine::FileTime: BirthTime, MetadataChangeTime, ModificationTime, AccessTime mutable QDateTime fileTimes[4]; // QFile::FileTime: FileBirthTime, FileMetadataChangeTime, FileModificationTime, FileAccessTime
mutable uint cachedFlags : 30; mutable uint cachedFlags : 30;
bool const isDefaultConstructed : 1; // QFileInfo is a default constructed instance bool const isDefaultConstructed : 1; // QFileInfo is a default constructed instance

View File

@ -94,7 +94,7 @@ public:
static bool fillMetaData(int fd, QFileSystemMetaData &data); // what = PosixStatFlags static bool fillMetaData(int fd, QFileSystemMetaData &data); // what = PosixStatFlags
static QByteArray id(int fd); static QByteArray id(int fd);
static bool setFileTime(int fd, const QDateTime &newDate, static bool setFileTime(int fd, const QDateTime &newDate,
QAbstractFileEngine::FileTime whatTime, QSystemError &error); QFile::FileTime whatTime, QSystemError &error);
static bool setPermissions(int fd, QFile::Permissions permissions, QSystemError &error, static bool setPermissions(int fd, QFile::Permissions permissions, QSystemError &error,
QFileSystemMetaData *data = nullptr); QFileSystemMetaData *data = nullptr);
#endif #endif
@ -109,7 +109,7 @@ public:
QFileSystemMetaData::MetaDataFlags what); QFileSystemMetaData::MetaDataFlags what);
static QByteArray id(HANDLE fHandle); static QByteArray id(HANDLE fHandle);
static bool setFileTime(HANDLE fHandle, const QDateTime &newDate, static bool setFileTime(HANDLE fHandle, const QDateTime &newDate,
QAbstractFileEngine::FileTime whatTime, QSystemError &error); QFile::FileTime whatTime, QSystemError &error);
static QString owner(const QFileSystemEntry &entry, QAbstractFileEngine::FileOwner own); static QString owner(const QFileSystemEntry &entry, QAbstractFileEngine::FileOwner own);
static QString nativeAbsoluteFilePath(const QString &path); static QString nativeAbsoluteFilePath(const QString &path);
static bool isDirPath(const QString &path, bool *existed); static bool isDirPath(const QString &path, bool *existed);
@ -136,7 +136,7 @@ public:
// unused, therefore not implemented // unused, therefore not implemented
static bool setFileTime(const QFileSystemEntry &entry, const QDateTime &newDate, static bool setFileTime(const QFileSystemEntry &entry, const QDateTime &newDate,
QAbstractFileEngine::FileTime whatTime, QSystemError &error); QFile::FileTime whatTime, QSystemError &error);
static bool setCurrentPath(const QFileSystemEntry &entry); static bool setCurrentPath(const QFileSystemEntry &entry);
static QFileSystemEntry currentPath(); static QFileSystemEntry currentPath();

View File

@ -1688,10 +1688,10 @@ bool QFileSystemEngine::setPermissions(int fd, QFile::Permissions permissions, Q
} }
//static //static
bool QFileSystemEngine::setFileTime(int fd, const QDateTime &newDate, QAbstractFileEngine::FileTime time, QSystemError &error) bool QFileSystemEngine::setFileTime(int fd, const QDateTime &newDate, QFile::FileTime time, QSystemError &error)
{ {
if (!newDate.isValid() || time == QAbstractFileEngine::BirthTime || if (!newDate.isValid()
time == QAbstractFileEngine::MetadataChangeTime) { || time == QFile::FileBirthTime || time == QFile::FileMetadataChangeTime) {
error = QSystemError(EINVAL, QSystemError::StandardLibraryError); error = QSystemError(EINVAL, QSystemError::StandardLibraryError);
return false; return false;
} }
@ -1700,8 +1700,8 @@ bool QFileSystemEngine::setFileTime(int fd, const QDateTime &newDate, QAbstractF
// UTIME_OMIT: leave file timestamp unchanged // UTIME_OMIT: leave file timestamp unchanged
struct timespec ts[2] = {{0, UTIME_OMIT}, {0, UTIME_OMIT}}; struct timespec ts[2] = {{0, UTIME_OMIT}, {0, UTIME_OMIT}};
if (time == QAbstractFileEngine::AccessTime || time == QAbstractFileEngine::ModificationTime) { if (time == QFile::FileAccessTime || time == QFile::FileModificationTime) {
const int idx = time == QAbstractFileEngine::AccessTime ? 0 : 1; const int idx = time == QFile::FileAccessTime ? 0 : 1;
const std::chrono::milliseconds msecs{newDate.toMSecsSinceEpoch()}; const std::chrono::milliseconds msecs{newDate.toMSecsSinceEpoch()};
ts[idx] = durationToTimespec(msecs); ts[idx] = durationToTimespec(msecs);
} }

View File

@ -1069,7 +1069,7 @@ QByteArray QFileSystemEngine::id(HANDLE fHandle)
//static //static
bool QFileSystemEngine::setFileTime(HANDLE fHandle, const QDateTime &newDate, bool QFileSystemEngine::setFileTime(HANDLE fHandle, const QDateTime &newDate,
QAbstractFileEngine::FileTime time, QSystemError &error) QFile::FileTime time, QSystemError &error)
{ {
FILETIME fTime; FILETIME fTime;
FILETIME *pLastWrite = nullptr; FILETIME *pLastWrite = nullptr;
@ -1077,15 +1077,15 @@ bool QFileSystemEngine::setFileTime(HANDLE fHandle, const QDateTime &newDate,
FILETIME *pCreationTime = nullptr; FILETIME *pCreationTime = nullptr;
switch (time) { switch (time) {
case QAbstractFileEngine::ModificationTime: case QFile::FileModificationTime:
pLastWrite = &fTime; pLastWrite = &fTime;
break; break;
case QAbstractFileEngine::AccessTime: case QFile::FileAccessTime:
pLastAccess = &fTime; pLastAccess = &fTime;
break; break;
case QAbstractFileEngine::BirthTime: case QFile::FileBirthTime:
pCreationTime = &fTime; pCreationTime = &fTime;
break; break;

View File

@ -186,7 +186,7 @@ public:
QDateTime metadataChangeTime() const; QDateTime metadataChangeTime() const;
QDateTime modificationTime() const; QDateTime modificationTime() const;
QDateTime fileTime(QAbstractFileEngine::FileTime time) const; QDateTime fileTime(QFile::FileTime time) const;
uint userId() const; uint userId() const;
uint groupId() const; uint groupId() const;
uint ownerId(QAbstractFileEngine::FileOwner owner) const; uint ownerId(QAbstractFileEngine::FileOwner owner) const;
@ -243,19 +243,19 @@ inline bool QFileSystemMetaData::isAlias() const { return fal
#endif #endif
#if defined(Q_OS_UNIX) || defined (Q_OS_WIN) #if defined(Q_OS_UNIX) || defined (Q_OS_WIN)
inline QDateTime QFileSystemMetaData::fileTime(QAbstractFileEngine::FileTime time) const inline QDateTime QFileSystemMetaData::fileTime(QFile::FileTime time) const
{ {
switch (time) { switch (time) {
case QAbstractFileEngine::ModificationTime: case QFile::FileModificationTime:
return modificationTime(); return modificationTime();
case QAbstractFileEngine::AccessTime: case QFile::FileAccessTime:
return accessTime(); return accessTime();
case QAbstractFileEngine::BirthTime: case QFile::FileBirthTime:
return birthTime(); return birthTime();
case QAbstractFileEngine::MetadataChangeTime: case QFile::FileMetadataChangeTime:
return metadataChangeTime(); return metadataChangeTime();
} }

View File

@ -521,11 +521,11 @@ bool QFSFileEngine::seek(qint64 pos)
/*! /*!
\reimp \reimp
*/ */
QDateTime QFSFileEngine::fileTime(FileTime time) const QDateTime QFSFileEngine::fileTime(QFile::FileTime time) const
{ {
Q_D(const QFSFileEngine); Q_D(const QFSFileEngine);
if (time == AccessTime) { if (time == QFile::FileAccessTime) {
// always refresh for the access time // always refresh for the access time
d->metaData.clearFlags(QFileSystemMetaData::AccessTime); d->metaData.clearFlags(QFileSystemMetaData::AccessTime);
} }
@ -906,7 +906,7 @@ bool QFSFileEngine::supportsExtension(Extension extension) const
\reimp \reimp
*/ */
/*! \fn bool QFSFileEngine::setFileTime(const QDateTime &newDate, QAbstractFileEngine::FileTime time) /*! \fn bool QFSFileEngine::setFileTime(const QDateTime &newDate, QFile::FileTime time)
\reimp \reimp
*/ */

View File

@ -76,8 +76,8 @@ public:
QString fileName(FileName file) const override; QString fileName(FileName file) const override;
uint ownerId(FileOwner) const override; uint ownerId(FileOwner) const override;
QString owner(FileOwner) const override; QString owner(FileOwner) const override;
bool setFileTime(const QDateTime &newDate, FileTime time) override; bool setFileTime(const QDateTime &newDate, QFile::FileTime time) override;
QDateTime fileTime(FileTime time) const override; QDateTime fileTime(QFile::FileTime time) const override;
void setFileName(const QString &file) override; void setFileName(const QString &file) override;
int handle() const override; int handle() const override;

View File

@ -525,7 +525,7 @@ bool QFSFileEngine::setSize(qint64 size)
return ret; return ret;
} }
bool QFSFileEngine::setFileTime(const QDateTime &newDate, FileTime time) bool QFSFileEngine::setFileTime(const QDateTime &newDate, QFile::FileTime time)
{ {
Q_D(QFSFileEngine); Q_D(QFSFileEngine);

View File

@ -706,7 +706,7 @@ bool QFSFileEngine::setSize(qint64 size)
return false; return false;
} }
bool QFSFileEngine::setFileTime(const QDateTime &newDate, FileTime time) bool QFSFileEngine::setFileTime(const QDateTime &newDate, QFile::FileTime time)
{ {
Q_D(QFSFileEngine); Q_D(QFSFileEngine);
@ -715,7 +715,7 @@ bool QFSFileEngine::setFileTime(const QDateTime &newDate, FileTime time)
return false; return false;
} }
if (!newDate.isValid() || time == QAbstractFileEngine::MetadataChangeTime) { if (!newDate.isValid() || time == QFile::FileMetadataChangeTime) {
setError(QFile::UnspecifiedError, qt_error_string(ERROR_INVALID_PARAMETER)); setError(QFile::UnspecifiedError, qt_error_string(ERROR_INVALID_PARAMETER));
return false; return false;
} }

View File

@ -1523,10 +1523,10 @@ uint QResourceFileEngine::ownerId(FileOwner) const
return nobodyID; return nobodyID;
} }
QDateTime QResourceFileEngine::fileTime(FileTime time) const QDateTime QResourceFileEngine::fileTime(QFile::FileTime time) const
{ {
Q_D(const QResourceFileEngine); Q_D(const QResourceFileEngine);
if (time == ModificationTime) if (time == QFile::FileModificationTime)
return d->resource.lastModified(); return d->resource.lastModified();
return QDateTime(); return QDateTime();
} }

View File

@ -47,7 +47,7 @@ public:
uint ownerId(FileOwner) const override; uint ownerId(FileOwner) const override;
QDateTime fileTime(FileTime time) const override; QDateTime fileTime(QFile::FileTime time) const override;
Iterator *beginEntryList(QDir::Filters filters, const QStringList &filterNames) override; Iterator *beginEntryList(QDir::Filters filters, const QStringList &filterNames) override;
Iterator *endEntryList() override; Iterator *endEntryList() override;

View File

@ -194,10 +194,10 @@ QByteArray AndroidContentFileEngine::id() const
return m_documentFile->id().toUtf8(); return m_documentFile->id().toUtf8();
} }
QDateTime AndroidContentFileEngine::fileTime(FileTime time) const QDateTime AndroidContentFileEngine::fileTime(QFile::FileTime time) const
{ {
switch (time) { switch (time) {
case FileTime::ModificationTime: case QFile::FileModificationTime:
return m_documentFile->lastModified(); return m_documentFile->lastModified();
break; break;
default: default:

View File

@ -27,7 +27,7 @@ public:
bool rmdir(const QString &dirName, bool recurseParentDirectories) const override; bool rmdir(const QString &dirName, bool recurseParentDirectories) const override;
QByteArray id() const override; QByteArray id() const override;
bool caseSensitive() const override { return true; } bool caseSensitive() const override { return true; }
QDateTime fileTime(FileTime time) const override; QDateTime fileTime(QFile::FileTime time) const override;
FileFlags fileFlags(FileFlags type = FileInfoAll) const override; FileFlags fileFlags(FileFlags type = FileInfoAll) const override;
QString fileName(FileName file = DefaultName) const override; QString fileName(FileName file = DefaultName) const override;
QAbstractFileEngine::Iterator *beginEntryList(QDir::Filters filters, const QStringList &filterNames) override; QAbstractFileEngine::Iterator *beginEntryList(QDir::Filters filters, const QStringList &filterNames) override;

View File

@ -285,19 +285,19 @@ public:
return QString(); return QString();
} }
QDateTime fileTime(FileTime time) const override QDateTime fileTime(QFile::FileTime time) const override
{ {
QSharedPointer<File> file = resolveFile(false); QSharedPointer<File> file = resolveFile(false);
if (file) { if (file) {
QMutexLocker lock(&file->mutex); QMutexLocker lock(&file->mutex);
switch (time) { switch (time) {
case BirthTime: case QFile::FileBirthTime:
return file->birth; return file->birth;
case MetadataChangeTime: case QFile::FileMetadataChangeTime:
return file->change; return file->change;
case ModificationTime: case QFile::FileModificationTime:
return file->modification; return file->modification;
case AccessTime: case QFile::FileAccessTime:
return file->access; return file->access;
} }
} }