Qt 6.x
The Qt SDK
Loading...
Searching...
No Matches
AndroidContentFileEngine Class Reference

#include <androidcontentfileengine.h>

+ Inheritance diagram for AndroidContentFileEngine:
+ Collaboration diagram for AndroidContentFileEngine:

Public Member Functions

 AndroidContentFileEngine (const QString &fileName)
 
bool open (QIODevice::OpenMode openMode, std::optional< QFile::Permissions > permissions) override
 Opens the file in the specified mode.
 
bool close () override
 Closes the file, returning true if successful; otherwise returns false.
 
qint64 size () const override
 Returns the size of the file.
 
bool remove () override
 Requests that the file is deleted from the file system.
 
bool rename (const QString &newName) override
 Requests that the file be renamed to newName in the file system.
 
bool mkdir (const QString &dirName, bool createParentDirectories, std::optional< QFile::Permissions > permissions=std::nullopt) const override
 Requests that the directory dirName be created with the specified permissions.
 
bool rmdir (const QString &dirName, bool recurseParentDirectories) const override
 Requests that the directory dirName is deleted from the file system.
 
QByteArray id () const override
 
bool caseSensitive () const override
 Should return true if the underlying file system is case-sensitive; otherwise return false.
 
QDateTime fileTime (FileTime time) const override
 If time is BirthTime, return when the file was born (created).
 
FileFlags fileFlags (FileFlags type=FileInfoAll) const override
 This function should return the set of OR'd flags that are true for the file engine's file, and that are in the type's OR'd members.
 
QString fileName (FileName file=DefaultName) const override
 Return the file engine's current file name in the format specified by file.
 
QAbstractFileEngine::IteratorbeginEntryList (QDir::Filters filters, const QStringList &filterNames) override
 Returns an instance of a QAbstractFileEngineIterator using filters for entry filtering and filterNames for name filtering.
 
QAbstractFileEngine::IteratorendEntryList () override
 
- Public Member Functions inherited from QFSFileEngine
 QFSFileEngine ()
 Constructs a QFSFileEngine.
 
 QFSFileEngine (const QString &file)
 Constructs a QFSFileEngine for the file name file.
 
 ~QFSFileEngine ()
 Destructs the QFSFileEngine.
 
bool open (QIODevice::OpenMode openMode, std::optional< QFile::Permissions > permissions) override
 \reimp
 
bool open (QIODevice::OpenMode flags, FILE *fh)
 Opens the file handle fh in openMode mode.
 
bool close () override
 \reimp
 
bool flush () override
 \reimp
 
bool syncToDisk () override
 \reimp
 
qint64 size () const override
 \reimp
 
qint64 pos () const override
 \reimp
 
bool seek (qint64) override
 \reimp
 
bool isSequential () const override
 \reimp
 
bool remove () override
 \reimp
 
bool copy (const QString &newName) override
 For Windows or Apple platforms, copy the file to file copyName.
 
bool rename (const QString &newName) override
 \reimp
 
bool renameOverwrite (const QString &newName) override
 \reimp
 
bool link (const QString &newName) override
 Creates a link from the file currently specified by fileName() to newName.
 
bool mkdir (const QString &dirName, bool createParentDirectories, std::optional< QFile::Permissions > permissions) const override
 \reimp
 
bool rmdir (const QString &dirName, bool recurseParentDirectories) const override
 \reimp
 
bool setSize (qint64 size) override
 \reimp
 
bool caseSensitive () const override
 Returns false for Windows, true for Unix.
 
bool isRelativePath () const override
 \reimp
 
QStringList entryList (QDir::Filters filters, const QStringList &filterNames) const override
 
FileFlags fileFlags (FileFlags type) const override
 \reimp
 
bool setPermissions (uint perms) override
 \reimp
 
QByteArray id () const override
 
QString fileName (FileName file) const override
 \reimp
 
uint ownerId (FileOwner) const override
 In Unix, if stat() is successful, the uid is returned if own is the owner.
 
QString owner (FileOwner) const override
 \reimp
 
bool setFileTime (const QDateTime &newDate, FileTime time) override
 \reimp
 
QDateTime fileTime (FileTime time) const override
 \reimp
 
void setFileName (const QString &file) override
 \reimp
 
