Chromium Code Reviews| 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 |