| 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 | 
|  |