#include <vfsprovider.h>
Classes | |
class | CParams |
Create Paramenter. More... | |
class | OParams |
Open Parameters. More... | |
Public Member Functions | |
virtual bool | chmod (const URI &uri, int mode)=0 |
virtual bool | chown (const URI &uri, int uid, int gid)=0 |
virtual Stream * | create (const URI &uri, const CParams &p, bool &bSuccess)=0 |
Stream * | create (const URI &uri, const CParams &p) |
Stream * | create (const URI &uri, bool &bSuccess) |
Stream * | create (const URI &uri) |
virtual Error * | getLastError ()=0 |
Wraps the last system error into a suitable Falcon Error. | |
virtual int64 | getLastFsError ()=0 |
Get an integer representing the last file system specific error. | |
virtual bool | link (const URI &uri1, const URI &uri2, bool bSymbolic)=0 |
virtual bool | mkdir (const URI &uri, uint32 mode)=0 |
virtual bool | move (const URI &suri, const URI &duri)=0 |
virtual Stream * | open (const URI &uri, const OParams &p)=0 |
Open a file. | |
Stream * | open (const URI &uri) |
Just an inline for opening file with default parameters. | |
virtual DirEntry * | openDir (const URI &uri)=0 |
const String & | protocol () const |
virtual bool | readStats (const URI &uri, FileStat &s)=0 |
virtual bool | rmdir (const URI &uri)=0 |
virtual bool | unlink (const URI &uri)=0 |
virtual bool | writeStats (const URI &uri, const FileStat &s)=0 |
virtual | ~VFSProvider () |
Protected Member Functions | |
VFSProvider (const String &name) |
VFS providers are singletons containing virtual pure functions (function vectors) meant to give information about a particular filesystem, or factory functions generating VFS related objects as streams and directory handlers.
VFS handler respond to a single protocol specification. When the VM receives a request to open an URI (be it a file or a specific directory) it parses the given uri and finds an appropriate VFS provider for that kind of resource.
Falcon::VFSProvider::VFSProvider | ( | const String & | name | ) | [inline, protected] |
virtual Falcon::VFSProvider::~VFSProvider | ( | ) | [virtual] |
virtual bool Falcon::VFSProvider::chmod | ( | const URI & | uri, | |
int | mode | |||
) | [pure virtual] |
Implemented in Falcon::VFSFile.
virtual bool Falcon::VFSProvider::chown | ( | const URI & | uri, | |
int | uid, | |||
int | gid | |||
) | [pure virtual] |
Implemented in Falcon::VFSFile.
virtual Stream* Falcon::VFSProvider::create | ( | const URI & | uri, | |
const CParams & | p, | |||
bool & | bSuccess | |||
) | [pure virtual] |
Implemented in Falcon::VFSFile.
virtual Error* Falcon::VFSProvider::getLastError | ( | ) | [pure virtual] |
Wraps the last system error into a suitable Falcon Error.
If getLastFsError() returns 0, then this method will return 0 too.
Implemented in Falcon::VFSFile.
virtual int64 Falcon::VFSProvider::getLastFsError | ( | ) | [pure virtual] |
Get an integer representing the last file system specific error.
The semantic of this number may be different on different VFS, but in all the VFS a return value of 0 is granted to indicate that the last operation performed was succesful.
Also, the returned error code must be made thread specific or otherwise reentrant/interlocked.
Implemented in Falcon::VFSFile.
virtual bool Falcon::VFSProvider::link | ( | const URI & | uri1, | |
const URI & | uri2, | |||
bool | bSymbolic | |||
) | [pure virtual] |
Implemented in Falcon::VFSFile.
Implemented in Falcon::VFSFile.
Implemented in Falcon::VFSFile.
Just an inline for opening file with default parameters.
Default parameters are "read only, full sharing".
Implemented in Falcon::VFSFile.
const String& Falcon::VFSProvider::protocol | ( | ) | const [inline] |
Implemented in Falcon::VFSFile.
virtual bool Falcon::VFSProvider::rmdir | ( | const URI & | uri | ) | [pure virtual] |
Implemented in Falcon::VFSFile.
virtual bool Falcon::VFSProvider::unlink | ( | const URI & | uri | ) | [pure virtual] |
Implemented in Falcon::VFSFile.
Implemented in Falcon::VFSFile.