| Index: include/AdblockPlus/FileSystem.h | 
| =================================================================== | 
| --- a/include/AdblockPlus/FileSystem.h | 
| +++ b/include/AdblockPlus/FileSystem.h | 
| @@ -18,77 +18,43 @@ | 
| #ifndef ADBLOCK_PLUS_FILE_SYSTEM_H | 
| #define ADBLOCK_PLUS_FILE_SYSTEM_H | 
| #include <istream> | 
| #include <stdint.h> | 
| #include <string> | 
| #include <memory> | 
| +#include "IFileSystem.h" | 
| + | 
| namespace AdblockPlus | 
| { | 
| /** | 
| * File system interface. | 
| */ | 
| class FileSystem | 
| { | 
| public: | 
| - /** | 
| - * Result of a stat operation, i.e.\ information about a file. | 
| - */ | 
| - struct StatResult | 
| - { | 
| - StatResult() | 
| - { | 
| - exists = false; | 
| - isDirectory = false; | 
| - isFile = false; | 
| - lastModified = 0; | 
| - } | 
| - | 
| - /** | 
| - * File exists. | 
| - */ | 
| - bool exists; | 
| - | 
| - /** | 
| - * File is a directory. | 
| - */ | 
| - bool isDirectory; | 
| - | 
| - /** | 
| - * File is a regular file. | 
| - */ | 
| - bool isFile; | 
| - | 
| - /** | 
| - * POSIX time of the last modification. | 
| - */ | 
| - int64_t lastModified; | 
| - }; | 
| - | 
| - typedef std::vector<uint8_t> IOBuffer; | 
| - | 
| virtual ~FileSystem() {} | 
| /** | 
| * Reads from a file. | 
| * @param path File path. | 
| * @return Buffer with the file content. | 
| */ | 
| - virtual IOBuffer | 
| + virtual IFileSystem::IOBuffer | 
| Read(const std::string& path) const = 0; | 
| /** | 
| * Writes to a file. | 
| * @param path File path. | 
| * @param data Buffer with the data to write. | 
| */ | 
| virtual void Write(const std::string& path, | 
| - const IOBuffer& data) = 0; | 
| + const IFileSystem::IOBuffer& data) = 0; | 
| /** | 
| * Moves a file (i.e.\ renames it). | 
| * @param fromPath Current path to the file. | 
| * @param toPath New path to the file. | 
| */ | 
| virtual void Move(const std::string& fromPath, | 
| const std::string& toPath) = 0; | 
| @@ -99,25 +65,25 @@ | 
| */ | 
| virtual void Remove(const std::string& path) = 0; | 
| /** | 
| * Retrieves information about a file. | 
| * @param path File path. | 
| * @return File information. | 
| */ | 
| - virtual StatResult Stat(const std::string& path) const = 0; | 
| + virtual IFileSystem::StatResult Stat(const std::string& path) const = 0; | 
| /** | 
| * Returns the absolute path to a file. | 
| * @param path File path (can be relative or absolute). | 
| * @return Absolute file path. | 
| */ | 
| virtual std::string Resolve(const std::string& path) const = 0; | 
| }; | 
| /** | 
| * Shared smart pointer to a `FileSystem` instance. | 
| */ | 
| - typedef std::shared_ptr<FileSystem> FileSystemPtr; | 
| + typedef std::shared_ptr<FileSystem> FileSystemSyncPtr; | 
| } | 
| #endif |