Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.trolltech.qt.core
Class QAbstractFileEngine

    java.lang.Object
      com.trolltech.qt.QSignalEmitter
          com.trolltech.qt.QtJambiObject
              com.trolltech.qt.core.QAbstractFileEngine

All Implemented Interfaces:
  QtJambiInterface

Direct Known Subclasses:
  QFSFileEngine

    public class QAbstractFileEngine

extends QtJambiObject

The `QAbstractFileEngine` class provides an abstraction for accessing the filesystem. The `QDir`, `QFile`, and `QFileInfo` classes all make use of a `QAbstractFileEngine` internally. If you create your own `QAbstractFileEngine` subclass (and register it with Qt by creating a `QAbstractFileEngineHandler` subclass), your file engine will be used when the path is one that your file engine handles.

A `QAbstractFileEngine` refers to one file or one directory. If the referent is a file, the `setFileName()`, `rename()`, and `remove()` functions are applicable. If the referent is a directory the `mkdir()`, `rmdir()`, and `entryList()` functions are applicable. In all cases the `caseSensitive()`, `isRelativePath()`, `fileFlags()`, `ownerId()`, `owner()`, and `fileTime()` functions are applicable.

A `QAbstractFileEngine` subclass can be created to do synchronous network I/O based file system operations, local file system operations, or to operate as a resource system to access file based resources.

See also:
  `QAbstractFileEngineHandler`.

Nested Class Summary
`static class` | `QAbstractFileEngine.Extension` This enum describes the types of extensions that the plugin factory can support.
`static class` | `QAbstractFileEngine.FileFlag` The permissions and types of a file, suitable for OR'ing together.
`static class` | `QAbstractFileEngine.FileFlags` This is a flags class for com.trolltech.qt.core.QAbstractFileEngine.FileFlag
`static class` | `QAbstractFileEngine.FileName` These values are used to request a file name in a particular format.
`static class` | `QAbstractFileEngine.FileOwner` See also. `owner()`, `ownerId()`, and `setFileName()`.
`static class` | `QAbstractFileEngine.FileTime` These are used by the `fileTime()` function.

Nested classes/interfaces inherited from class com.trolltech.qt.QSignalEmitter
`QSignalEmitter.Signal0, QSignalEmitter.Signal1, QSignalEmitter.Signal2, QSignalEmitter.Signal3, QSignalEmitter.Signal4, QSignalEmitter.Signal5, QSignalEmitter.Signal6, QSignalEmitter.Signal7, QSignalEmitter.Signal8, QSignalEmitter.Signal9`

Constructor Summary
`protected` | `QAbstractFileEngine()` Constructs a new `QAbstractFileEngine` that does not refer to any file or directory.

