| Index: include/AdblockPlus/DefaultFileSystem.h |
| diff --git a/include/AdblockPlus/DefaultFileSystem.h b/include/AdblockPlus/DefaultFileSystem.h |
| index 497daef94bef8eac987d61c90379097c4e3a1a8a..75ad13030b30759f5df448a7a313a58228e49b3f 100644 |
| --- a/include/AdblockPlus/DefaultFileSystem.h |
| +++ b/include/AdblockPlus/DefaultFileSystem.h |
| @@ -34,14 +34,14 @@ namespace AdblockPlus |
| * All paths are considered relative to the base path, or to the current |
| * working directory if no base path is set (see `SetBasePath()`). |
| */ |
| - class DefaultFileSystem : public FileSystem |
| + class DefaultFileSystemSync : public FileSystem |
| { |
| public: |
| - std::shared_ptr<std::istream> Read(const std::string& path) const; |
| - void Write(const std::string& path, std::istream& data); |
| + IFileSystem::IOBuffer Read(const std::string& path) const; |
| + void Write(const std::string& path, const IFileSystem::IOBuffer& data); |
| void Move(const std::string& fromPath, const std::string& toPath); |
| void Remove(const std::string& path); |
| - StatResult Stat(const std::string& path) const; |
| + IFileSystem::StatResult Stat(const std::string& path) const; |
| std::string Resolve(const std::string& path) const; |
| /** |
| @@ -53,6 +53,27 @@ namespace AdblockPlus |
| protected: |
| std::string basePath; |
| }; |
| + |
| + class DefaultFileSystem : public IFileSystem |
| + { |
| + public: |
| + explicit DefaultFileSystem(const FileSystemSyncPtr& syncImpl); |
| + void Read(const std::string& path, |
| + const ReadCallback& callback) const; |
| + void Write(const std::string& path, |
| + const IOBuffer& data, |
| + const Callback& callback); |
| + void Move(const std::string& fromPath, |
| + const std::string& toPath, |
| + const Callback& callback); |
| + void Remove(const std::string& path, const Callback& callback); |
| + void Stat(const std::string& path, |
| + const StatCallback& callback) const; |
| + |
| + std::string Resolve(const std::string& path) const; |
| + private: |
| + FileSystemSyncPtr syncImpl; |
| + }; |
| } |
| #endif |