OLD | NEW |
---|---|
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 module content.mojom; | 5 module content.mojom; |
6 | 6 |
7 import "components/leveldb/public/interfaces/leveldb.mojom"; | 7 import "components/leveldb/public/interfaces/leveldb.mojom"; |
8 | 8 |
9 // Gives information about changes to a LevelDB database. | 9 // Gives information about changes to a LevelDB database. |
10 // The reason this is a parameter to DeleteAll and GetAll below, instead of | 10 // The reason this is a parameter to DeleteAll and GetAll below, instead of |
11 // being specified when opening a LevelDBWrapper, is to avoid the client getting | 11 // being specified when opening a LevelDBWrapper, is to avoid the client getting |
12 // callbacks for changes that have already been applied to its database that | 12 // callbacks for changes that have already been applied to its database that |
13 // it's fetching via GetAll or it's clearing via DeleteAll. | 13 // it's fetching via GetAll or it's clearing via DeleteAll. |
14 // In the methods below, |source| is a user-defined string which was passed to | 14 // In the methods below, |source| is a user-defined string which was passed to |
15 // the various LevelDBWrapper methods. | 15 // the various LevelDBWrapper methods. |
16 // Note that observer methods are called before the callbacks for the | 16 // Note that observer methods are called before the callbacks for the |
17 // LevelDBWrapper methods are run. | 17 // LevelDBWrapper methods are run. |
18 interface LevelDBObserver { | 18 interface LevelDBObserver { |
19 KeyAdded(array<uint8> key, array<uint8> value, string source); | |
19 KeyChanged(array<uint8> key, array<uint8> new_value, array<uint8> old_value, | 20 KeyChanged(array<uint8> key, array<uint8> new_value, array<uint8> old_value, |
20 string source); | 21 string source); |
21 KeyDeleted(array<uint8> key, array<uint8> old_value, string source); | 22 KeyDeleted(array<uint8> key, array<uint8> old_value, string source); |
22 AllDeleted(string source); | 23 AllDeleted(string source); |
24 GetAllComplete(uint64 request_id); | |
jam
2016/03/30 17:15:16
for consistency with the other methods, GetAll sho
michaeln
2016/03/30 21:57:01
Done
The magic cookie value for the localstorage
| |
23 }; | 25 }; |
24 | 26 |
25 struct KeyValue { | 27 struct KeyValue { |
26 array<uint8> key; | 28 array<uint8> key; |
27 array<uint8> value; | 29 array<uint8> value; |
28 }; | 30 }; |
29 | 31 |
30 // A wrapper around leveldb that supports giving notifications when values | 32 // A wrapper around leveldb that supports giving notifications when values |
31 // change. | 33 // change. |
32 interface LevelDBWrapper { | 34 interface LevelDBWrapper { |
35 AddObserver(LevelDBObserver observer); | |
jam
2016/03/30 17:15:16
how about combining this with StoragePartitionServ
michaeln
2016/03/30 21:57:01
Done.
| |
36 | |
33 // Sets the database entry for |key| to |value|. Returns OK on success. | 37 // Sets the database entry for |key| to |value|. Returns OK on success. |
34 Put(array<uint8> key, array<uint8> value, string source) | 38 Put(array<uint8> key, array<uint8> value, string source) => (bool success); |
35 => (leveldb.DatabaseError status); | |
36 | 39 |
37 // Remove the database entry (if any) for |key|. Returns OK on success, and a | 40 // Remove the database entry (if any) for |key|. Returns OK on success, and a |
38 // non-OK status on error. It is not an error if |key| did not exist in the | 41 // non-OK status on error. It is not an error if |key| did not exist in the |
39 // database. | 42 // database. |
40 Delete(array<uint8> key, string source) => (leveldb.DatabaseError status); | 43 Delete(array<uint8> key, string source) => (bool success); |
41 | 44 |
42 // Removes all the entries. | 45 // Removes all the entries. |
43 DeleteAll(LevelDBObserver observer, string source) | 46 DeleteAll(string source) => (bool success); |
44 => (leveldb.DatabaseError status); | |
45 | |
46 // Returns the value of the |key|. | |
47 Get(array<uint8> key) => (leveldb.DatabaseError status, array<uint8> value); | |
48 | 47 |
49 // Only used with small databases. Returns all key/value pairs. | 48 // Only used with small databases. Returns all key/value pairs. |
50 [Sync] | 49 [Sync] |
51 GetAll(LevelDBObserver observer) | 50 GetAll(uint64 reqeust_id) |
52 => (leveldb.DatabaseError status, array<KeyValue> data); | 51 => (leveldb.DatabaseError status, array<KeyValue> data); |
53 }; | 52 }; |
OLD | NEW |