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 blimp.engine.mojom; | 5 module blimp.engine.mojom; |
6 | 6 |
| 7 struct CacheStateEntry { |
| 8 // The non-human-readable ID of the cache item. |
| 9 string id; |
| 10 |
| 11 // True if the cached item exists on the remote end of the BlobChannel. |
| 12 bool was_delivered; |
| 13 }; |
| 14 |
7 interface BlobChannel { | 15 interface BlobChannel { |
| 16 // Gets the list of cache keys and their replication status in the |
| 17 // browser process' BlobCache. |
| 18 GetCachedBlobIds() => (array<CacheStateEntry> cache_state); |
| 19 |
8 // Stores the blob |id| in the BlobCache. | 20 // Stores the blob |id| in the BlobCache. |
9 // TODO(kmarshall): Use shared memory for more efficient data transfer, see | 21 // TODO(kmarshall): Use shared memory for more efficient data transfer, see |
10 // crbug.com/614564 . | 22 // crbug.com/614564 . |
11 PutBlob(string id, string data); | 23 PutBlob(string id, string data); |
12 | 24 |
13 // Requests that the BlobChannel push the blob |id| over the wire. | 25 // Requests that the BlobChannel push the blob |id| over the wire. |
14 // The request will be ignored if the BlobChannel knows that | 26 // The request will be ignored if the BlobChannel knows that |
15 // the client already has the data. | 27 // the client already has the data. |
16 DeliverBlob(string id); | 28 DeliverBlob(string id); |
17 }; | 29 }; |
18 | 30 |
OLD | NEW |