int handle () const override
 \reimp
 
IteratorbeginEntryList (QDir::Filters filters, const QStringList &filterNames) override
 
IteratorendEntryList () override
 
qint64 read (char *data, qint64 maxlen) override
 \reimp
 
qint64 readLine (char *data, qint64 maxlen) override
 \reimp
 
qint64 write (const char *data, qint64 len) override
 \reimp
 
bool cloneTo (QAbstractFileEngine *target) override
 \reimp
 
virtual bool isUnnamedFile () const
 
bool extension (Extension extension, const ExtensionOption *option=nullptr, ExtensionReturn *output=nullptr) override
 \reimp
 
bool supportsExtension (Extension extension) const override
 \reimp
 
bool open (QIODevice::OpenMode flags, int fd)
 Opens the file descriptor fd in openMode mode.
 
bool open (QIODevice::OpenMode flags, int fd, QFile::FileHandleFlags handleFlags)
 
bool open (QIODevice::OpenMode flags, FILE *fh, QFile::FileHandleFlags handleFlags)
 
- Public Member Functions inherited from QAbstractFileEngine
virtual ~QAbstractFileEngine ()
 Destroys the QAbstractFileEngine.
 
virtual bool open (QIODevice::OpenMode openMode, std::optional< QFile::Permissions > permissions=std::nullopt)
 Opens the file in the specified mode.
 
virtual bool close ()
 Closes the file, returning true if successful; otherwise returns false.
 
virtual bool flush ()
 Flushes the open file, returning true if successful; otherwise returns false.
 
virtual bool syncToDisk ()
 
virtual qint64 size () const
 Returns the size of the file.
 
virtual qint64 pos () const
 Returns the current file position.
 
virtual bool seek (qint64 pos)
 Sets the file position to the given offset.
 
virtual bool isSequential () const
 Returns true if the file is a sequential access device; returns false if the file is a direct access device.
 
virtual bool remove ()
 Requests that the file is deleted from the file system.
 
virtual bool copy (const QString &newName)
 Copies the contents of this file to a file with the name newName.
 
virtual bool rename (const QString &newName)
 Requests that the file be renamed to newName in the file system.
 
virtual bool renameOverwrite (const QString &newName)
 
virtual bool link (const QString &newName)
 Creates a link from the file currently specified by fileName() to newName.
 
virtual bool mkdir (const QString &dirName, bool createParentDirectories, std::optional< QFile::Permissions > permissions=std::nullopt) const
 Requests that the directory dirName be created with the specified permissions.
 
virtual bool rmdir (const QString &dirName, bool recurseParentDirectories) const
 Requests that the directory dirName is deleted from the file system.
 
virtual bool setSize (qint64 size)
 Requests that the file be set to size size.
 
virtual bool caseSensitive () const
 Should return true if the underlying file system is case-sensitive; otherwise return false.
 
virtual bool isRelativePath () const
 Return true if the file referred to by this file engine has a relative path; otherwise return false.
 
virtual QStringList entryList (QDir::Filters filters, const QStringList &filterNames) const
 Requests that a list of all the files matching the filters list based on the filterNames in the file engine's directory are returned.
 
virtual FileFlags fileFlags (FileFlags type=FileInfoAll) const
 This function should return the set of OR'd flags that are true for the file engine's file, and that are in the type's OR'd members.
 
virtual bool setPermissions (uint perms)
 Requests that the file's permissions be set to perms.
 
virtual QByteArray id () const
 
virtual QString fileName (FileName file=DefaultName) const
 Return the file engine's current file name in the format specified by file.
 
virtual uint ownerId (FileOwner) const
 If owner is OwnerUser return the ID of the user who owns the file.
 
virtual QString owner (FileOwner) const
 If owner is OwnerUser return the name of the user who owns the file.
 
virtual bool setFileTime (const QDateTime &newDate, FileTime time)
 
virtual QDateTime fileTime (FileTime time) const
 If time is BirthTime, return when the file was born (created).
 
virtual void setFileName (const QString &file)
 Sets the file engine's file name to file.
 
virtual int handle () const
 Returns the native file handle for this file engine.
 
virtual bool cloneTo (QAbstractFileEngine *target)
 
bool atEnd () const
 