Method Summary
`static void` | `addSearchPathForResourceEngine(java.lang.String path)` Adds `path` to the set of paths in which Qt Jambi should search for resources.
`boolean` | `atEnd()` Returns true if the current position is at the end of the file; otherwise, returns false.
`boolean` | `caseSensitive()` Should return true if the underlying file system is case-sensitive; otherwise return false.
`boolean` | `close()` Closes the file, returning true if successful; otherwise returns false.
`boolean` | `copy(java.lang.String newName)` Copies the contents of this file to a file with the name `newName`.
`static QAbstractFileEngine` | `create(java.lang.String fileName)` Creates and returns a `QAbstractFileEngine` suitable for processing `fileName`.
`java.util.List` | `entryList(QDir.Filters filters, java.util.List filterNames)` Requests that a list of all the files matching the `filters` list based on the `filterNames` in the file engine's directory are returned.
`QFile.FileError` | `error()` Returns the `QFile::FileError` that resulted from the last failed operation.
`java.lang.String` | `errorString()` Returns the human-readable message appropriate to the current error reported by `error()`.
`QAbstractFileEngine.FileFlags` | `fileFlags()` 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.
`QAbstractFileEngine.FileFlags` | `fileFlags(QAbstractFileEngine.FileFlag[] type)` 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.
`QAbstractFileEngine.FileFlags` | `fileFlags(QAbstractFileEngine.FileFlags type)` 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.
`java.lang.String` | `fileName()` Return the file engine's current file name in the format specified by `file`.
`java.lang.String` | `fileName(QAbstractFileEngine.FileName file)` Return the file engine's current file name in the format specified by `file`.
`QDateTime` | `fileTime(QAbstractFileEngine.FileTime time)` If `time` is `CreationTime`, return when the file was created.
`boolean` | `flush()` Flushes the open file, returning true if successful; otherwise returns false.
`static QAbstractFileEngine` | `fromNativePointer(QNativePointer nativePointer)` This method returns the QAbstractFileEngine instance pointed to by `nativePointer`.
`int` | `handle()` Returns the native file handle for this file engine.
`boolean` | `isRelativePath()` Return true if the file referred to by this file engine has a relative path; otherwise return false.
`boolean` | `isSequential()` Returns true if the file is a sequential access device; returns false if the file is a direct access device.
`boolean` | `link(java.lang.String newName)` Creates a link from the file currently specified by `fileName()` to `newName`.
`boolean` | `mkdir(java.lang.String dirName, boolean createParentDirectories)` Requests that the directory `dirName` be created.
`boolean` | `open(QIODevice.OpenMode openMode)` Opens the file in the specified `mode`.
`boolean` | `open(QIODevice.OpenModeFlag[] openMode)` Opens the file in the specified `mode`.
`java.lang.String` | `owner(QAbstractFileEngine.FileOwner arg__1)` If `owner` is `OwnerUser` return the name of the user who owns the file.
`int` | `ownerId(QAbstractFileEngine.FileOwner arg__1)` If `owner` is `OwnerUser` return the ID of the user who owns the file.
`long` | `pos()` Returns the current file position.
`long` | `read(QNativePointer data, long maxlen)` Reads a number of characters from the file into `data`.
`long` | `readLine(QNativePointer data, long maxlen)` This function reads one line, terminated by a '\n' character, from the file info `data`.
`boolean` | `remove()` Requests that the file is deleted from the file system.
`static void` | `removeSearchPathForResourceEngine(java.lang.String path)` Removes `path` from the set of paths in which Qt Jambi searches for resources.
`boolean` | `rename(java.lang.String newName)` Requests that the file be renamed to `newName` in the file system.
`boolean` | `rmdir(java.lang.String dirName, boolean recurseParentDirectories)` Requests that the directory `dirName` is deleted from the file system.
`boolean` | `seek(long pos)` Sets the file position to the given `offset`.
`protected void` | `setError(QFile.FileError error, java.lang.String str)` Sets the error type to `error`, and the error string to `errorString`.
`void` | `setFileName(java.lang.String file)` Sets the file engine's file name to `file`.
`boolean` | `setPermissions(int perms)` Requests that the file's permissions be set to `perms`.
`boolean` | `setSize(long size)` Requests that the file be set to size `size`.
`long` | `size()` Returns the size of the file.
`boolean` | `supportsExtension(QAbstractFileEngine.Extension extension)` This virtual function returns true if the file engine supports `extension`; otherwise, false is returned.
`long` | `write(QNativePointer data, long len)` Writes `len` bytes from `data` to the file.

Methods inherited from class com.trolltech.qt.QtJambiObject
`dispose, disposed, equals, finalize, reassignNativeResources, tr, tr, tr`

Methods inherited from class com.trolltech.qt.QSignalEmitter
`blockSignals, disconnect, disconnect, signalsBlocked, signalSender, thread`

