Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(711)

Unified Diff: webkit/browser/fileapi/sandbox_origin_database_interface.h

Issue 16150002: Implement special origin database handling for Isolated Apps (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: webkit/browser/fileapi/sandbox_origin_database_interface.h
diff --git a/webkit/browser/fileapi/sandbox_origin_database_interface.h b/webkit/browser/fileapi/sandbox_origin_database_interface.h
new file mode 100644
index 0000000000000000000000000000000000000000..33b37b67126c10f2b229587ca7036897934f3e1c
--- /dev/null
+++ b/webkit/browser/fileapi/sandbox_origin_database_interface.h
@@ -0,0 +1,55 @@
+// Copyright 2013 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef WEBKIT_BROWSER_FILEAPI_SANDBOX_ORIGIN_DATABASE_INTERFACE_H_
+#define WEBKIT_BROWSER_FILEAPI_SANDBOX_ORIGIN_DATABASE_INTERFACE_H_
+
+#include <string>
+#include <vector>
+
+#include "base/files/file_path.h"
+#include "webkit/storage/webkit_storage_export.h"
+
+namespace fileapi {
+
+class WEBKIT_STORAGE_EXPORT_PRIVATE SandboxOriginDatabaseInterface {
+ public:
+ struct WEBKIT_STORAGE_EXPORT_PRIVATE OriginRecord {
+ std::string origin;
+ base::FilePath path;
+
+ OriginRecord();
+ OriginRecord(const std::string& origin, const base::FilePath& path);
+ ~OriginRecord();
+ };
+
+ virtual ~SandboxOriginDatabaseInterface() {}
+
+ // Returns true if the origin's path is included in this database.
+ virtual bool HasOriginPath(const std::string& origin) = 0;
+
+ // This will produce a unique path and add it to its database, if it's not
+ // already present.
+ virtual bool GetPathForOrigin(const std::string& origin,
+ base::FilePath* directory) = 0;
+
+ // Removes the origin's path from the database.
+ // Returns success if the origin has been successfully removed, or
+ // the origin is not found.
+ // (This doesn't remove the actual path).
+ virtual bool RemovePathForOrigin(const std::string& origin) = 0;
+
+ // Lists all origins in this database.
+ virtual bool ListAllOrigins(std::vector<OriginRecord>* origins) = 0;
+
+ // This will release all database resources in use; call it to save memory.
+ virtual void DropDatabase() = 0;
+
+ protected:
+ SandboxOriginDatabaseInterface() {}
+};
+
+} // namespace fileapi
+
+#endif // WEBKIT_BROWSER_FILEAPI_SANDBOX_ORIGIN_DATABASE_INTERFACE_H_
« no previous file with comments | « webkit/browser/fileapi/sandbox_origin_database.cc ('k') | webkit/browser/fileapi/sandbox_origin_database_interface.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698