ucharmap (qint64 offset, qint64 size, QFile::MemoryMapFlags flags)
 
bool unmap (uchar *ptr)
 
virtual IteratorbeginEntryList (QDir::Filters filters, const QStringList &filterNames)
 Returns an instance of a QAbstractFileEngineIterator using filters for entry filtering and filterNames for name filtering.
 
virtual IteratorendEntryList ()
 
virtual qint64 read (char *data, qint64 maxlen)
 Reads a number of characters from the file into data.
 
virtual qint64 readLine (char *data, qint64 maxlen)
 This function reads one line, terminated by a '\n' character, from the file info data.
 
virtual qint64 write (const char *data, qint64 len)
 Writes len bytes from data to the file.
 
QFile::FileError error () const
 Returns the QFile::FileError that resulted from the last failed operation.
 
QString errorString () const
 Returns the human-readable message appropriate to the current error reported by error().
 
virtual bool extension (Extension extension, const ExtensionOption *option=nullptr, ExtensionReturn *output=nullptr)
 
virtual bool supportsExtension (Extension extension) const
 

Additional Inherited Members

- Public Types inherited from QAbstractFileEngine
enum  FileFlag {
  ReadOwnerPerm = 0x4000 , WriteOwnerPerm = 0x2000 , ExeOwnerPerm = 0x1000 , ReadUserPerm = 0x0400 ,
  WriteUserPerm = 0x0200 , ExeUserPerm = 0x0100 , ReadGroupPerm = 0x0040 , WriteGroupPerm = 0x0020 ,
  ExeGroupPerm = 0x0010 , ReadOtherPerm = 0x0004 , WriteOtherPerm = 0x0002 , ExeOtherPerm = 0x0001 ,
  LinkType = 0x10000 , FileType = 0x20000 , DirectoryType = 0x40000 , BundleType = 0x80000 ,
  HiddenFlag = 0x0100000 , LocalDiskFlag = 0x0200000 , ExistsFlag = 0x0400000 , RootFlag = 0x0800000 ,
  Refresh = 0x1000000 , PermsMask = 0x0000FFFF , TypesMask = 0x000F0000 , FlagsMask = 0x0FF00000 ,
  FileInfoAll = FlagsMask | PermsMask | TypesMask
}
 The permissions and types of a file, suitable for OR'ing together. More...
 
enum  FileName {
  DefaultName , BaseName , PathName , AbsoluteName ,
  AbsolutePathName , AbsoluteLinkTarget , CanonicalName , CanonicalPathName ,
  BundleName , JunctionName , RawLinkPath , NFileNames
}
 These values are used to request a file name in a particular format. More...
 
enum  FileOwner { OwnerUser , OwnerGroup }
 \value OwnerUser The user who owns the file. More...
 
enum  FileTime { AccessTime , BirthTime , MetadataChangeTime , ModificationTime }
 These are used by the fileTime() function. More...
 
enum  Extension { AtEndExtension , FastReadLineExtension , MapExtension , UnMapExtension }
 
typedef QAbstractFileEngineIterator Iterator
 
- Static Public Member Functions inherited from QFSFileEngine
static bool setCurrentPath (const QString &path)
 Sets the current path (e.g., for QDir), to path.
 
static QString currentPath (const QString &path=QString())
 For Unix, returns the current working directory for the file engine.
 
static QString homePath ()
 Returns the home path of the current user.
 
static QString rootPath ()
 Returns the root path.
 
static QString tempPath ()
 Returns the temporary path (i.e., a path in which it is safe to store temporary files).
 
static QFileInfoList drives ()
 For Windows, returns the list of drives in the file system as a list of QFileInfo objects.
 
- Static Public Member Functions inherited from QAbstractFileEngine
static QAbstractFileEnginecreate (const QString &fileName)
 Creates and returns a QAbstractFileEngine suitable for processing fileName.
 
- Protected Member Functions inherited from QFSFileEngine
 QFSFileEngine (QFSFileEnginePrivate &dd)
 
- Protected Member Functions inherited from QAbstractFileEngine
void setError (QFile::FileError error, const QString &str)
 Sets the error type to error, and the error string to errorString.
 
 QAbstractFileEngine ()
 Constructs a new QAbstractFileEngine that does not refer to any file or directory.
 
 QAbstractFileEngine (QAbstractFileEnginePrivate &)
 