Methods inherited from class java.lang.Object
`clone, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface com.trolltech.qt.QtJambiInterface
`disableGarbageCollection, nativeId, nativePointer, reenableGarbageCollection, setJavaOwnership`

Constructor Detail

### QAbstractFileEngine

    protected QAbstractFileEngine()

  Constructs a new `QAbstractFileEngine` that does not refer to any file or directory.

See also:
  `setFileName()`.

Method Detail

### atEnd

    public final boolean atEnd()

  Returns true if the current position is at the end of the file; otherwise, returns false.

  This function bases its behavior on calling extension() with `AtEndExtension` . If the engine does not support this extension, false is returned.

See also:
  extension(), `supportsExtension()`, and `QFile::atEnd()`.

### error

    public final QFile.FileError error()

  Returns the `QFile::FileError` that resulted from the last failed operation. If `QFile::UnspecifiedError` is returned, `QFile` will use its own idea of the error status.

See also:
  `setError()`, `QFile::FileError` , and `errorString()`.

### errorString

    public final java.lang.String errorString()

  Returns the human-readable message appropriate to the current error reported by `error()`. If no suitable string is available, an empty string is returned.

See also:
  `error()`.

### setError

    protected final void setError(QFile.FileError error,
                                  java.lang.String str)

  Sets the error type to `error`, and the error string to `errorString`. Call this function to set the error values returned by the higher-level classes.

See also:
  `QFile::error()`, `QIODevice::errorString()`, and `QIODevice::setErrorString()`.

### caseSensitive

    public boolean caseSensitive()

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

  This virtual function must be reimplemented by all subclasses.

### close

    public boolean close()

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

  The default implementation always returns false.

### copy

    public boolean copy(java.lang.String newName)

  Copies the contents of this file to a file with the name `newName`. Returns true on success; otherwise, false is returned.

### entryList

    public java.util.List entryList(QDir.Filters filters,
                                    java.util.List filterNames)

  Requests that a list of all the files matching the `filters` list based on the `filterNames` in the file engine's directory are returned.

  Should return an empty list if the file engine refers to a file rather than a directory, or if the directory is unreadable or does not exist or if nothing matches the specifications.

  This virtual function must be reimplemented by all subclasses.

See also:
  `setFileName()`.

### fileFlags

    public final QAbstractFileEngine.FileFlags fileFlags(QAbstractFileEngine.FileFlag[] type)

  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.

  This virtual function must be reimplemented by all subclasses.

See also:
  `setFileName()`.

### fileFlags

    public final QAbstractFileEngine.FileFlags fileFlags()

  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.

  This virtual function must be reimplemented by all subclasses.

See also:
  `setFileName()`.

### fileFlags

    public QAbstractFileEngine.FileFlags fileFlags(QAbstractFileEngine.FileFlags type)

  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.

  This virtual function must be reimplemented by all subclasses.

See also:
  `setFileName()`.

### fileName

    public final java.lang.String fileName()

  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.

  This virtual function must be reimplemented by all subclasses.

See also:
  `setFileName()`, and `FileName` .

### fileName

    public java.lang.String fileName(QAbstractFileEngine.FileName file)

  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.

  This virtual function must be reimplemented by all subclasses.

See also:
  `setFileName()`, and `FileName` .

### fileTime

    public QDateTime fileTime(QAbstractFileEngine.FileTime time)

  If `time` is `CreationTime`, return when the file was created. 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).

  This virtual function must be reimplemented by all subclasses.

See also:
  `setFileName()`, `QDateTime`, `QDateTime::isValid()`, and `FileTime` .

### flush

    public boolean flush()

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

  The default implementation always returns false.

### handle

    public int handle()

  Returns the native file handle for this file engine. This handle must be used with care; its value and type are platform specific, and using it will most likely lead to non-portable code.

### isRelativePath

    public boolean isRelativePath()

  Return true if the file referred to by this file engine has a relative path; otherwise return false.

  This virtual function must be reimplemented by all subclasses.

See also:
  `setFileName()`.

### isSequential

    public boolean isSequential()

  Returns true if the file is a sequential access device; returns false if the file is a direct access device.

  Operations involving `size()` and seek(int) are not valid on sequential devices.

### link

    public boolean link(java.lang.String newName)

  Creates a link from the file currently specified by `fileName()` to `newName`. What a link is depends on the underlying filesystem (be it a shortcut on Windows or a symbolic link on Unix). Returns true if successful; otherwise returns false.

### mkdir

    public boolean mkdir(java.lang.String dirName,
                         boolean createParentDirectories)

  Requests that the directory `dirName` be created. 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.

  This virtual function must be reimplemented by all subclasses.

See also:
  `setFileName()`, `rmdir()`, and `isRelativePath()`.

### open

    public final boolean open(QIODevice.OpenModeFlag[] openMode)

  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.

### open

    public boolean open(QIODevice.OpenMode openMode)

  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.

### owner

    public java.lang.String owner(QAbstractFileEngine.FileOwner arg__1)

  If `owner` is `OwnerUser` return the name of the user who owns the file. If `owner` is `OwnerGroup` return the name of the group that own the file. If you can't determine the owner return QString().

  This virtual function must be reimplemented by all subclasses.

See also:
  `ownerId()`, `setFileName()`, and `FileOwner` .

### ownerId

    public int ownerId(QAbstractFileEngine.FileOwner arg__1)

  If `owner` is `OwnerUser` return the ID of the user who owns the file. If `owner` is `OwnerGroup` return the ID of the group that own the file. If you can't determine the owner return -2.

  This virtual function must be reimplemented by all subclasses.

See also:
  `owner()`, `setFileName()`, and `FileOwner` .

### pos

    public long pos()

  Returns the current file position.

  This is the position of the data read/write head of the file.

### read

    public long read(QNativePointer data,
                     long maxlen)

  Reads a number of characters from the file into `data`. At most `maxlen` characters will be read.

  Returns -1 if a fatal error occurs, or 0 if there are no bytes to read.

### readLine

    public long readLine(QNativePointer data,
                         long maxlen)

  This function reads one line, terminated by a '\n' character, from the file info `data`. At most `maxlen` characters will be read. The end-of-line character is included.

### remove

    public boolean remove()

  Requests that the file is deleted from the file system. If the operation succeeds return true; otherwise return false.

  This virtual function must be reimplemented by all subclasses.

See also:
  `setFileName()`, and `rmdir()`.

### rename

    public boolean rename(java.lang.String newName)

  Requests that the file be renamed to `newName` in the file system. If the operation succeeds return true; otherwise return false.

  This virtual function must be reimplemented by all subclasses.

See also:
  `setFileName()`.

### rmdir

    public boolean rmdir(java.lang.String dirName,
                         boolean recurseParentDirectories)

  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.

  This virtual function must be reimplemented by all subclasses.

See also:
  `setFileName()`, `remove()`, `mkdir()`, and `isRelativePath()`.

### seek

    public boolean seek(long pos)

  Sets the file position to the given `offset`. Returns true if the position was successfully set; otherwise returns false.

  The offset is from the beginning of the file, unless the file is sequential.

See also:
  `isSequential()`.

### setFileName

    public void setFileName(java.lang.String file)

  Sets the file engine's file name to `file`. This file name is the file that the rest of the virtual functions will operate on.

  This virtual function must be reimplemented by all subclasses.

See also:
  `fileName()`, and `rename()`.

### setPermissions

    public boolean setPermissions(int perms)

  Requests that the file's permissions be set to `perms`. The argument perms will be set to the OR-ed together combination of `QAbstractFileEngine::FileInfo`, with only the `QAbstractFileEngine::PermsMask` being honored. If the operations succceeds return true; otherwise return false;

  This virtual function must be reimplemented by all subclasses.

See also:
  `size()`.

### setSize

    public boolean setSize(long size)

  Requests that the file be set to size `size`. If `size` is larger than the current file then it is filled with 0's, if smaller it is simply truncated. If the operations succceeds return true; otherwise return false;

  This virtual function must be reimplemented by all subclasses.

See also:
  `size()`.

### size

    public long size()

  Returns the size of the file.

See also:
  `setSize()`.

### supportsExtension

    public boolean supportsExtension(QAbstractFileEngine.Extension extension)

  This virtual function returns true if the file engine supports `extension`; otherwise, false is returned. By default, no extensions are supported.

See also:
  extension().

### write

    public long write(QNativePointer data,
                      long len)

  Writes `len` bytes from `data` to the file. Returns the number of characters written on success; otherwise returns -1.

### create

    public static QAbstractFileEngine create(java.lang.String fileName)

  Creates and returns a `QAbstractFileEngine` suitable for processing `fileName`.

  You should not need to call this function; use `QFile`, `QFileInfo` or `QDir` directly instead.

  If you reimplemnt this function, it should only return file engines that knows how to handle `fileName`; otherwise, it should return 0.

See also:
  `QAbstractFileEngineHandler`.

### fromNativePointer

    public static QAbstractFileEngine fromNativePointer(QNativePointer nativePointer)

  This method returns the QAbstractFileEngine instance pointed to by `nativePointer`.

### addSearchPathForResourceEngine

    public static void addSearchPathForResourceEngine(java.lang.String path)

  Adds `path` to the set of paths in which Qt Jambi should search for resources. Resources can be accessed using the "classpath:" scheme.

### removeSearchPathForResourceEngine

    public static void removeSearchPathForResourceEngine(java.lang.String path)

  Removes `path` from the set of paths in which Qt Jambi searches for resources.

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD