Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Unified Diff: include/AdblockPlus/FileSystem.h

Issue 10296001: Implement File API (Closed)
Patch Set: Addressed all remaining issues Created April 16, 2013, 11:55 a.m.
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: include/AdblockPlus/FileSystem.h
===================================================================
new file mode 100644
--- /dev/null
+++ b/include/AdblockPlus/FileSystem.h
@@ -0,0 +1,34 @@
+#ifndef ADBLOCKPLUS_FILE_SYSTEM_H
+#define ADBLOCKPLUS_FILE_SYSTEM_H
+
+#include <istream>
+#include <string>
+
+#include "tr1_memory.h"
+
+namespace AdblockPlus
+{
+ class FileSystem
+ {
+ public:
+ struct StatResult
+ {
+ bool exists;
+ bool isDirectory;
+ bool isFile;
+ int64_t lastModified;
+ };
+
+ virtual ~FileSystem() {}
+ virtual std::tr1::shared_ptr<std::istream>
+ Read(const std::string& path) const = 0;
+ virtual void Write(const std::string& path,
+ std::tr1::shared_ptr<std::ostream> data) = 0;
+ virtual void Move(const std::string& fromPath,
+ const std::string& toPath) = 0;
+ virtual void Remove(const std::string& path) = 0;
+ virtual StatResult Stat(const std::string& path) const = 0;
+ };
+}
+
+#endif

Powered by Google App Engine
This is Rietveld