- Protected Attributes inherited from QAbstractFileEngine
QScopedPointer< QAbstractFileEnginePrivated_ptr
 

Detailed Description

Definition at line 16 of file androidcontentfileengine.h.

Constructor & Destructor Documentation

◆ AndroidContentFileEngine()

AndroidContentFileEngine::AndroidContentFileEngine ( const QString fileName)

Definition at line 37 of file androidcontentfileengine.cpp.

References QFSFileEngine::setFileName().

+ Here is the call graph for this function:

Member Function Documentation

◆ beginEntryList()

QAbstractFileEngine::Iterator * AndroidContentFileEngine::beginEntryList ( QDir::Filters  filters,
const QStringList filterNames 
)
overridevirtual

Returns an instance of a QAbstractFileEngineIterator using filters for entry filtering and filterNames for name filtering.

This function is called by QDirIterator to initiate directory iteration.

QDirIterator takes ownership of the returned instance, and deletes it when it's done.

See also
QDirIterator

Reimplemented from QAbstractFileEngine.

Definition at line 251 of file androidcontentfileengine.cpp.

References filters.

◆ caseSensitive()

bool AndroidContentFileEngine::caseSensitive ( ) const
inlineoverridevirtual

Should return true if the underlying file system is case-sensitive; otherwise return false.

Reimplemented from QAbstractFileEngine.

Definition at line 29 of file androidcontentfileengine.h.

◆ close()

bool AndroidContentFileEngine::close ( )
overridevirtual

Closes the file, returning true if successful; otherwise returns false.

The default implementation always returns false.

Reimplemented from QAbstractFileEngine.

Definition at line 101 of file androidcontentfileengine.cpp.

References QFSFileEngine::close().

+ Here is the call graph for this function:

◆ endEntryList()

QAbstractFileEngine::Iterator * AndroidContentFileEngine::endEntryList ( )
overridevirtual

Reimplemented from QAbstractFileEngine.

Definition at line 257 of file androidcontentfileengine.cpp.

◆ fileFlags()

AndroidContentFileEngine::FileFlags AndroidContentFileEngine::fileFlags ( FileFlags  type = FileInfoAll) const
overridevirtual

This function should return the set of OR'd flags that are true for the file engine's file, and that are in the type's OR'd members.

In your reimplementation you can use the type argument as an optimization hint and only return the OR'd set of members that are true and that match those in type; in other words you can ignore any members not mentioned in type, thus avoiding some potentially expensive lookups or system calls.

See also
setFileName()

Reimplemented from QAbstractFileEngine.

Definition at line 210 of file androidcontentfileengine.cpp.

References QAbstractFileEngine::DirectoryType, QAbstractFileEngine::ExistsFlag, QAbstractFileEngine::FileType, QAbstractFileEngine::ReadGroupPerm, QAbstractFileEngine::ReadOtherPerm, QAbstractFileEngine::ReadOwnerPerm, QAbstractFileEngine::ReadUserPerm, QAbstractFileEngine::WriteGroupPerm, QAbstractFileEngine::WriteOtherPerm, QAbstractFileEngine::WriteOwnerPerm, and QAbstractFileEngine::WriteUserPerm.

◆ fileName()

QString AndroidContentFileEngine::fileName ( FileName  file = DefaultName) const
overridevirtual

Return the file engine's current file name in the format specified by file.

If you don't handle some FileName possibilities, return the file name set in setFileName() when an unhandled format is requested.

See also
setFileName(), FileName

Reimplemented from QAbstractFileEngine.

Definition at line 232 of file androidcontentfileengine.cpp.

References QAbstractFileEngine::AbsoluteName, QAbstractFileEngine::AbsolutePathName, QAbstractFileEngine::BaseName, QAbstractFileEngine::CanonicalName, QAbstractFileEngine::CanonicalPathName, QAbstractFileEngine::DefaultName, and QAbstractFileEngine::PathName.

◆ fileTime()

QDateTime AndroidContentFileEngine::fileTime ( FileTime  time) const
overridevirtual

If time is BirthTime, return when the file was born (created).

