OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CONTENT_PUBLIC_BROWSER_STORAGE_PARTITION_H_ | 5 #ifndef CONTENT_PUBLIC_BROWSER_STORAGE_PARTITION_H_ |
6 #define CONTENT_PUBLIC_BROWSER_STORAGE_PARTITION_H_ | 6 #define CONTENT_PUBLIC_BROWSER_STORAGE_PARTITION_H_ |
7 | 7 |
| 8 #include <string> |
| 9 |
8 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
| 11 #include "base/file_path.h" |
9 | 12 |
10 namespace appcache { | 13 namespace appcache { |
11 class AppCacheService; | 14 class AppCacheService; |
12 } | 15 } |
13 | 16 |
14 namespace fileapi { | 17 namespace fileapi { |
15 class FileSystemContext; | 18 class FileSystemContext; |
16 } | 19 } |
17 | 20 |
18 namespace quota { | 21 namespace quota { |
(...skipping 11 matching lines...) Expand all Loading... |
30 class DOMStorageContext; | 33 class DOMStorageContext; |
31 | 34 |
32 // Defines what persistent state a child process can access. | 35 // Defines what persistent state a child process can access. |
33 // | 36 // |
34 // The StoragePartition defines the view each child process has of the | 37 // The StoragePartition defines the view each child process has of the |
35 // persistent state inside the BrowserContext. This is used to implement | 38 // persistent state inside the BrowserContext. This is used to implement |
36 // isolated storage where a renderer with isolated storage cannot see | 39 // isolated storage where a renderer with isolated storage cannot see |
37 // the cookies, localStorage, etc., that normal web renderers have access to. | 40 // the cookies, localStorage, etc., that normal web renderers have access to. |
38 class StoragePartition { | 41 class StoragePartition { |
39 public: | 42 public: |
| 43 virtual FilePath GetPath() = 0; |
40 virtual quota::QuotaManager* GetQuotaManager() = 0; | 44 virtual quota::QuotaManager* GetQuotaManager() = 0; |
41 virtual appcache::AppCacheService* GetAppCacheService() = 0; | 45 virtual appcache::AppCacheService* GetAppCacheService() = 0; |
42 virtual fileapi::FileSystemContext* GetFileSystemContext() = 0; | 46 virtual fileapi::FileSystemContext* GetFileSystemContext() = 0; |
43 virtual webkit_database::DatabaseTracker* GetDatabaseTracker() = 0; | 47 virtual webkit_database::DatabaseTracker* GetDatabaseTracker() = 0; |
44 virtual DOMStorageContext* GetDOMStorageContext() = 0; | 48 virtual DOMStorageContext* GetDOMStorageContext() = 0; |
45 virtual IndexedDBContext* GetIndexedDBContext() = 0; | 49 virtual IndexedDBContext* GetIndexedDBContext() = 0; |
46 | 50 |
| 51 // Returns the relative path from the profile's base directory, to the |
| 52 // directory that holds all the state for storage contexts in |partition_id|. |
| 53 // |
| 54 // TODO(ajwong): Remove this function from the public API once |
| 55 // URLRequestContextGetter's creation is moved into StoragePartition. |
| 56 static CONTENT_EXPORT FilePath GetPartitionPath( |
| 57 const std::string& partition_id); |
| 58 |
47 protected: | 59 protected: |
48 virtual ~StoragePartition() {} | 60 virtual ~StoragePartition() {} |
49 }; | 61 }; |
50 | 62 |
51 } // namespace content | 63 } // namespace content |
52 | 64 |
53 #endif // CONTENT_PUBLIC_BROWSER_STORAGE_PARTITION_H_ | 65 #endif // CONTENT_PUBLIC_BROWSER_STORAGE_PARTITION_H_ |
OLD | NEW |