If time is MetadataChangeTime, return when the file's metadata was last changed. If time is ModificationTime, return when the file was most recently modified. If time is AccessTime, return when the file was most recently accessed (e.g. read or written). If the time cannot be determined return QDateTime() (an invalid date time).

See also
setFileName(), QDateTime, QDateTime::isValid(), FileTime

Reimplemented from QAbstractFileEngine.

Definition at line 197 of file androidcontentfileengine.cpp.

References QAbstractFileEngine::ModificationTime, and time.

◆ id()

QByteArray AndroidContentFileEngine::id ( ) const
overridevirtual
Since
5.9

Return an identifier that (hopefully) uniquely identifies this file in the system. Returns an invalid QByteArray() if that cannot be calculated.

Reimplemented from QAbstractFileEngine.

Definition at line 192 of file androidcontentfileengine.cpp.

◆ mkdir()

bool AndroidContentFileEngine::mkdir ( const QString dirName,
bool  createParentDirectories,
std::optional< QFile::Permissions >  permissions = std::nullopt 
) const
overridevirtual

Requests that the directory dirName be created with the specified permissions.

If createParentDirectories is true, then any sub-directories in dirName that don't exist must be created. If createParentDirectories is false then any sub-directories in dirName must already exist for the function to succeed. If the operation succeeds return true; otherwise return false.

If permissions is null then implementation-specific default permissions are used.

See also
setFileName(), rmdir(), isRelativePath()

Reimplemented from QAbstractFileEngine.

Definition at line 134 of file androidcontentfileengine.cpp.

References dir, Q_UNUSED, QString::remove(), and QString::split().

+ Here is the call graph for this function:

◆ open()

bool AndroidContentFileEngine::open ( QIODevice::OpenMode  openMode,
std::optional< QFile::Permissions >  permissions 
)
overridevirtual

Opens the file in the specified mode.

Returns true if the file was successfully opened; otherwise returns false.

The mode is an OR combination of QIODevice::OpenMode and QIODevice::HandlingMode values.

If the file is created as a result of this call, its permissions are set according to permissision. Null value means an implementation- specific default.

Reimplemented from QAbstractFileEngine.

Definition at line 44 of file androidcontentfileengine.cpp.

References QIODeviceBase::Append, contentResolverInstance(), QFileDevice::DontCloseHandle, fileName, QString::lastIndexOf(), QString::mid(), mimeType, QMimeDatabase::mimeTypesForFileName(), QFSFileEngine::open(), Q_UNUSED, qWarning, QIODeviceBase::ReadOnly, QIODeviceBase::Truncate, and QIODeviceBase::WriteOnly.

+ Here is the call graph for this function:

◆ remove()

bool AndroidContentFileEngine::remove ( )
overridevirtual

Requests that the file is deleted from the file system.

If the operation succeeds return true; otherwise return false.

See also
setFileName(), rmdir()

Reimplemented from QAbstractFileEngine.

Definition at line 120 of file androidcontentfileengine.cpp.

◆ rename()

bool AndroidContentFileEngine::rename ( const QString newName)
overridevirtual

Requests that the file be renamed to newName in the file system.

If the operation succeeds return true; otherwise return false.

See also
setFileName()

Reimplemented from QAbstractFileEngine.

Definition at line 125 of file androidcontentfileengine.cpp.

◆ rmdir()

bool AndroidContentFileEngine::rmdir ( const QString dirName,
bool  recurseParentDirectories 
) const
overridevirtual

Requests that the directory dirName is deleted from the file system.

When recurseParentDirectories is true, then any empty parent-directories in dirName must also be deleted. If recurseParentDirectories is false, only the dirName leaf-node should be deleted. In most file systems a directory cannot be deleted using this function if it is non-empty. If the operation succeeds return true; otherwise return false.

See also
setFileName(), remove(), mkdir(), isRelativePath()

Reimplemented from QAbstractFileEngine.

Definition at line 175 of file androidcontentfileengine.cpp.

References dir, QUrl::fileName(), qWarning, and QString::remove().

+ Here is the call graph for this function:

◆ size()

qint64 AndroidContentFileEngine::size ( ) const
overridevirtual

Returns the size of the file.

Reimplemented from QAbstractFileEngine.

Definition at line 115 of file androidcontentfileengine.cpp.


The documentation for this class was generated from the following files: